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

Содержание

Отправка потока на другие серверы

Копирование потока на другие серверы (push)

Flussonic Media Server может принудительно копировать поток на другие серверы при помощи директивы push. Например, можно копировать поток в CDN:

stream breakingnews {
  url publish://;
  push rtmp://localhost:1935/static/breakingnews1;
  push tshttp://localhost:80/breakingnews2/mpegts;
  push hls://cdn3/breakingnews3 disabled;
}

Директива push поддерживает протоколы RTMP, HTTP MPEG-TS и HLS.

Управление отправкой потоков на другой сервер

Если у потока настроен push, а поток стал offline, то по умолчанию Flussonic будет бесконечно пытаться отправить недоступный поток. При большом количестве потоков это приведет к критическому возрастанию нагрузки на CPU.

Flussonic может следить за состоянием отправки потоков на другие серверы, и собирать статистику по попыткам отправки. Наглядное отображение статусов отправки в UI поможет вам принимать меры — приостанавливать offline-потоки или ограничивать попытки отправить их.

Статус отправки в виде индикатора показан на главной странице в списке Streams и в настройках потока на вкладке Output (Push live video to certain URLs). Причину остановки отправки потока можно посмотреть в логах.

Flussonic push options

Для того, чтобы управлять состоянием отправки потоков через push с целью снижения нагрузки на ваш сервер, есть опции:

  • retry_timeout (Timeout в UI) — как часто Flussonic должен повторять попытки отправить поток. Интервал в секундах, по умолчанию 5 секунд.

    Увеличенный интервал Timeout снизит нагрузку на сервер.

    push rtmp://example.com:1935/live/STREAM_NAME retry_timeout=10;
    
  • retry_limit (Limit в UI) — сколько всего раз подряд Flussonic может повторять попытки отправить поток, по умолчанию 100.

    Например, можно выставить Limit, ограничивающий число попыток отправки. После достижения этого лимита, у потока будет статус 'error'.

    push rtmp://example.com:1935/live/STREAM_NAME retry_timeout=10 retry_limit=5;
    
  • disabled (отключить Enable в UI) — отключить отправку потока.

    Временное отключение, или пауза, позволяет, не удаляя поток из конфигурации, остановить его отправку. Теперь URL и все настройки отключенного потока останутся на Flussonic.

    push rtmp://example.com:1935/live/STREAM_NAME retry_timeout=10 retry_limit=5 disabled;
    

Копирование потока в CDN Akamai

stream breakingnews {
  url publish://;
  segment_count 10;
  segment_duration 10;
  push hls://post.[HOSTNAME].akamaihd.net/[STREAM ID]/[ANY STREAM NAME]/;
}