Очевидно, что достаточное количество пользователей «потоковых» мультимедийных услуг желают или будут желать использовать такие стандартные для систем домашнего видео и DVD функции, как «пауза», «перемотка вперед/назад» и т.п. Как было сказано в п. 1.2.2 данной главы, реализация дополнительных протоколов позволит полностью удовлетворить запросы самого требовательного пользователя.

На момент написания книги самым широкораспространенным и быстроразвиваюшимся протоколом, на основе которого реализуются упомянутые выше функции, является «протокол для потоковых данных реального времени» RTSP (Real-Time Streaming Protocol) определенный в .

Главной функцией протокола RTSP является возможность управления «потоковым» приложением. Функции управления реализованы в программном продукте, осуществляющим воспроизведение аудио и/или видеоинформации, поступающей со стороны сервера, т.е. медиаплейеру. Управление осуществляется путем обмена управляющими сообщениями между сервером и клиентом. Управляющие сообщения протокола RTSP не принадлежат к информационным соединениям и потокам между сервером и клиентом - они используют отдельное соединение или поток с номером порта 544, поэтому этот протокол называется «выделенным» (out-of-band). Аналогию для управляющих сообщений RTSP можно провести с управляющим каналом в протоколе FTP. Спецификация RTSP позволяет использовать на транспортном уровне для своих лакетов как протокол TCP, так и UDP.

На рис. 1.27 приведен пример взаимодействия клиента и сервера при помощи протокола RTSP. Будем рассматривать случай, когда оконечный пользователь на стороне клиента использует стандартный браузер (browser) для просмотра гипертекстовой информации из сети и через него инициирует просмотр «потокового» видео со звуковым сопровождением. В результате процедуры инициирования (физически это может быть просто щелчок мышью на соответствующую гиперссылку) браузер посылает веб-серверу запрос о параметрах объекта (презентации), находящегося за гиперссылкой (в нашем случае это - «потоковое» видео со звуковым сопровождением), в результате чего веб-сервер присылает «файл описания презентации» (presentation description), пример которого приведен на рис. 1.26 , Взаимодействие осуществляется через протокол HTTP , Этот файл может содержать как ссылки на несколько «потоковых» файлов, так и директивы по их синхронизации. Каждая ссылка на «потоковый» файл должна начинаться с метода URL rtsp://.

Отметим, что физически «потоковые» файлы могут находиться на другом сервере, называемом «медиа-сервером» (media server). В рассматриваемом примере аудио и видеопотоки должны воспроизводиться параллельно на стороне клиента в режиме lip sync (синхронизация между аудио и видеопотоками), причем медиаплейер имеет возможность выбора в каком качестве должно воспроизводиться аудиосопровождение - на стороне медиа-сервера доступно два аудиопотока различного качества: высокого ni fi и низкого lofi. Отметим, что в примере предполагается использование известного формата SMIL для файлов аудиопотока. Этот формат используется для обеспечения синхронизации между различными потоками многими коммерческими продуктами.

Рис. 1.26. Пример метакода «файл описания презентации»

После принятия от веб-сервера «файла описания презентации» на стороне клиента браузер должен послать запрос на загрузку в оперативную память локального медиаплейера, способного воспроизводить аудио и видеопотоки заданного формата. Далее, как показано на рис. 1.27, медиаплейер на стороне клиента и медиа-сервер обмениваются рядом сообщений RTSP. Медиаплейер посылает медиа-серверу сообщение запроса установления RTSP-соединения RTSP SETUP, ответом на которое является сообщение о поддержке этого соединения RTSP ОК.

Сообщение RTSP SETUP содержит информацию о номере порта клиента, куда должны быть адресованы пакеты «потокового» файла. Затем медиаплейер посылает запрос RTSP PLAY на начало передачи «потокового» файла, пусть, в нашем случае, это аудио низкого качества lofi. После получения этого запроса, медиа-сервер начинает посылать медиаплейеру, находящемуся на стороне клиента, пакеты, содержащие требуемую аудиоинформацию.

