hls_playlist_length

Задает максимальную длину плейлиста HLS для потоковых приложений в модуле RTMP.

Синтаксисhls_playlist_length milliseconds;
По умолчаниюnone
Контекст
Аргументы1

Описание

Директива hls_playlist_length в модуле NGINX RTMP задаёт максимальную продолжительность HLS-плейлиста, который генерируется для live-потоков. Эта директива особенно актуальна в средах, где используется live-вещание через HLS (HTTP Live Streaming). Она позволяет тонко настроить, сколько контента клиент может получить из плейлиста. При трансляции live-потока генерируется плейлист с заданной длиной, определяющей, сколько фрагментов потока включено для просмотра.

Аргумент для hls_playlist_length задаёт длину в миллисекундах. Явно установив это значение, сервер определяет, сколько сегментов live-потока включить в файл плейлиста .m3u8, который он отдаёт клиентам. Более короткая длина плейлиста может привести к более отзывчивому опыту при live-вещании, но также может привести к потере ранних частей потока, которые удаляются по мере добавления новых сегментов. Наоборот, более длинный плейлист может сохранить больше истории потока, что полезно для зрителей, подключающихся позже в трансляции.

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

Пример конфига

rtmp {
    server {
        listen 1935;

        application live {
            live on;
            hls on;
            hls_playlist_length 60000;  # 60 seconds
            ...
        }
    }
}

Убедитесь, что длина плейлиста подходит для вашей аудитории стриминга; слишком короткая может привести к потере истории потока, а слишком длинная — к задержке обновления кэша на клиентских устройствах.

Не путайте эту директиву с другими связанными директивами, такими как dash_playlist_length, так как они могут требовать собственных настроек.

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

← Ко всем директивам