Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Code Block
languagebash
themeRDark
curl -s http://localhost:8082/test/test.m3u8
sleep 1
curl -s http://localhost:8082/test-240p/test-240p.m3u8
sleep 1
curl -s http://localhost:8082/test-480p/test-480p.m3u8
sleep 1
curl -s http://localhost:8082/test-720p/test-720p.m3u8
sleep 1

Хранение сегментов HLS

...

Использование диска

По умолчанию, HLS сегменты записываются на диск сервера, в каталог /usr/local/FlashphonerWebCallServer/hls. На диске хранится количество сегментов, соответствующее заданному размеру плейлиста, по умолчанию 10

Code Block
themeRDark
hls_list_size=10

Чем меньше количество  сегментов в плейлисте, тем меньше задержка при воспроизведении. Однако при коротком плейлисте подписчики с недостаточной пропускной способностью каналов могут запрашивать сегменты, которых уже нет в плейлисте и на диске. В связи с этим, в сборке 5.2.581 добавлена возможность хранить некоторое число сегментов на диске после их ухода из плейлиста. Эта возможность включается настройкой

Code Block
themeRDark
hls_hold_segments_before_delete=true

По умолчанию, будет храниться 5 последних сегментов

Code Block
themeRDark
hls_hold_segments_size=5

Например, если плейлист содержит 3 сегмента

Code Block
themeRDark
#EXTM3U
#EXT-X-VERSION:8
#EXT-X-TARGETDURATION:11
#EXT-X-MEDIA-SEQUENCE:15
#EXT-X-DISCONTINUITY-SEQUENCE:1
#EXTINF:3.415,
test_017.ts
#EXTINF:10.417,
test_018.ts
#EXTINF:9.084,
test_019.ts

на диске будут храниться 3 текущих сегмента из плейлиста и 5 предшествующих

Code Block
themeRDark
test_012.ts
test_013.ts
test_014.ts
test_015.ts
test_016.ts
test_017.ts
test_018.ts
test_019.ts

Использование оперативной памяти

При больших нагрузках на сервер, например, если он выделен для раздачи потоков по HLS, чтение сегментов с диска для отправки подписчикам может давать задержки. В этом случае необходимо включить хранение HLS сегментов в памяти

...