Далее на рис. 1.27 показан пример реализации функции «пауза» - для приостановки посылки пакетов «потокового» аудио медиаплейер должен послать сообщение RTSP PAUSE, а медиа-сервер должен ответить сообщением RTSP ОК. Если пользователь решает окончить прослушивание/просмотр, должно быть инициировано разрушение RTSP-соединения, для чего медиаплейер посылает медиа-серверу сообщение RTSP TEARDOWN, а медиа-сервер должен ответить сообщением RTSP ОК.

Протокол RTSP не включает rs себя следующие функции:

Определение схем и алгоритмов компрессии для аудио и видео;

Определение каким образом аудио и видеоинформация инкапсулируется в пакеты для передачи через сеть; эта функция может быть реализована в протоколе RTP или в «корпоративном протоколе» производителя программного обеспечения приложения.

Например, в программных реализациях как медиа-сервера, так и клиента фирмы RealNetworks для обмена служебной информацией используется протокол RTSP, а аудио и видеоинформация инкапсулируется через протокол RTP;

Определение какой транспортный протокол используется для переноса пакетов «из-конца-в-конец» - может использоваться как UDP, так и TCP;

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

Самая свежая и полная информация о протоколе RTSP может быть найдена в Интернете по адресу

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

Проигрывание в плеере VLC RTSP, а также возможность захвата потока – весьма востребованные функции среди пользователей систем видеонаблюдения, в составе которых присутствуют IP-камеры.

Применение

Большинство современных моделей камер видеонаблюдения, а также видеорегистраторов оснащены поддержкой описываемого протокола. Добавив к этим аппаратным составляющим такой надежный программный инструмент, как VideoLAN Client можно осуществить организацию системы для просмотра и сохранения видеоинформации без привлечения профессионалов в этой сфере.

Real Time Streaming Protocol – это прикладной потоковый протокол, описывающий команды, которые служат, чтобы управлять видеопотоком. Команды могут указать IP-камере либо серверу совершать различные действия, к примеру, начать транслировать поток, либо остановить передачу видеоданных.

В параметрах IP-камер может встречаться различное обозначение потокового варианта передачи информации. RTSP , как было сказано выше, является, по сути набором команд, с помощью которого осуществляется управление потоком. Аббревиатуры UDP и RTP указывают на транспортный механизм, применяемый при передаче видео.

Открытие RTSP-потока в VLC.

Чтобы поток с камеры отображался в окне проигрывателя, требуется предварительная настройка ВЛЦ. Выполняем ниже перечисленные пункты инструкции.


Таким простым способом может осуществляться организация просмотра камер в системах видеонаблюдения.

Протокол RTSP

RTSP (Real Time Streaming Protocol, или, по-русски, потоковый протокол реального времени) – это прикладной протокол, в котором описаны команды для управления видеопотоком. С помощью этих команд мы можем «приказать» камере или серверу, например, начать трансляцию видеопотока. Пример запроса на начало воспроизведения выглядит так: PLAY rtsp://192.168.0.200/h264 RTSP/1.0

То есть RTSP – это просто набор команд для управления видеопотоком. Проведем эксперимент. Для этого нам понадобится IP-камера с поддержкой RTSP протокола и ее RTSP адрес. Этот адрес выглядит примерно так rtsp:///mpeg. Его можно узнать из руководства по эксплуатации камеры либо из описания API. Для удобства мы приведем RTSP адреса для ряда популярных камер в таблице. После того, как мы узнали RTSP-адрес камеры, открываем стандартный проигрыватель, поддерживающий RTSP. Это может быть одна из следующих программ: Windows Media Player, QuickTime, Media Player Classic, VLC media player, RealPlayer, MPlayer. Мы выбрали QuickTime. Открываем меню «Файл > Открыть URL» и вводим наш RTSP адрес. После чего QuickTime подключится к камере и воспроизведет «живое видео». Устройства записи, работающие в системах IP-видеонаблюдения, получают видео от камер либо с помощью протокола HTTP – то есть также, как мы скачиваем JPEG-картинки с сайтов, либо в виде потока через RTSP – то есть также как мы получили его с помощью стандартного проигрывателя в последнем примере. В настройках IP-камер потоковый вариант передачи данных может обозначаться как RTSP over TCP, RTSP over UDP либо просто RTP. Итак, RTSP – это набор команд для управления потоком. Но что означают остальные аббревиатуры: TCP, UDP, RTP? TCP, UDP и RTP - это транспортные механизмы (протоколы), которые собственно и передают видео.

