ts_dash

Директива `ts_dash` позволяет генерировать живые MPEG-DASH-потоки в указанном location.

Синтаксисts_dash path=PATH [segment=MIN[:MAX]] [segments=NUMBER] [max_size=SIZE] [noclean];
По умолчаниюnone
Контекстlocation
Аргументы1+

Описание

Директива ts_dash является частью NGINX MPEG-TS Live Module и используется для создания и управления живыми MPEG-DASH-потоками. Эта директива необходима для обработки данных MPEG-TS и их предоставления через MPEG-DASH, широко используемый формат для адаптивной потоковой передачи. Когда директива определена внутри блока location в конфигурации NGINX, она позволяет серверу принимать MPEG-TS потоки от источников, таких как FFmpeg, и затем отдавать их клиентам в виде контента MPEG-DASH.

Директива принимает несколько параметров, включая path, который указывает каталог, в котором будут генерироваться DASH-манифест и файлы сегментов. Параметр segment задаёт минимальную и максимальную длительность каждого видео-сегмента; при отсутствии значений используются предустановленные времена, что обеспечивает плавное воспроизведение. Дополнительно параметр segments ограничивает количество сегментов, сохраняемых в плейлисте, тем самым контролируя размер плейлиста воспроизведения. Наконец, параметр max_size позволяет задать максимальный размер каждого сегмента, гарантируя, что ни один сегмент не превысит указанного размера во время живой трансляции.

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

location /live {
    ts;
    ts_dash path=/var/dash segment=10s;
}

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

Неправильная настройка длительностей сегментов может привести к проблемам воспроизведения у клиентов.

Использование несовместимых значений для длительностей сегментов min/max может привести к непредсказуемой длине сегментов.

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