interleave

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

Синтаксисinterleave on | off;
По умолчаниюoff
Контекст
Аргументы1

Описание

Директива interleave в модуле NGINX RTMP предназначена для повышения эффективности RTMP-трансляций, позволяя отправлять перемежающиеся данные аудио и видео в одних и тех же TCP-пакетах. Это может существенно сократить объём пропускной способности, необходимой для трансляции, особенно для клиентов, способных обрабатывать перемежающиеся потоки. Основная цель включения интерливинга — обеспечить более эффективную и плавную трансляцию за счёт минимизации задержек и уменьшения накладных расходов, которые обычно возникают при раздельных аудио- и видео-дорожках.

По умолчанию RTMP разделяет аудио- и видео-дорожки на разные каналы, что в некоторых сетевых условиях может быть менее эффективно. Когда директива interleave активирована, пакеты аудио и видео могут мультиплексироваться в один канал, что позволяет лучше использовать доступную пропускную способность и потенциально улучшать воспроизведение у зрителей. Это особенно полезно для прямых трансляций, где критично минимизировать задержки.

Директива принимает один аргумент, который, как правило, представляет собой логическое значение, указывающее, следует ли включать или отключать интерливинг. Когда значение установлено в on, сервер может отправлять аудио и видео данные вместе, что обеспечивает более эффективную передачу данных. Тем не менее важно убедиться, что клиент (например, медиаплеер) поддерживает перемежающуюся передачу; в противном случае поток может не воспроизводиться должным образом.

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

application live {
    live on;
    interleave on;
}

Убедитесь, что клиент поддерживает interleaved streams; в противном случае он может не получать данные корректно.

Неправильная конфигурация может привести к проблемам с воспроизведением у клиентов, которые плохо обрабатывают interleaved streams.

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