Wowza Media Server Pro

Unix > Wowza Media Server Pro
08.02.2013 16:36:42



Статья:

Wowza Media Server Pro общается с плеером клиента Flash Player по средством RTMP протокола. Это позволяет иметь большой спектр мультимедийных и интерактивных FLASH приложений.

The Wowza Pro server поддерживает flash media потоки, H.264/ACC медиа потоки, MP3 медиа потоки, видео чаты и видео запись. Он также поддерживает компоненты со стороны сервера удаленных общих объектов (remote shared objects). Wowza Media Server Pro позволяет вам включать интерфейс пользовательских приложений (пользовательских модулей), которые напрямую вызываются из Flash плеера.
RTMP базовый протокол, наиболее эффективный и самый быстрый из всех пяти протоколов. RTMPT туннельный вариант RTMP протокола, который может быть использован для туннеля через файерволлы, использующие стабильную пакетную инспекцию. RTMPE и RTMPTE декриптированные варианты RTMP и RTMPT протоколов, которые сохраняют данные, передаваемые между Flash player и Wowza Pro. Wowza Media Server Pro включает двухстороннюю поддержку для Action Message Format (AMF) AMF3 и AMF0 и сериализацию данных (AMF3 представлен в Flash Player 9 и ActionScript 3.0).

Wowza Media Server Pro поддерживает MPEG Transport Streams (ISO 13818-1, H.222.0, MPEG-TS) для потоков содержащих H.264/HE-AAC. Это позволяет использовать не-RTMP основанную живую медиа декодировку с Wowza Pro. Эти потоки потом переводятся (не транскодируются) как необходимо для доставки в клиент Flash player.
Wowza Media Server Pro может обеспечивать потоки видео и аудио контента в видео формате Flash video format (.flv), H.264/ HE-AAC media format (.f4v, .mp4, .m4a, .mov, .mp4v, .3gp, and .3g2) и MP3 format (.mp3) во Flash player клиент. Сервер поддерживает потоки всех вариантов видео, аудио, метаданных, которые могут сохраняться в Flash video файле, H.264/HE-AAC контента сохраняемый в MP4 (Quicktime контейнер) файле и аудио и MP3 метаданные, сохраняемые в MP3 audio файле.

Wowza Media Server Pro может расширяться путём кодирования клиентских модулей, которые вызываются клиентом Flash Player. Пользовательские модули вводятся в Java и динамично подвязаны к работе сервера. Пользовательские модули замена FMIS скриптов со стороны сервера. Пользовательские модули используются что бы расширить потоковые возможности сервера. Эти модули имеют полный доступ к видео и аудио потокам на пакетном уровне в обоих случаях для входа и выхода с сервера. Этот уровень доступа даёт глубокую интеграцию с другими медиа серверами или медиа доставляющими системами, такими как SHOUTcast, PBX телефонная система, видео обслуживающие системы и многое другое.

Интерфейс Пользовательского модуля используется для интеграции Wowza Media Server Pro с другими серверами на основе АPI прямо через Java, сервисно ориентированный архитектурный протокол Service-Oriented Architecture Protocol (SOAP), процедурами удаленного вызова remote procedure calls (RPC), Java Native Interface (JNI) и Java Database Connectivity (JDBC).
Привлекательный RTMP сервер для потокового видео, аудио, и содержания данных из и в клиент Adobe® Flash® Player, выполняет процедуру удаленного вызова и поддержки удаленных общих объектов (SHARED OBJECTS). Это альтернатива продуктов Adobe Flash Media Server t (FMIS и FMSS). В дополнение, Wowza Media Server Pro поддерживает протокол потока реального времени (RTSP), транспортный протокол реального времени (RTP), потоков MPEG Transport Streams (MPEG-TS) для входящих потоков контента H.264/HE-AAC. Wowza Media Server Pro мощный и расширяемый сервер на основе Jawa , который может быть развернут на любой платформе и поддерживает Jawa (aka 1.5) или более поздние виртуальные машины.
Перед началом работы с потоками Wowza необходимо открыть порты на вашем файерволле. Данная таблица показывает порты по умолчанию, которкые Wowza Pro использует в потоках. Все эти порты конфигурируются в через файлы описанные ранее RTMP/RTMPT/RTMPE/RTSP-interleaved Streaming


