HLS vs. DASH: Jak streamovací protokoly skutečně fungují

Před streamováním znamenalo sledování videa online nejprve stáhnout celý soubor a potom jej přehrát. Video o velikosti 500 MB muselo dorazit celé, i když jste chtěli jen prvních 30 sekund. Streamovací protokoly tento problém řeší: rozdělí video na malé části a přehrávají je, zatímco se zbytek stále stahuje.

Segmentace: Stavební kámen streamování

Nejběžnější protokol HLS (HTTP Live Streaming, vytvořený společností Apple) dělí video na mnoho malých souborů, segmentů. Obvykle trvají 2–10 sekund a používají MPEG-TS nebo fMP4. Server také vytváří seznam .m3u8 s pořadím a adresami segmentů. Přehrávač nejprve načte seznam a pak stahuje segmenty podle potřeby — jeden po druhém, téměř bez čekání.

Online přehrávač videa

Adaptivní datový tok: proč se přehrávání nezasekává při slabém připojení

HLS i DASH (Dynamic Adaptive Streaming over HTTP, podporovaný Microsoftem a dalšími) připravují sady segmentů stejného videa v různých rozlišeních a datových tocích, například 1080p, 720p a 480p, uvedené v hlavním seznamu. Přehrávač průběžně sleduje rychlost stahování a zaplnění vyrovnávací paměti. Při dobrém připojení zvolí vyšší datový tok, při zhoršení nižší, aby přehrávání pokračovalo. To je streamování s adaptivním datovým tokem (ABR) a důvod, proč video při jízdě metrem samo ztrácí ostrost.

Proč stahování odkazu m3u8 tak často selhává

Přímým stažením adresy .m3u8 získáte několik KB textu — seznam, nikoli video. Pro uložení videa musí nástroj seznam analyzovat, stáhnout všechny segmenty a spojit je ve správném pořadí. Mnohé nástroje proto HLS nepodporují nebo vyžadují zvláštní krok sloučení segmentů. TakeVid má detekci segmentů a automatické slučování zabudované, takže stáhnete úplný soubor připravený k přehrání.

Stahování M3U8

  • HLS: vytvořený společností Apple, používá seznamy .m3u8, má nativní podporu v iOS/Safari a zvládá živé vysílání i obsah na vyžádání
  • DASH: otevřený standard s manifesty .mpd, který ve velkém měřítku používají YouTube, Netflix a další
  • Oba používají běžné HTTP, dobře fungují s CDN a dominují současnému streamování

Stahování DASH

Zpět na všechny články