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

  1. Быстрый старт
  2. How-to
  3. Потоковое вещание
    1. Публикация
    2. Прием мультикаста
    3. Варианты источников
    4. Переключение источников
    5. Плейлисты
    6. Наложение логотипа
    7. Миксер
    8. WebRTC публикация
    9. SDI
    10. Отправка на другие сервера
    11. Распознавание DVB субтитров
  4. Транскодер
    1. Логотип
    2. Hardware
    3. Скриншоты
    4. Мозаика
  5. DRM
    1. Simple CAS
    2. Conax DRM
    3. BuyDRM (KeyOS)
  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, CBR UDP
    11. WebRTC проигрывание
    12. 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. Реклама

VOD — вещание файлов

Контейнеры и кодеки Anchor Anchor x2

Flussonic Media Server умеет раздавать видео из файлов в контейнерах MP4 с видео кодеками H.264, H.265 (HEVC), VP6 и аудио кодеками AAC, MP3, AC3, PCMA, PCMU.

Контейнер Видео Аудио
MP4 (.mp4, .f4v, .mov, .m4v, .mp4a, .3gp, .3g2) H.264, H.265 MP3, AAC (все профили)

Создание VOD-локации Anchor Anchor x2

Для того, чтобы транслировать файлы, например, из каталога /movies, необходимо выбрать произвольное, неиспользуемое имя для префикса и вписать следующую строчку в конфигурационный файл /etc/flussonic/flussonic.conf:

file vod {
  path /movies;
}

Здесь vod — префикс месторасположения файлов, или VOD-локация.

Настроить вещание файлов можно и через веб-интерфейс. Создайте VOD-локацию в списке на странице Media:

Теперь файлы будут отдаваться по префиксу vod по протоколам HLS, DASH, HDS, RTMP, RTSP.

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

Управление файлами через веб-интерфейс Anchor Anchor x2

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

После добавления файлового префикса в конфигурационном файле или через веб-интерфейс надо перейти во вкладку VOD:

Создайте поддиректории:

После того как вы выбрали нужную директорию, залейте в нее файлы:

Кликнув на файл, можно просмотреть его из этого интерфейса.

При наведении мышки на его имя появляется возможность удалить файл.

Как вставить плеер на сайт Anchor Anchor x2

В Flussonic Media Server есть специальная страница — embed.html, которая предназначена для вставки видео на сайт или просмотра видео через браузер. Она доступна по ссылке:

http://HOSTNAME/vod/bunny.mp4/embed.html

Страница автоматически определяет браузер и выбирает поддерживаемый протокол. Для большинства устройств на сегодня — HLS.

Подробнее в статье «Вставка видео на сайт (embed.html»).

Как проиграть файл по разным протоколам Anchor Anchor x2

Для того, чтобы проиграть файл лежащий на диске по пути /movies/elementary/s01e02.mp4 надо указать следующие источники для плееров:

HDS (StrobeMediaPlayback или другие OSMF-плееры)

http://HOSTNAME:8080/vod/elementary/s01e02.mp4/manifest.f4m

HLS (iOS, Android, STB)

http://HOSTNAME:8080/vod/elementary/s01e02.mp4/index.m3u8

RTMP (Jwplayer, Flowplayer, Uppod)

application: rtmp://HOSTNAME/vod, path: elementary/s01e02.mp4

Как проиграть файл из админки Anchor Anchor x2

Необходимо выбрать файл в списке файлов конкретного VOD:

После можно дополнительно выбрать нужный протокол и нажать click to play.

Мультикаталоговая раздача Anchor Anchor x2

Иногда при большом трафике стриминга принимается решение монтировать жесткие диски в системе не в RAID, а в режиме JBOD. То есть каждый жесткий диск виден в системе отдельно и монтируется в отдельный каталог.

Можно указать Flussonic Media Server одну файловую зону на несколько каталогов. Это даст возможность перемещать файл между устройствами без изменения URL-адреса:

file vod {
  path /mount/disk1;
  path /mount/disk2
}

Настройки VOD Anchor Anchor x2

Эти настройки можно указывать внутри директивы file, которая хранит настройки вещания файлов. Мы называем их опции.

file

file vod {
  path /storage;
}
Конфигурации локации для проигрывания файлов.

cache

cache /ssd misses=5 2d 40G; Все запросы к файлам будут кешироваться в папке /ssd сроком не более чем 2 дня и с лимитом в 40G. Кеширование включится, если к одному файлу было более 5 некешированных запросов.

domain

domain host.ru; Указание доменов, на которых можно проигрывать это видео. Не работает для клиентов, которые не передают Referer.

domains

domains host1.ru *.host1.ru; Указание доменов, на которых можно проигрывать это видео. Не работает для клиентов, которые не передают Referer.

path

path /storage;

path s3://key:secret@s3.amazonaws.com/bucket/;
Путь для поиска файлов. Можно указать несколько путей.

read_queue

read_queue 100; Количество одновременных обращений к диску для этого префикса.

download

download; Эта опция разрешает скачивание файла и обращение к нему с Range запросами.

max_readers

max_readers 10; Опция настраивает максимальное количество одновременных дисковых запросов ко всему префиксу.

thumbnails

thumbnails offset=10; Опция включает генерацию постеров к файлам с опциональным указанием секунды видео. Требуется установить пакет flussonic-ffmpeg.

auto_mbr (новое в версии 19.02)

auto_mbr; Включает автоматическое создание мультибитрейтного HLS плейлиста из нескольких файлов с разным битрейтом.

Мультиязыковой стриминг Anchor Anchor x2

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

Для включения субтитров, надо также просто добавить субтитры в формате tx3g в виде дорожек в MP4 файл.

Экспорт трека с субтитрами в виде SRT Anchor Anchor x2

Flussonic Media Server может отдать субтитровый трек в mp4 в виде SRT, необходимом для некоторых flash-плееров:

http://192.168.2.3:8080/vod/video.mp4/track-t1.srt

Адаптивный стриминг (мультибитрейт) Anchor Anchor x2

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

  • Использование нескольких файлов с одинаковым содержимым, но с разными качеством.

    Flussonic автоматически создает один мультибитрейтный плейлист для воспроизведения этих файлов как одного ресурса. Как это настроить

  • Использование одного файла, содержащего дорожки разного качества.

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

Подготовка файла к вещанию (транскодирование) Anchor Anchor x2

Ниже приведен принципиальный пример, как сделать мультибитрейтный файл с помощью ffmpeg:

ffmpeg -i bunny.mp4 \
-map 0:0 -c:v copy \
-map 0:0 -c:v libx264 -b:v 150k  \
-map 0:0 -c:v libx264 -b:v 100k \
-map 0:1 -c:v libx264 -b:v 50k \
-map 0:1 -c:a copy \
-map 0:1 -c:a copy \
-y out.mp4

Более подробно процесс описан в разделе «Подготовка к вещанию».

Рестриминг VOD Anchor Anchor x2

Библиотека VOD имеет большой объём, и её копирование между серверами дорого по ресурсам, но Flussonic может выполнять рестриминг видеофайлов на соседние серверы Flussonic. Это сэкономит не только время, но и место, требуемое для хранения VOD контента. Сэкономленные ресурсы можно использовать для включения кэширования VOD контента, что увеличит производительность VOD-рестримера.

Пример конфигурации VOD-каталога:

Основной сервер VOD

file vod {
  path priv;
  download;
}

Рестример VOD

file vod {
  path http://FLUSSONIC-SOURCE/vod;
  cache /mount/cache 500G misses=2;
}