sync

Директива 'sync' управляет синхронизацией меток времени для сегментов в DASH-потоковом приложении.

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

Описание

В контексте модуля NGINX RTMP директива 'sync' может использоваться для поддержания согласованных меток времени в медиа-сегментах, отдаваемых по протоколу Dynamic Adaptive Streaming over HTTP (DASH). Это обеспечивает синхронное воспроизведение на разных клиентских устройствах по мере доставки сегментов, что особенно важно в сценариях живой трансляции, где задержка и вопросы синхронизации могут влиять на впечатление зрителя.

Директива 'sync' принимает один аргумент, который задаёт критерии синхронизации. Это может включать параметры, определяющие, как метки времени корректируются при генерации фрагментов для обеспечения плавного воспроизведения. Модуль внутренне управляет корректировкой медиа-сегментов в соответствии с заданными критериями 'sync', что помогает выровнять разные дорожки (например, аудио и видео), чтобы они воспроизводились корректно относительно друг друга.

При правильном использовании директива 'sync' значительно улучшает качество трансляции, уменьшая проблемы, связанные с рассинхронизацией, и позволяя бесшовно переходить между сегментами без заметных задержек или ошибок для зрителя. Однако при неправильной настройке или нецелевом использовании она может привести к нежелательным артефактам воспроизведения, таким как джиттер или запаздывание звука в потоках с несколькими дорожками.

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

application myapp {
    live on;
    sync on;
    dash on;
    dash_fragment 4s;
    dash_playlist_length 60s;
}

Убедитесь, что директива 'sync' совместима с другими настройками и директивами потоковой передачи, чтобы избежать конфликтов.

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

Тщательно тестируйте на разных устройствах, чтобы обеспечить стабильное воспроизведение без рассинхронизации.

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