Документация на Flussonic Media Server

  1. Быстрый старт
  2. How-to
  3. Потоковое вещание
    1. Варианты источников
    2. Переключение источников
    3. Публикация на Flussonic
    4. Прием мультикаста
    5. Серверные плейлисты
    6. Микширование
    7. Захват с SDI
    8. Отправка на другие серверы
    9. Распознавание DVB субтитров
    10. Наложение логотипа
  4. Транскодер
    1. Логотип
    2. Hardware (Nvidia NVENC)
    3. Hardware (Intel Quick Sync Video)
    4. Скриншоты
    5. Мозаика
  5. DRM
    1. Simple CAS
    2. Conax DRM
    3. BuyDRM (KeyOS)
    4. Widevine
    5. PallyCon
    6. EzDRM
  6. Авторизация
    1. Конструктор бэкендов
    2. Сервис сбора статистики
    3. Domain lock
    4. Middleware
    5. Secure links
    6. Ограничение сессий
    7. Мультиавторизация
    8. Бан IP адресов
    9. DVR
    10. Aliaser
  7. API
    1. HTTP API
    2. Events API
    3. MySQL API
    4. SQL API для кластеров
    5. SNMP
  8. Кластер
    1. Ретрансляция
    2. Кластерный захват
    3. Балансировщик нагрузки
    4. Пиринг
    5. Организация CDN
  9. VOD
    1. Кэш
    2. Облако
    3. Транскодирование файлов
    4. Мультибитрейтный VOD из файлов
  10. DVR
    1. Настройка
    2. Timeshift
    3. Catchup
    4. Проигрывание
    5. Экспорт в MP4
    6. Доступ по протоколам
    7. Timelapse
    8. API
    9. Кластеризация DVR
    10. Репликация
    11. Облако
  11. Воспроизведение
    1. HLS
    2. embed.html
    3. HTML5 с низкой задержкой
    4. Плеер HTML5 с низкой задержкой
    5. MPEG-TS
    6. RTMP
    7. DASH
    8. HDS
    9. RTSP
    10. Multicast
    11. Multicast с постоянным битрейтом
    12. WebRTC
    13. H.265
  12. Администрирование
    1. Установка
    2. Обновление
    3. Конфигурация
    4. Мониторинг
    5. Производительность
    6. Лицензия
    7. LUA скрипты
    8. Безопасность
    9. Let's Encrypt
    10. Миграция
  13. IPTV
    1. Захват спутникового видео
    2. Транскодирование
    3. Middleware в IPTV OTT
    4. Экспорт EPG со спутника
    5. Группы каналов
    6. Реклама

Быстрый старт

Эта статья познакомит вас с Flussonic Media Server. Прочитав ее, вы сумеете:

Чтобы попробовать Flussonic Media Server, нужен компьютер с Linux, подключенный к Интерету, и лицензионный либо триальный ключ. Триальный ключ можно запросить на этой странице

Мы рекомендуем операционные системы Debian или Ubuntu, но можно попробовать и CentOS. Основное требование — 64-разрядная операционная система. Если Линукса или свободного сервера под рукой нет, то можно арендовать сервер в Digital Ocean на время, чтобы попробовать Flussonic Media Server.

В результате вам надо иметь доступ к консоли Linux под пользователем root.

Замечание. Далее в документации мы будем приводить IP адрес и URL Flussonic Media Server (например, FLUSSONIC-IP). Вам необходимо заменять их на реальные IP адрес или URL вашего сервера.

Решения Flussonic Anchor Anchor x2

Flussonic Media Server

Flussonic Media Server — это серверное программное обеспечение для видео стриминга, способное решать широкий ряд задач от захвата, транскодирования, записи архива и мультипротокольной раздачи видеоконтента (live и on-demand) по всему миру, до управления потреблением контента и видео потоками.

Flussonic Watcher

Flussonic Watcher — это отдельный продукт, который используется вместе с Flussonic Media Server для организации систем видеонаблюдения. Это пользовательский интерфейс к серверу Flussonic, созданный для удобной работы с камерами, абонентами и событиями.