TCP 1935

RTP UDP потоки


UDP 6970-9999

JMX/JConsole мониторинг и администрирование


TCP 8084-8085
Запуск и остановка сервера

Wowza Pro может быть сконфигурирован для принятия H.264/HE-AAC потока из родного RTP потока. Этот метод не позволяет использовать RTSP сессию. Взамен поток отслаивается по запросу через использование по требованию одного из определенного типа потока. Типы потоков для отслаивания родного RTP потока : rtp-live, rtp-live-record, rtp-live-lowlatency и rtp-live-record-lowlatency. Когда используется этот метод, Wowza Pro поддерживает оба одновоспроизводимые UDP потоки также как и мультивоспроизводимые потоки.
Процедура для использования этого метода следующая (здесь принято имя“rtplive”):
Создайте папку “[install-dir]/applications/rtplive”.
Создайте папку “[install-dir]/conf/rtplive” и скопируйте “[install-dir]/Application.xml” в эти новые папки.
Отредактируйте скопированный в “Application.xml” файл и измените “Streams/StreamType” на “rtp-live”.
Из декодера сгенерируйте Session Description Protocol (SDP) файл что описывает родной поток( проконсультируйте с в документации по декодеру как это сделать).Для примера мы принимаем имя файла “myStream.sdp”.
Скопируйте SDP файл в “[install-dir]/content” папку.

 

Минимальные приготовления, множество протоколов

Единственное приготовление, которое нужно сделать для файлов с одним битрейтом, – это убедиться, что строки URL доступны для любого протокола или устройства, на котором будет воспроизводиться оригинальный основанный на H.264 MP4 или M4V файл:

• URL-адреса Apple iPhone добавляют "playlist.m3u8" после остальной части URL, вроде этого:
http://[wowza server]:1935/vod/mp4:filename.mp4/ playlist.m3u8
. Это происходит в независимости от того, будет ли iPhone воспроизводить файл с адаптивным битрейтом или с одним.

• Воспроизведение Flash-видео, используя пробный Flash player Wowza, немного отличается тем, что серверная и потоковая информация разделяются. Flash player запрашивает серверную информацию ("rtmp://localhost/vod" работает, если вы проигрываете на Flash player контент с того же сервера), а затем потоковую информацию ("mp4:filename.mp4").

• Microsoft Silverlight Smooth Streaming также воспроизводится с встроенного проигрывателя Silverlight, что является новым включением в скачиваемый файл сервера версии 2.1.2. Пробные проигрыватели как Flash, так и Silverlight полезны для тестирования и ознакомления.

• Silverlight добавляет "/Manifest" в конец строки URL для обозначения того, что манифест доступен для воспроизведения, так что URL выглядит таким образом:
http://[wowzaserver]:1935/vod/ mp4: sample.mp4/Manifest
(смотрите рисунок).

• Воспроизведение RTSP очень простое: rtsp://[wowzaserver]:1935/vod/mp4: filename.mp4.

Когда дело доходит до вывода потоков, легко увидеть, где Wowza Media Server по-настоящему срабатывает наилучшим образом. Потому что самое интересное в Wowza Media Server – это вся предварительная работа, которую вам НЕ нужно делать перед тем, как положить VOD файл в каталог Content.

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

Для адаптивного битрейта (ABR), однако, Wowza использует SMIL-файл, который должен быть приготовлен заранее).  SMIL – это язык, использовавшийся RealPlayer для указания, какой из нескольких файлов следует выбрать для воспроизведения проигрывателем или браузером. Потоковые сервера часто предлагали выбор между тремя и пятью различными битрейтами, к которым шло обращение с помощью SMIL-файла, так что этот метод доставки часто называли мультибитрейтной (MBR) потоковой передачей. Однако с началом передачи выбирался только один поток, и воспроизведение привязывалось к этому битрейту в независимости от того, какие проблемы с перегрузкой сети это вызывало.
Потоковая передача с адаптивным битрейтом использует то же количество битрейтов, что и мультибитрейтная потоковая передача, но может использовать любой из различных битрейтов в течение всего воспроизведения. Для этого файлы разбиваются на 2-10-секундные куски, а затем сервер указывает, какой битрейт будет воспроизводиться в данный период времени.