Протокол TCP

Допустим, мы выбрали метод RSTP over TCP и хотим начать передачу видеопотока. Что будет происходить на уровне транспортных механизмов? Предварительно с помощью нескольких команд будет установлено соединение между отправителем и получателем. После этого начнется передача видеоданных. При этом механизмы TCP

будут следить за тем, чтобы все данные дошли до адресата без изменений и в нужной последовательности. Также TCP будет регулировать скорость передачи, чтобы передатчик не посылал данные интенсивнее, чем их может обработать приемник, к примеру,

UDP – это альтернатива транспортному протоколу TCP. В отличие от TCP, UDP не устанавливает предварительного соединения, а вместо этого просто начинает передавать данные. UDP не следит за тем, чтобы данные были получены и не дублирует их, если отдельные части пропали или пришли с ошибками. UDP менее

надежен, чем TCP. Но с другой стороны, он обеспечивает более быструю передачу потоков благодаря отсутствию механизма повторения передачи потерянных пакетов. Различие в протоколах TCP и UTP можно иллюстрировать следующим примером. Встречаются два друга. Вариант TCP:

Иван: «Привет! Поболтаем?» (устанавливается соединение)
Семен: «Привет! Давай!» (устанавливается соединение)
Иван: «Я вчера был в магазине. Ты понял?» (передача данных)
Семен: «Да!» (подтверждение)
Иван: «Там разгружали новое оборудование. Ты понял?» (передача данных)
Семен: «Нет» (подтверждение)
Иван: «Там разгружали новое оборудование. Ты понял?» (повторная передача)
Семен: «Да!» (подтверждение)
Иван: «Завтра я там еще раз буду. Ты понял?» (передача данных)
Семен: «Да!» (подтверждение)
Вариант UDP
Иван: «Привет! Я вчера был в магазине» (передача данных)
Иван: «Там разгружали новое оборудование» (передача данных)
Иван: «Завтра я там еще раз буду» (передача данных)
Иван: «Могу узнать для тебя цены» (передача данных)
Иван: «Они обещали скидки при хороших объемах» (передача данных)
Иван: «Если хочешь, позвони – поедем вместе» (передача данных)
Семен: «Да, позвоню» (передача данных)

Вы также можете увидеть различие в протоколах, поставив следующий эксперимент: попробуйте перевести камеру в режим RTSP over TCP и помашите рукой перед объективом - на экране монитора вы увидите задержку. А теперь проведите этот же тест в режиме RTSP over UDP. Задержка будет меньше. На время задержки влияют несколько факторов: формат сжатия, мощность компьютера, протокол передачи и особенности программного обеспечения, участвующего в декодировании видео.

RTP (Real-time Transport Protocol), или по-русски транспортный протокол реального времени. Этот протокол специально создан для передачи реалтайм трафика. Он позволяет следить за синхронизацией передаваемых данных, корректировать последовательность доставки пакетов и потому более других подходит для передачи видео- и аудиоданных. В общем случае для передачи видеопотока предпочтительнее использовать либо RTP либо UDP. Работа через TCP оправдана лишь если нам приходится работать с проблемными сетями, так как протокол TCP сможет корректировать ошибки и сбои, возникающие при передаче данных.

Протокол RTSP позволяет любому пользователю TrueConf подключаться к IP-видеокамерам и прочим источникам медиаконтента, вещающим по данному протоколу, для наблюдения за удаленными объектами. Также пользователь может подключаться к таким камерам для трансляции изображения во время видеоконференции.

Благодаря поддержке протокола RTSP пользователи TrueConf Server могут не только подключаться к IP-камерам, но и транслировать видеоконференции на RTSP-плееры и медиа-серверы. Подробнее об RTSP-трансляциях читайте .

Что представляет собой протокол RTSP?