Flussonic Watcher работает только вместе с Flussonic Media Server. О том, как установить Watcher, рассказано в документации на Flussonic Watcher.

Установка Flussonic Media Server Anchor Anchor x2

Здесь приводится краткое описание установки, достаточное для быстрого старта Flussonic. Более подробно об установке Flussonic Media Server читайте в разделе про установку.

Чтобы установить Flussonic, выполните в командной строке Linux команду:

curl -sSf https://flussonic.com/raw/install.sh | sh

Затем запустите Flussonic Media Server:

/etc/init.d/flussonic start

Теперь откройте в браузере веб-интерфейс администратора.

Первое открытие веб-интерфейса Flussonic (UI)

Веб-интерфейс Flussonic доступен по адресу http://FLUSSONIC-IP:8080/ (замените FLUSSONIC-IP на адрес вашего сервера).

Логин и пароль по умолчанию: flussonic и letmein!

На стартовой странице http://FLUSSONIC-IP:8080/ Flussonic просит ввести полученный ключ.

На этой же странице необходимо сразу же изменить пароль администратора для управления Flussonic Media Server.

Quickstart

Замечание. Лицензионный ключ хранится в файле /etc/flussonic/license.txt, его можно вписать туда вручную перед запуском Flussonic, тогда его не нужно будет указывать в веб-интерфейсе.

Проверка установки

Проверить правильность установки Flussonic Media Server можно по адресу http://FLUSSONIC-IP:8080/, где FLUSSONIC-IP — адрес того сервера, на который вы поставили ПО. Откроется главная страница веб-интерфейса к Flussonic.

Другой способ проверить правильность установки — выполнить команду:

/etc/init.d/flussonic status

Ответ системы должен быть похож на такой:

# /etc/init.d/flussonic status
Flussonic 19.05 is running with streams:
...

Проигрывание файлов Anchor Anchor x2

Попробуем проиграть файл через Flussonic Media Server. Для этого необходимо:
  • настроить место хранения файлов
  • загрузить файл
  • проиграть файл

Настройка места хранения файлов

Flussonic Media Server не диктует жестко, в каком месте на диске должны находиться ваши файлы. Более того, файлы могут находиться в разных местах на диске, поэтому надо явно указать, откуда брать файлы.

Для этого Flussonic Media Server надо сообщить, какой путь в запросах на проигрывание файла будет соответствовать файлу на диске или в HTTP хранилище. Исходя из этих настроек, Flussonic сам формирует путь к файлу – этот путь используется в запросах на проигрывание файла по разным протоколам. Например, URL для проигрывания по протоколу HLS – http://FLUSSONIC-IP:80/vod/bunny.mp4/index.m3u8.

В веб-интерфейсе можно посмотреть готовые URL адреса для запроса файла. Их можно копировать и использовать для проигрывания файла.

Чтобы указать, откуда брать файлы, в конфигурационном файле /etc/flussonic/flussonic.conf добавьте строки:

file vod {
  path /storage;
}

Теперь Flussonic Media Server будет знать, что при обращении к vod/movies/bunny.mp4 надо будет взять файл /storage/movies/bunny.mp4. Другими словами, всё после совпавшего префикса vod будет отрезано и "подклеено" к указанному пути на диске.

Примените новые настройки, выполнив команду:

/etc/init.d/flussonic reload

Другой способ сконфигурировать доступ к файлам — через веб-интерфейс:

Откройте Media > Files (VOD) > кликните add > введите VOD name (vod) и File directory path (/storage) > кликните create.

Загрузка файла на сервер

Теперь можете закачать файл, который вы уже подготовили или скачали подготовленным, в каталог /storage.

На сервере есть готовый файл /opt/flussonic/priv/bunny.mp4.

Если файла ещё нет, можете взять свободно доступный Big Buck Bunny:

mkdir -p /storage
cd /storage
curl -o bunny.mp4 http://download.blender.org/peach/bigbuckbunny_movies/big_buck_bunny_480p_h264.mov

