HTTP Live Streaming: Porovnání verzí

Z Wikipedie, otevřené encyklopedie
Smazaný obsah Přidaný obsah
m <source> -> <syntaxhighlight> (phab:T237267)
m Úprava rozcestníku za pomoci robota: AES - změna odkazu/ů na Advanced Encryption Standard
Řádek 41: Řádek 41:
V prvních verzích bylo možné mít videa v různých kvalitách a na různých server s cílem co největší dostupnosti. Od verze 4 je možné mít u videa různé jazykové mutace zvukové stopy či různé verze obrazu, což je užitečné v případě, že je video natáčeno z více než jedné kamery najednou.
V prvních verzích bylo možné mít videa v různých kvalitách a na různých server s cílem co největší dostupnosti. Od verze 4 je možné mít u videa různé jazykové mutace zvukové stopy či různé verze obrazu, což je užitečné v případě, že je video natáčeno z více než jedné kamery najednou.


Videa je také možné v přenosu zašifrovat a to pomocí [[AES]]-128 klíčů. Video pak působí jako náhodný shluk dat.
Videa je také možné v přenosu zašifrovat a to pomocí [[Advanced Encryption Standard|AES]]-128 klíčů. Video pak působí jako náhodný shluk dat.


== Klienti ==
== Klienti ==

Verze z 23. 3. 2021, 14:53

HTTP Live Streaming (známé také jako HLS) protokol pro streamování ohraničených či neohraničených multimediálních dat. Protokol byl představen společností Apple jako součást balíčku QuickTime, v době vydání verze mobilního operačního systému iOS 3 v létě 2009.

Jeho hlavní výhodou je možnost přizpůsobení datového toku aktuální propustnosti sítě. Všechny dotazy v rámci protokolu probíhají nad HTTP protokolem, proto je jej možné nasadit na již existující infrastruktury a bez problému jej nechat proudit přes firewally či proxy servery. Možné je také nasazení do sítí CDN.

Společnost Apple tento protokol dokumentuje a v roce 2009 z této dokumentace vznikl Internet-Draft. Od té doby je protokol stále ve fázi draft, protože jej Apple stále upravuje.

Princip

Základní princip HTTP Live Streaming protokolu je vytvoření několika různých kvalit požadovaného videa, které se na klientovi adaptivně načítají podle stavu sítě.

Zakódování audia a videa

Videa se zakódují do MPEG-TS, který je určen pro přenos multimediálních dat. Každé takové video se následně rozdělí na malé segmenty, které umožňují například posouvání ve videu bez nutnosti čekání na stažení celého videa. Ve 4 verzi protokolu byla přidána možnost videa nechat v jednom souboru a namísto segmentování, což umožňuje rychlejším sítím menší zátěž na komunikaci. [1]

Proces zpracování videa pro HTTP Live Streaming

Apple dává k dispozici sadu nástrojů na zpracování videí, které však nejsou dostupné pro ostatní platformy. Na internetu lze ale dohledat různé open-source varianty některých nástrojů, třeba pro segmentaci. [2]

Na požádání vs. živě

Videa je možné zakódovat buď celá v době když jsou již hotová, nebo je možné je zakódovávat přímo takzvaně na živo. Rozdíl je pak v tom, že seznam segmentů neobsahuje ukončení a neustále roste. Je tak možné vytvářet videozáznamy z živých přenosů, které jsou rovnou k dispozici jako videa na vyžádání.

Playlisty

Každé video při segmentování vytváří seznam souborů, aby jej klient později mohl najít.

Ukázka smyslu playlistu pro HTTP Live Streming

Formát tohoto seznamu je odvozen od formátu M3U, s tím rozdílem, že je kódován v UTF8, což mu do názvu přidává koncovku M3U8. Každé video je pak opatřeno ještě jedním takzvaným variantním playlistem, který obsahuje odkazy na jednotlivé varianty videa.

Příklad playlistu pro jedno konkrétní video:

#EXTM3U
#EXT-X-TARGETDURATION:10
#EXT-X-MEDIA-SEQUENCE:1
#EXTINF:10,
http://media.example.com/segment0.ts
#EXTINF:10,
http://media.example.com/segment1.ts
#EXTINF:10,
http://media.example.com/segment2.ts
#EXT-X-ENDLIST

V prvních verzích bylo možné mít videa v různých kvalitách a na různých server s cílem co největší dostupnosti. Od verze 4 je možné mít u videa různé jazykové mutace zvukové stopy či různé verze obrazu, což je užitečné v případě, že je video natáčeno z více než jedné kamery najednou.

Videa je také možné v přenosu zašifrovat a to pomocí AES-128 klíčů. Video pak působí jako náhodný shluk dat.

Klienti

Mobilní

Díky své adaptibilitě stavu sítě nachází protokol svoje uplatnění hlavně v mobilní sféře. Apple jej s uvedením iOS 3 integroval do mobilních zařízení iPhone a iPod Touch, o něco později pak přidal podporu i tabletu iPad. Všechny nativní aplikace pro iOS obsahující videa přesahující délku 10 minut či velikosti 5 MB musí využívat tento protokol, jinak může být aplikace zamítnuta v procesu přidání do App Store.[3] Na počátku roku 2011 přidala společnost Google podporu tohoto protokolu do platformy Android a to od verze 3 a výše.[4]

Desktopové

Z aplikaci pro osobní počítače podporu protokolu obsahuje již zmíněný QuickTime. Dále je videa pomocí tohoto protokolu schopen přehrát multimediální přehrávač VLC či Roku Digital Video Player.

HTML

Apple tento protokol také používá v aplikacích HTML 5, kde jej demonstrativně využívá ke sledování vlastních akcí.[5] V současné době je tedy v čistém HTML videu podporován pouze prohlížeč Safari. Pro ostatní prohlížeče existují různé varianty přehrávačů vytvořené v technologii Flash.

Reference