Тематические термин: Flussonic, Linux, Ubuntu, CentOS.
В инструкции пойдет речь о настройке медиа сервера Flussonic и публикации каналов на приставки с помощью плейлиста m3u. Приведенные команды выполняются на операционных систем Linux: Ubuntu / Debian и CentOS / Red Hat. Сам разработчик рекомендует использовать Ubuntu.
Flussonic распространяется на платной основе и для его работы нужен лицензионный ключ. Разработчик предоставляет пробную версию. Для этого заходим на страницу erlyvideo.ru/prices/mediaserver и кликаем по кнопке Попробовать любого из понравившихся тарифов:
В открывшемся окне заполняем форму и нажимаем Отправить заявку.
В качестве ответа, на указанную почту придет письмо со ссылкой для регистрации. Необходимо по ней перейти, принять лицензионное соглашение и заполнить поля — мы получим ключ, который необходимо скопировать и сохранить (он нам понадобиться в будущем).
Для Flussonic имеет значение, какое максимальное количество файлов может открыть процесс. Настройка выполняется в файле:
vi /etc/security/limits.conf
Выставляем следующие значения:
root soft nofile 65536root hard nofile 65536
Под Ubuntu и CentOS программное обеспечение ставится с небольшими отличиями.
Скачиваем и добавляем в систему ключ репозитория:
wget -q -O – http://debian.erlyvideo.org/binary/gpg.key | apt-key add -;
Добавляем в список новый репозиторий со следующим содержимым:
vi /etc/apt/sources.list.d/erlyvideo.list
deb http://debian.erlyvideo.org binary/
Обновляем список пакетов:
apt-get update
Устанавливаем программу и ее компоненты:
apt-get install flussonic flussonic-ffmpeg flussonic-python
Добавляем репозиторий Flussonic:
vi /etc/yum.repos.d/flussonic.repo
[flussonic]name=Flussonicbaseurl=http://debian.erlyvideo.org/rpmenabled=1gpgcheck=0
Устанавливаем пакеты:
yum install flussonic-erlang flussonic flussonic-ffmpeg flussonic-python
Разрешаем автозапуск демона:
systemctl enable flussonic
Запускаем flussonic командой:
systemctl start flussonic
Открываем браузер и заходим на страницу http://<IP-адрес сервера>:8080/. В открывшейся странице вводим лицензионный ключ, который получили при подготовке системы (выше по данной инструкции) и нажимаем Activate Flussonic:
Нас перекинет на страницу ввода логина и пароля администратора. Для входа используем значения по умолчанию: flussonic и letmein!
Предусмотрено два варианта — через веб-интерфейс или конфигурационный файл на сервере. В зависимости от ситуации может оказаться необходимым тот или иной способ.
Переходим в раздел Config – в подразделе «Access» меняем данные пользователя:
Открываем следующий файл:
vi /etc/flussonic/flussonic.conf
Редактируем опцию «edit_auth»:
edit_auth flussonic letmein!;
* где flussonic — логин; letmein! — пароль.
После внесенных изменений необходимо перезапустить flussonic:
systemctl restart flussonic
Самый простой способ проверить работоспособность нашего медиа сервера — настроить проигрывание видео из файла.
Для этого создадим каталог, в который разместим видеофайл:
mkdir -p /flussonic/vod
Перейдем в него и скачаем видео:
cd /flussonic/vod
curl -o bunny.mp4 http://download.blender.org/peach/bigbuckbunny_movies/big_buck_bunny_480p_h264.mov
* big_buck_bunny_480p_h264 предлагают загрузить из официальной документации flussonic. По сути, можно скопировать в наш каталог любой файл.
Открываем конфигурационный файл сервера:
Редактируем следующее:
file vod { path /flussonic/vod;}
* мы указали, что медиа файлы находятся в корне /flussonic/vod. При обращении к серверу по адресу http://IP:8080/vod/, первая часть будет отрезана, vod будет заменен на /flussonic/vod.
Перезапускаем сервис:
Теперь открываем браузер и переходим по адресу http://<IP-адрес сервера>:8080/vod/bunny.mp4/embed.html — начнется воспроизведение видеофайла.
Также, файл можно добавить через веб-интерфейс в разделе Media – подразделе Files (VOD):
Разработчиками представлена возможность настроить прямой эфир на демо видео. Для этого открываем конфигурационный файл:
И добавляем:
stream demo { url fake://fake;}
* где stream — указатель на то, что это видеопоток; demo — имя потока; fake://fake — запрос на демо файл, который понимает flussonic.
В браузере вводим http://<IP-адрес сервера>:8080/demo/embed.html. Мы должны увидеть прямой эфир с указанием даты и текущего времени.
В качестве примера, опубликуем rtsp-поток с веб-камеры. В конфигурационном файле пропишем:
stream cam1 { url rtsp://username:[email protected]:554/h264;}
* где cam1 — название потока; rtsp://192.168.0.15:554/h264 — ссылка на поток камеры (у каждой модели камеры может использоваться свой адрес — необходимо ознакомиться с инструкцией); username:password — соответственно, логин и пароль для RTSP-авторизации (если она отключена, то можно ничего не писать).
Перезапускаем сервер:
Для проверки в браузере вводим http://<IP-адрес сервера>:8080/cam1/embed.html.
Для удобной передачи каналов на видеоприставку, создадим плейлист m3u. Для этого создаем файл следующего содержания:
#EXTM3U#EXTINF:0 group-title=”Demo”,Flussonic – Demohttp://<IP-адрес сервера>:80/demo/video.m3u8#EXTINF: 0 group-title=”Cams”, Camera Egehttp://<IP-адрес сервера>:80/cam1/video.m3u8#EXTINF: 596 group-title=”Kids”, Bunny Multhttp://<IP-адрес сервера>/vod/bunny.mp4/video.m3u8
* где
Для публикации плейлиста необходимо выложить созданный файл на веб-сервер. Файл должен быть доступен по http-запросу. Самое простое, создать его на нашем сервере Flussonic:
vi /opt/flussonic/wwwroot/playlist.m3u
* /opt/flussonic/wwwroot — каталог по умолчанию для root directory flussonic.
Теперь, при настройке видеоприставки можно указать адрес на плейлист http://<IP-адрес сервера>/playlist.m3u. Мы получим список из наших 3-х видео:
Рассмотрим настройки, которые могут значительно улучшить качество услуги по предоставлению IPTV.
Заглушка позволит проигрывать другой файл, если поток стал недоступен. Для этого добавляем опцию backup в настройках потока:
stream cam1 { url rtsp://username:[email protected]:554/h264; backup vod/bunny.mp4;}
* в данном примере, если поток с камеры будет не доступен, запустится проигрывание мультфильма.* указывать необходимо относительный путь к файлу в vod.
Перезапускаем flussonic:
Flussonic позволяет вшить собственный логотип в видеопоток. Для этого меняем настройки потока:
stream cam1 { url rtsp://username:[email protected]:554/h264; backup vod/bunny.mp4; transcoder vb=2048k preset=fast logo=/flussonic/logo/[email protected]:10 ab=128k;}
* в данном примере файл /flussonic/logo/mylogo.png будет размещен в верхнем левом углу (10:10). Для размещения в правом углу используем формулу (main_w-overlay_w-10):10. Для определения высоты экрана используется переменная main_h-overlay_h.
И перезапускаем flussonic:
Транскодирование — ресурсоемкий процесс. После его запуска необходимо проверить нагрузку и удостовериться, что сервер с ней справляется.
Добавляем несколько камер и собираем из них мозайку:
stream cam2 { url rtsp://username:[email protected]:554/h264;}stream cam3 { url rtsp://username:[email protected]:554/h264;}stream mosaic0 { url mosaic://cam1,cam2,cam3?fps=25&preset=ultrafast&bitrate=1024k&size=340×240&mosaic_size=16;}
* как видим, мы просто создали новый поток с именем mosaic0.
Перезапускаем службу:
Для его просмотра в браузер вводим адрес http://<IP-адрес сервера>/mosaic0/embed.html.
Данная инструкция — быстрый старт по работе с Flussonic. Полная документация представлена на сайте компании Erlyvideo.
Продолжая использовать данный сайт вы принимаете политику конфиденциальности и cookies