В целом отвечу ещё сам раз есть 10 подписчиков.
Мне удалось настроить nginx так чтоб задержка стрима была около 7 - 9 секунд.
Вот конфиг nginx
worker_processes 1;
rtmp {
server {
live on;
listen 1935;
chunk_size 512;
buflen 1s;
idle_streams off;
application stream {
live on;
record off;
hls on;
hls_path /tmp/hls;
hls_fragment 1s;
hls_playlist_length 6;
hls_type live;
hls_fragment_naming sequential;
hls_nested on;
dash on;
dash_path /tmp/dash;
dash_fragment 1s;
dash_playlist_length 6;
dash_nested on;
}
}
}
Но этого мало. Если такой стрим скормить плееру
https://videojs.github.io/videojs-contrib-hls/ то задержка будет 15 - 18 секунд примерно.
Но если внедриться в код плеера и перед тем как он в свои недра передаст содержимое index.m3u8 файла этот файл обрезать чтоб вместо 6 последних элементов в плей листе оставить 2 самых новых файла видео то задержка сократится до 7 - 9 секунд.