Проигрывание

Теперь зайдем на http://FLUSSONIC-IP:8080/vod/bunny.mp4/embed.html и посмотрим видео.

Подробнее о файлах см. в разделе про работу с видеофайлами

Прямой эфир Anchor Anchor x2

Flussonic Media Server может получать потоковое видео двумя основными способами: выступая в роли клиента или сервера.

В первом случае Flussonic Media Server сам обращается к источнику для получения с него видео. Во втором – ожидает подключения, чтобы принять видео для публикации.

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

Также Flussonic Media Server может сам генерировать поток fake, который можно использовать, например, для проверки работы сервера.

Откроем конфигурационный файл /etc/flussonic/flussonic.conf и добавим туда описание потока:

stream demo {
  url fake://fake;
}

Здесь:

  • stream — ключевое слово, за ним идёт имя потока: demo. Далее в фигурных скобках описание параметров потока.

  • url — источник видео задаётся с помощью параметра url.

  • fake://fake — специальный адрес, по которому можно получить демонстрационный поток видео — цифровые часы на сером фоне.

После того, как мы изменили конфигурационный файл, необходимо применить настройки. Выполним команду:

/etc/init.d/flussonic reload

Увидеть результат можно открыв страницу: http://FLUSSONIC-IP:8080/demo/embed.html.

Подробнее о прямом эфире см. в разделе о потоковом вещании.

Публикация видео Anchor Anchor x2

Публикацией называется ситуация, когда к Flussonic Media Server подключается другая программа и инициирует передачу ему потокового видео. Чтобы это было возможно, в Flussonic Media Server должно быть сконфигурировано место на сервере, в которое разрешена публикация.

Это можно сделать двумя способами.

Публикация в поток с известным именем

Для того, чтобы разрешить публикацию в отдельный конкретный поток, используется опция url publish://:

stream publishdemo {
  url publish://;
}

Имя потока (publishdemo) заранее известно серверу Flussonic, так как вы сконфигурировали поток с этим именем.

В этом случае публиковать надо в URL:

rtmp://FLUSSONIC-IP:1935/static/publishdemo

а смотреть можно на странице:

http://FLUSSONIC-IP:8080/publishdemo/embed.html

Публикация в поток с неизвестным именем по префиксу

Вам нужно будет настроить место публикации (publishing location, или префикс) на сервере Flussonic, куда вы разрешите публикацию потоков. В одно место публикации может быть опубликовано несколько потоков.

Директива live задаёт префикс (в примере: mylive), разрешая публикацию в любой поток с таким префиксом в адресе:

live mylive {
}

Префикс mylive добавлен в конфигурационном файле по умолчанию после установки. Проверьте его наличие в /etc/flussonic/flussonic.conf. Если такой директивы нет в вашем файле, добавьте ее и примените настройки:

/etc/init.d/flussonic reload

Опубликовать видео можно с помощью утилиты, которая устанавливается в пакете rtmp_push и находится в директории /opt/flussonic/contrib. Для публикации файла по RTMP в префикс mylive используйте синтаксис:

/opt/flussonic/contrib/rtmp_push FILE.mp4 rtmp://FLUSSONIC-IP:1935/mylive/STREAM_NAME

Пример

Для передачи используем протокол RTMP, источником видео будет файл bunny.mp4 (о файле см. выше в разделе про прямой эфир):

/opt/flussonic/contrib/rtmp_push /opt/flussonic/priv/bunny.mp4 rtmp://127.0.0.1/mylive/bunny

Просмотреть публикуемое видео можно на странице

http://FLUSSONIC-IP:8080/mylive/bunny/embed.html

Важно. Если вы указали в конфигурации префикс публикации mylive, то в URL вы должны указывать имя потока, начинающееся с mylive/, например, mylive/bunny. Имя потока, которое идет после префикса, задаёт клиентское приложение, которое публикует видео. В конфигурации Flussonic Media Server имя потока не указывается.

Подробнее о публикации можно узнать в разделе Публикация видео.