Минимизация задержки при вещании HLS и синхронизация клиентов

1,302 views
Skip to first unread message

Denis Kvist

unread,
Apr 12, 2013, 12:11:51 PM4/12/13
to nginx-...@googlegroups.com
Добрый день!

Роман, спасибо вам за замечательный продукт!

Если позволите два вопроса:

1. Какова минимально возможная задерка при HLS вещании?

При стабильном вещании я смог добиться 7 секундной разницы от реальной картинки. Можно её как-то уменьшить?

Секция rtmp:

rtmp {
    server {
        listen 1935;
        application cam {
            live on;

            hls on;
            hls_path /tmp/hls;
            hls_fragment 5s;
            hls_sync 300ms;
            hls_continuous on;
            hls_playlist_length 5s;

            allow publish 127.0.0.1;
            deny publish all;

            allow play all;

            exec_static ffmpeg -r 17 -f mjpeg -i http://192.168.1.11/nphMotionJpeg?Resolution=640x480&Quality=Motion -c:v libx264 -preset UltraFast -g 10 -tune zerolatency -analyzeduration 0 -keyint_min 1 -an -f flv rtmp://localhost/cam/live;
        }
    }
}

Секция location:

location /hls {
    types {
        application/vnd.apple.mpegurl m3u8;
    }
    alias /tmp/hls;
}

Если уменьшать значение hls_fragment и hls_playlist_length, то у клиентов видео начинает показывается со скачками.

/tmp/hls лежит в tmpfs.

2. Можно как-нибудь настроить, чтобы у клиентов вещание было синхронизированным?

Сейчас получается у кого-то 7 секунд, а у кого-то порой до 15 доходит.

Заранее спасибо ;)

Roman Arutyunyan

unread,
Apr 13, 2013, 2:32:31 AM4/13/13
to Denis Kvist, nginx-...@googlegroups.com
HLS такая штука, что задержка будет. Фрагмент должен быть польностью записан перед тем, как он будет раздаваться. Т.е. как минимум на длину фрагмента (5с) задержка будет. Кроме того, клиент буферизует поток - выкачивает нескольно фрагментов, так что 7 секунд - это еще не так плохо.


2013/4/12 Denis Kvist <denis...@gmail.com>

--
Вы получили это сообщение, поскольку подписаны на группу nginx-rtmp-ru.
 
Чтобы отказаться от подписки на эту группу и перестать получать из нее сообщения, отправьте электронное письмо на адрес nginx-rtmp-r...@googlegroups.com.
Подробнее о функциях можно узнать на странице https://groups.google.com/groups/opt_out.
 
 



--
--
Roman Arutyunyan

Denis Kvist

unread,
Apr 13, 2013, 2:46:36 AM4/13/13
to nginx-...@googlegroups.com, Denis Kvist


On Saturday, April 13, 2013 10:32:31 AM UTC+4, Roman Arutyunyan wrote:
HLS такая штука, что задержка будет. Фрагмент должен быть польностью записан перед тем, как он будет раздаваться. Т.е. как минимум на длину фрагмента (5с) задержка будет. Кроме того, клиент буферизует поток - выкачивает нескольно фрагментов, так что 7 секунд - это еще не так плохо.

-- 
--
Roman Arutyunyan

Спасибо за объяснение.

А что на счет синхронизированного просмотра на клиентах? Я так понимаю это зависит от того кто когда подключился?

Roman Arutyunyan

unread,
Apr 13, 2013, 2:58:49 AM4/13/13
to Denis Kvist, nginx-...@googlegroups.com
Это скорее зависит от того, кто сколько буферизует. Добиться идеальной синхронизации с HLS будет тяжело. HLS, в общем, делался для другого - чтобы работать в условиях нестабильного мобильного соединения. Синхронизацией как раз и пожертвовали.


2013/4/13 Denis Kvist <denis...@gmail.com>

--
Вы получили это сообщение, поскольку подписаны на группу nginx-rtmp-ru.
 
Чтобы отказаться от подписки на эту группу и перестать получать из нее сообщения, отправьте электронное письмо на адрес nginx-rtmp-r...@googlegroups.com.
Подробнее о функциях можно узнать на странице https://groups.google.com/groups/opt_out.
 
 



--
--
Roman Arutyunyan

Denis Kvist

unread,
Apr 14, 2013, 1:29:07 PM4/14/13
to nginx-...@googlegroups.com, Denis Kvist
Большое спасибо! Всего вам доброго!

34go...@gmail.com

unread,
Aug 2, 2017, 12:11:13 PM8/2/17
to nginx-rtmp-ru, denis...@gmail.com
Добрый день. Я понимаю что теме не один год, но есть у нас проблема. У нас каждые 10 секунд происходит притормаживание, я так понимаю при смене сегментов, но не могу разобраться из-за чего это происходит. Помогите пожалуйста, в какую сторону копать?
Reply all
Reply to author
Forward
0 new messages