Rtsp плеер для windows

Инструкция по openRTSP — клиент RTSP для приёма и записи потокового медиа

Программа для подключения и записи видео с IP камер (протокол RTSP)

openRTSP — это программа с интерфейсом командной строки, которую можно использовать для открытия, потоковой передачи, приёма и (необязательно) записи медиапотоков, указанных в URL-адресе RTSP, т. е. URL-адресе, который начинается с rtsp://

Как установить openRTSP. Как установить LIVE555 Streaming Media

Программа openRTSP является частью пакета LIVE555 Streaming Media, поэтому для её установки, нужно установить набор программ LIVE555.

В Debian, Linux Mint, Kali Linux, Ubuntu и их производных это можно сделать командой:

В Arch Linux и производных для установки выполните команду:

В других дистрибутивах попробуйте данный поискать пакет по ключевым словам «livemedia» и «live-media». Если его нет, то вы можете скомпилировать программу из исходного кода. Для этого выполните команды:

Теперь исполнимый файл openRTSP находится в папке testProgs:

Простой запуск

Самый простой способ запустить эту программу:

где URL — это URL-адрес RTSP для открытия (т. е. начинающийся с «rtsp://»). Программа откроет указанный URL (используя команду RTSP «DESCRIBE»), получит описание SDP сеанса, а затем для каждой аудио/видео подсессии, чей формат полезной нагрузки RTP она понимает, запустит подсессии командами «SETUP» и «PLAY».

Полученные данные для каждой части записываются в отдельный выходной файл, названный в соответствии с его типом MIME. Например, если сеанс содержит аудиоподсекцию MPEG-1 или 2 (тип полезной нагрузки RTP 14), например, MP3, и видеоподсекцию MPEG-1 или 2 (полезная нагрузка RTP 32), то данные каждой подсессии будут извлечены из входящих пакетов RTP и записаны в файлы с именами «audio-MPA-1» и «video-MPV-2» (соответственно). (Затем вам, вероятно, потребуется переименовать эти файлы — присвоив им соответствующее расширение имени файла (например, «.mp3» и «.mpg») — чтобы иметь возможность воспроизводить их с помощью обычных медиаплееров.)

Вы можете использовать опцию «-F ПРЕФИКС-ИМЕНИ-ФАЙЛА», чтобы добавить префикс к имени файла, который записывается для каждой части. (Это может быть полезно, если вы запускаете «openRTSP» несколько раз в одном каталоге для чтения данных из разных сеансов RTSP.)

Извлечение одного потока

Чтобы записать только аудиопоток из сеанса, используйте параметр командной строки «-a». (Точно так же, чтобы записать только видеопоток, используйте параметр «-v».) В этом случае выходной аудиопоток (или видео) будет записан в ‘stdout’, а не в файл (если не указана опция «-P ИНТЕРВАЛ-В-СЕКУНДАХ» (об этом ниже).

Менее подробный диагностический вывод

По умолчанию программа распечатывает (в stderr) каждый полный запрос и ответ RTSP. Для менее подробного вывода используйте параметр «-V» (верхний регистр).

Воспроизведение без получения

Если вы хотите, чтобы программа воспроизводила сеанс RTSP, но не принимала его на самом деле, вы можете сделать это, указав программе параметр «-r» («не получать»). Это полезно, если у вас есть отдельное приложение (работающее на том же хосте), которое фактически принимает входящие медиа-сеансы. (Обратите внимание, что это отдельное принимающее приложение также должно отправлять обратно отчёты о приёме RTCP, чтобы гарантировать, что время сеанса не истечёт.)

Если вы используете опцию «-r» для воспроизведения одноадресного сеанса, вы, вероятно, также захотите использовать опцию «-p НАЧАЛЬНЫЙ-НОМЕР-ПОРТА». Эта опция сообщает программе, какие номера клиентских портов использовать в командах RTSP «SETUP», т. е. какие порты RTP/RTCP сервер должен отправлять. (Без опции «-r» программа сама принимает потоки и использует для этого свои собственные временные номера портов.) НАЧАЛЬНЫЙ-НОМЕР-ПОРТА должен быть чётным числом.

Например, если сеанс RTSP состоит из части аудио и видео (перечисленных в этом порядке в возвращённом описании SDP), то «-p 6666» приведёт к тому, что порты 6666 и 6667 будут использоваться для части аудио (6666 для RTP ; 6667 для RTCP) и порты 6668 и 6669, которые будут использоваться для подсессии видео (6668 для RTP; 6669 для RTCP).

Читайте также:  Windows профиль пользователя не может быть загружен

(Если вы используете параметр «-r» для воспроизведения сеанса многоадресной рассылки, вам, вероятно, также не понадобится использовать опцию «-p НАЧАЛЬНЫЙ-НОМЕР-ПОРТА», потому что описание SDP для сеансов многоадресной рассылки обычно включает номер порта для использования.)

Опции продолжительности воспроизведения

Если описание SDP (с сервера RTSP) содержит атрибут «a=range:npt= …», определяющий продолжительность потока, то программа закроет сеанс и выйдет вскоре после этого (по умолчанию через 5 секунд после того, как это время истекает).

Вы можете изменить эту продолжительность, используя опцию «-d ДЛИТЕЛЬНОСТЬ». Если ДЛИТЕЛЬНОСТЬ положительна, это общее количество секунд потока, которое будет воспроизведено перед закрытием сеанса и выходом. Если ДЛИТЕЛЬНОСТЬ отрицательна, то -ДЛИТЕЛЬНОСТЬ даёт количество дополнительных секунд для задержки после времени, указанного в атрибуте SDP «a=range». (Как отмечалось выше, значение по умолчанию для этого дополнительного времени составляет 5 секунд.)

Например, если описание SDP содержит «a=range:npt=0-25», то «-d 10» означает «воспроизвести поток(и) в течение 10 секунд, затем выйти», а «-d -10» означает «воспроизвести поток(и) в течение 35 секунд, затем выйти».

Вы также можете использовать опцию «-D МАКСИМАЛЬНЫЙ-РАЗРЫВ-МЕЖДУ-ПАКЕТАМИ», чтобы запросить завершение работы программы, если в течение периода не менее МАКСИМАЛЬНЫЙ-РАЗРЫВ-МЕЖДУ-ПАКЕТАМИ секунд не было получено новых входящих пакетов RTP (т. е. данных). Эта опция полезна, если вы запускаете программу автоматически (например, из сценария) и хотите учесть возможность неожиданной остановки серверов. (Обратите внимание, что «-d» и «-D» это разные параметры, и оба могут использоваться одновременно.)

Однако обратите внимание, что если программа получает пакет RTCP «BYE» от источника — для каждого потока в сеансе — тогда программа закроет сеанс и выйдет немедленно, независимо от использования «-d» и/или опции «-D».

Вы также можете использовать опцию «-c» для непрерывного воспроизведения сеансов мультимедиа. То есть по истечении времени окончания программа запускается заново, выдавая ещё один набор запросов «PLAY». (Обратите внимание: если вы получаете данные (т.е. вы не используете опцию «-r»), это означает, что вы получите несколько копий данных в выходных файлах.)

Обратите внимание, что вы можете комбинировать «-c» с «-d ДЛИТЕЛЬНОСТЬ» и/или «-D МАКСИМАЛЬНЫЙ-РАЗРЫВ-МЕЖДУ-ПАКЕТАМИ». Так, например, «-c -d 10» означает «воспроизвести поток(и) в течение 10 секунд, затем вернуться и воспроизвести их снова в течение ещё 10 секунд и т. д. и т. д.»

Потоковая передача сеансов с контролем доступа

Некоторые серверы RTSP требуют аутентификации пользователя (с помощью имени и пароля) перед потоковой передачей сеанса. Для потоковой передачи такого сеанса используйте параметр «-u ПОЛЬЗОВАТЕЛЬ ПАРОЛЬ». (Чтобы указать пустой пароль, используйте «» вместо ПАРОЛЬ.) Программа аутентифицируется с использованием «дайджест-аутентификации» RTSP; пароль не будет отправлен в открытом виде по сети.

В качестве альтернативы вы можете попробовать включить имя пользователя и пароль в URL-адрес, например: «rtsp://ПОЛЬЗОВАТЕЛЬ:ПАРОЛЬ@ХОСТ:ПРОЧЕЕ». (Однако в этом случае пароль будет отправлен в открытом виде по сети. Кроме того, не все серверы будут принимать этот тип URL-адреса.)

Вывод файла в формате «.mov», «.mp4» или «.avi»

Используйте параметр «-q» для вывода полученных данных на стандартный вывод в виде файла Apple QuickTime в формате «.mov». Каждая полученная часть будет иметь свой собственный трек в выходном файле.

Аналогично, опция «-4» создаёт файл в формате .mp4 (то есть MPEG-4).

В настоящее время эти параметры полностью поддерживаются только для ограниченного числа кодеков. Для тех кодеков, которые не полностью поддерживаются, программа по-прежнему сохранит все полученные данные в дорожке фильма, но будет использовать фиктивный атом мультимедийных данных (названный «. ») в описании образца. (Эта дорожка также будет отключена.) Прежде чем вы сможете воспроизвести такую дорожку, вам необходимо отредактировать файл.

Если сеанс содержит часть видео, вы также должны использовать параметры «-w ШИРИНА», «-h ВЫСОТА» и «-f ЧАСТОТА», чтобы указать ширину и высоту (в пикселях), и частоту кадров (в секунду) соответствующей видеодорожки. (Если эти параметры опущены, используются значения ширина = 240 пикселей; высота = 180 пикселей; частота кадров = 15). Эти значения важны; если они неверны, ваш файл может вообще не воспроизводиться!

Читайте также:  Cinebench r15 для mac os

В качестве альтернативы, если описание SDP сеанса содержит атрибут уровня мультимедиа «a=x-dimensions: ШИРИНА,ВЫСОТА», то вместо этого будут использоваться эти значения (в этом случае вам не нужно использовать «-w» и «-h»). Точно так же, если описание SDP сеанса содержит атрибут уровня мультимедиа «a=x-framerate: ЧАСТОТА», то вместо этого будет использоваться это значение (в этом случае вам не нужно использовать опцию «-f»).

Если полученный файл фильма QuickTime содержит несинхронизированные аудио- и видеодорожки, то вы можете использовать параметр «-y», чтобы попытаться создать синхронизированные аудио/видеодорожки. (Этот параметр работает путём прослушивания пакетов RTCP «Sender Report», содержащих информацию о синхронизации времени — для каждого потока. Некоторые исходные несинхронизированные данные могут быть отброшены.)

Параметр «-H» также создаёт QuickTime ‘hint track’ для каждой аудио- или видеодорожки. Это полезно, если вы позже захотите стримить получившийся файл «.mov» или «.mp4».

Примечание: поддержка openRTSP для создания файлов формата QuickTime весьма ограничена. В настоящее время поддерживается только звук PCM (u-law и a-law), MPEG-4, GSM и QCELP (также известный как PureVoice), и только MPEG-4, H.263/H.263+ и H.264 видео поддерживается. (Кроме того, для создания файлов формата QuickTime с подсказками звук QCELP в настоящее время не поддерживается.)

Параметр «-i» создаёт файл в формате .avi. (Эта функция поддерживается не полностью. Поддерживается видео MPEG-1, 2 или 4, JPEG и H.263, а также необработанный звук PCM или u-law. Однако MPEG и другие аудиокодеки ещё не поддерживаются.)

Важное примечание: если вы выводите файл формата «.mov», «.mp4» или «.avi», вы должны позволить «openRTSP» работать до конца, или же завершить его чисто, сигнализировав SIGHUP или SIGUSR1. Вы не должны завершать его, используя Ctrl+c, иначе выходной файл не будет записан должным образом.

Периодический вывод файла

Если задана опция «-P ИНТЕРВАЛ-В-СЕКУНДАХ», то «openRTSP» будет выводить новый файл каждые ИНТЕРВАЛ-В-СЕКУНДАХ секунд. (Имя каждого выходного файла будет включать временной диапазон (в секундах), который он представляет.)

Эту опцию также можно использовать с опциями «-q», «-4» и «-i» (для вывода файлов «.mov», «.mp4» и «.avi» соответственно). В этом случае выходные файлы будут записаны отдельно, а не в stdout.

Опции ‘Trick play’

Серверы RTSP могут дополнительно поддерживать операции «специализированного воспроизведения» в потоке — в частности, возможность поиска определённого времени в потоке и/или возможность воспроизведения потока в ускоренном, медленном или обратном воспроизведении.

Используйте параметр «-s НАЧАЛЬНОЕ-ВРЕМЯ», чтобы запросить запуск потока на второй отметке НАЧАЛЬНОЕ-ВРЕМЯ (по умолчанию: 0,0). Используйте параметр «-z СКОРОСТЬ», чтобы запросить ускоренное воспроизведение вперёд (СКОРОСТЬ > 1.0), медленное воспроизведение (0

VLC — как смотреть RTSP поток с камеры

Чтобы обеспечить потоковое вещание VLC RTSP, сначала необходимо настроить медиа-проигрыватель. Воспроизведение и захват RTSP-потока востребованы в системах охраны, где организовано круглосуточное видеонаблюдение. Из плеера VLC на IP-камеру можно посылать команды-инструкции для управления видеосъемкой. Узнаем, что нужно для настройки и как работает RTSP в медиа плеере.

VLC – как смотреть RTSP поток с камеры

RTSP (RealTimeStreamingProtocol) представляет собой протокол передачи видеопотока. Описываемые им команды способны сообщать видеокамере разные действия: остановка, трансляция данных, изменение режима, скорости записи/ чтения, доступ по времени к файлам, находящимся на сервере. В маркировке IP-камеры или видеорегистратора может быть указано «RTP» или «UDP». Это обозначение механизма передачи видеоинформации. Данный вид съемки может быть организован:

  1. через локальную сеть;
  2. по беспроводной технологии Wi-Fi.

Замечание. Каждый производитель устройства видеозаписи имеет разный вид запроса RTSP. Эти данные необходимо уточнять у изготовителя прибора.

Пример запроса RTSP

К VLC MediaPlayer можно подключать IP-камеры, работающие по LAN или беспроводной сети. Пример обращения VLC проигрывателя по RTSP к видеокамере или серверу может выглядеть так. rtsp:// boss: psw @172.27.0.60: 582/ cam1.sdp

  • boss – имя пользователя (логин);
  • pass – пароль;
  • 27.0.60 – IP-адрес камеры в сети LAN или Wi-Fi;
  • 582 – номер порта, для протокола RTSP;
  • cam1 – видеопоток видео от веб-камеры.
Читайте также:  Почему для серверов используют линукс

Таким запросом происходит обращение к веб камере D-link DSC-2103. Компьютер запрашивает по RTSP у видеоустройства информацию, записанную в файл с названием «cam1.sdp». Если требуется получить еще один видеопоток с этой же камеры, то «cam1.dsp» в запросе меняется на «cam2.dsp». Иначе будет выглядеть запрос к видеорегистратору Polyvision: rtsp:// 172.27.0.162: 592/usr= adm&pass= qwe321&channel= 1&stream= 1.sdp?real_stream

  • channel = 1 – номер канала для передачи данных;
  • 1 – номер видеопотока (в данном случае второй поток).

Важно! При передаче логина и пароля в строке параметров, они остаются в кэше на сервере. Эти данные могут быть перехвачены. Поэтому для RTSP-запроса рекомендуется использовать учетную запись (логин/пароль) без административных прав.

Просмотр трансляции в VLC по RTSP

VLC Media Player работает с любыми регистраторами и веб-камерами. Для того чтобы просматривать VLC RTSP поток с камеры на персональном компьютере, понадобится настроить медиа-плеер. Все действия выполняем согласно следующей инструкции.

  • Открыть проигрыватель VLC, выбрать раздел меню «Инструменты», затем пункт «Настройки».

  • Перейти во вкладку «Ввод/кодеки» нажатием значка вверху справа.

  • Пролистать страницу вниз. В разделе «Сеть» найти подпункт «Транспорт потока Live 555», установить переключатель в положение «RTP поверхRTSP (TCP)». Нажать на кнопку «Сохранить».

  • Выбрать в меню раздел «Медиа», затем пункт «Открыть URL…».

  • В поле указания сетевого адреса ввести параметры для соединения с устройством видео-регистрации. Сетевые параметры необходимо уточнить у производителя техники.

После нажатия кнопки «Воспроизвести» начнется потоковая трансляция видеозаписи с камеры или регистратора. Также есть возможность использовать протокол HTTP для передачи или приема видеопотока. В этом случае потребуется иметь статический IP-адрес персонального компьютера. Его можно прописать в настройках локальной сети. Обычно это IPv4. После задания правильного адреса из сети интернет-провайдера станет доступна организация HTTP-потока в VLC.

Передача видеопотока по RTSP в VLC

Разберем теперь, как организовать VLC трансляцию RTSP. Здесь также нужно обратиться к настройкам при выборе видеоустройства.

  • Запустить медиа-плеер, выбрать пункт меню «Медиа», «Открыть устройство захвата…».

  • Открыть вкладку «Файл», нажать на кнопку «Добавить…», через диалоговое окно выбрать видео-файл, который необходимо транслировать.

  • После выбора медиа-файла, нажать стрелке рядом с кнопкой «Воспроизвести» и выбрать команду «Поток».

  • В появившемся окне ознакомиться с информацией по работе «мастера» и нажать кнопку «Следующий».

  • Напротив надписи «Новое значение» указать «RTSP». Выбрать «Добавить».

  • В открывшемся диалоговом окне рекомендуется оставить параметры потоковой трансляции по умолчанию. Жмем кнопку продолжения.

  • На следующей странице оставить настройки перекодирования, как есть, и перейти к следующему шагу.

  • Здесь настраиваются дополнительные настройки вещания (ffmpeg). Данные записаны в строке вывода для генерации потока. Это кодеки, каналы передачи и другие свойства. Нажимаем по кнопке «Поток» для старта видеотрансляции.

  • Если все выполнено правильно, начнется потоковая передача видео из указанного источника.

Таким же способом можно подключиться к трансляции с другого ПК. Потребуется знать только IP-адрес компьютера. Можно транслировать сразу несколько файлов, по-очереди. Доступна передача мультимедиа не только из файла, но и с устройства ipcamera, микрофона, видеорегистратора или просто экрана монитора.

Примечание. В «живой» потоковой передаче нельзя использовать перемотку или поставить видео на паузу.

Проверка RTSP-потока

Чтобы проверить, успешно ли началась трансляция можно использовать любо другой медиа-проигрыватель, либо просто еще один VLC. Плеер должен имет ьвосзможность принимать потоковое видео.

  • Запустить второй проигрыватель (здесь VLC). Выбрать пункт «Открыть URL…» и раздела меню «Медиа».
  • Прописать в появившемся окне локальный IP-адрес компьютера, порт, путь и префикс «rtsp://» в начале строки. Нажимаем кнопку воспроизведения трансляции.

Для организации потокового RTSP-вещания с видеокамеры, ПК или другого устройства потребуется знать только IP-адрес, а также как открыть или передать трансляцию. Если адрес устройства неизвестен, можно воспользоваться любой поисковой системой. В строке поиска вводим запрос «мой IP адрес» и получаем результат.

Обязательное условие потокового вещания RTSP через VLC – камера и ПК должны находиться в одной локальной сети. Видеопоток можно выводить на экран телевизора или передать трансляцию с видеокамеры на веб-ресурс.

Оцените статью