RTSP (Real Time Streaming Protocol) – потоковый протокол реального времени, который содержит простой набор основных команд для управления видеопотоком.

Как подключиться к IP-камере в клиентском приложении TrueConf для Windows?

Чтобы подключиться к IP-камере, которая поддерживает протокол RTSP, пользователю достаточно ввести в адресную строку клиентского приложения запрос вида #rtsp_url и нажать на кнопку Позвонить (как во время обычного видеозвонка). rtsp_url - это индивидуальный RTSP адрес камеры (его формат зависит от производителя, модели камеры и ее режима). Например, для камер Axis rtsp_url запрос будет выглядеть так: rtsp:%2f%2fIP%2faxis-media%2fmedia.amp . Такой запрос является - универсальным идентификатором устройства на TrueConf Server, по которому его можно добавлять в адресную книгу и в список участников групповой конференции.

Подключившись к камере, пользователь может следить за объектом беспрерывно, хоть круглые сутки!

Преимущества использования IP-камер с программными решениями TrueConf

  1. Установив IP-камеру в офисе или промышленном цеху и подключившись к ней в любой удобный момент, вы сможете контролировать производственный процесс вашей компании.
  2. Вы можете вести круглосуточное наблюдение за удаленными объектами. К примеру, если вы отправляетесь в отпуск и не хотите оставлять квартиру без присмотра, просто установите там одну или несколько IP-камер. Совершив звонок на одну из таких камер со своего ПК с установленным клиентским приложением TrueConf, вы сможете в любое время подключиться к своей квартире и посмотреть в режиме реального времени, что там происходит.
  3. В клиентских приложениях TrueConf для Windows, Linux и macOS всем пользователям доступна возможность записи видеоконференций, благодаря которой в процессе видеонаблюдения вы сможете зафиксировать любые события и получить их документальные подтверждения.

Материал из Википедии - свободной энциклопедии

Потоковый протокол реального времени (англ. real time streaming protocol , сокр. RTSP ) - прикладной протокол , предназначенный для использования в системах, работающих с мультимедийными данными (мультимедийным содержимым, медиасодержимым), и позволяющий удалённо управлять потоком данных с сервера, предоставляя возможность выполнения команд, таких как запуск (старт), приостановку (пауза) и остановку (стоп) вещания (проигрывания) мультимедийного содержимого, а также доступа по времени к файлам, расположенным на сервере. Разработан IETF в 1998 году и описан в RFC 2326 .

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

Описание

По синтаксису и операциям протокол похож на HTTP . Однако между протоколами RTSP и HTTP есть ряд существенных различий. Одно из основных заключается в том, что в первом и сервер, и клиент способны генерировать запросы. Например, видеосервер может послать запрос для установки параметров воспроизведения определенного видеопотока. Также протоколом RTSP предусматривается, что управление состоянием или связью должен осуществлять сервер, тогда как HTTP вообще никакого отношения к этому не имеет. Наконец, в RTSP данные могут передаваться вне основной полосы (англ. out of band ) другими протоколами, например RTP, что невозможно в случае HTTP.

RTSP-сообщения посылаются отдельно от мультимедийного потока. Для них используется соединение по специальному порту , по умолчанию с номером 554. Запрос на сервер посылается в текстовом виде в формате: метод <абсолютный_адрес> <версия_протокола> . Вместе с запросом могут быть переданы дополнительные служебные поля (на новых строках запроса).

Методы протокола:

  • describe - запрос описания содержимого, например, в формате SDP ;
  • options - запрос поддерживаемых методов;
  • play - запрос начала вещания содержимого;
  • pause - запрос временной остановки вещания;
  • record - запрос на записывание содержимого сервером;
  • redirect - перенаправление на другое содержимое;
  • setup - запрос установки транспортного механизма для содержимого;
  • announce - обновление данных описания содержимого;
  • get_parameter - запрос указанных параметров у сервера;
  • set_parameter - установка параметров сервера;
  • teardown - остановка потока и освобождение ресурсов.

Пример запроса: PLAY rtsp://example.com/video/test.mpg/streamid=0 RTSP/1.0