Adaptívny rebrík dátového toku je sada verzií videa, z ktorých môže streamovací prehrávač vyberať. Každý stupeň má rozlíšenie a dátový tok; prehrávač začne na jednom z nich, sleduje, ako rýchlo sa sťahujú segmenty, a podľa zmien pripojenia sa posúva hore alebo dole. Keď je rebrík nastavený dobre, plynulé prehrávanie z jedného nahratia dostane divák vo vlaku aj divák pri 4K televízore. Keď je nastavený zle, buď plytváte diskom a prenosom na stupne, ktoré nikto nepoužíva, alebo pomalým divákom zostane len točiace sa koliesko.
Tento článok vysvetľuje, ako rebrík funguje, a potom ukazuje skutočný rebrík, ktorý vytvára konvertor UFOLOAD, s dátovými tokmi prevzatými priamo z konvertora, a koľko miesta na disku zaberie každý stupeň za hodinu videa.
Ako prehrávač vyberá stupeň
Hlavný playlist HLS streamu uvádza každý stupeň s tromi podstatnými atribútmi: BANDWIDTH, RESOLUTION a CODECS. Prehrávač meria rýchlosť sťahovania za posledných niekoľko segmentov a vyberie najvyšší stupeň, ktorého BANDWIDTH sa s rezervou zmestí pod túto rýchlosť. Oplatí sa poznať dva detaily.
Po prvé, BANDWIDTH je špičková hodnota, nie priemer. Ak ju playlist podhodnotí, prehrávač zvolí stupeň, ktorý pripojenie neutiahne, a prehrávanie sa zasekne; preto náš konvertor zapisuje špičku a nikdy nulu. Po druhé, prepínanie prebieha na hraniciach segmentov. Naše segmenty majú štyri sekundy a enkodér umiestni na začiatok každého z nich kľúčový snímok, takže prehrávač môže medzi verziami preskakovať bez chyby v obraze. Kratší segment reaguje rýchlejšie, ale pridáva požiadavky; štyri sekundy sú bežný kompromis.
Ak chcete takýto stream umiestniť na vlastnú stránku, článok ako vložiť HLS video ukazuje možnosti s iframe aj s hls.js.
Rebrík UFOLOAD
Konvertor má štyri stupne: 2160p (4K), 1080p, 720p a 360p. Stupeň sa vytvorí, len ak je váš zdroj aspoň taký vysoký, pretože zväčšovanie nepridá žiadne detaily a len znásobí veľkosť a čas kódovania. Zo zdroja 720p vznikne 720p a 360p; zo zdroja menšieho ako 360p vznikne jedna verzia v jeho vlastnej veľkosti, aby mal každý súbor aspoň jednu prehrateľnú verziu. Šírky sa riadia pomerom strán zdroja a zaokrúhľujú sa na párne číslo, pretože H.264 s chrominanciou 4:2:0 nedokáže kódovať nepárne rozmery. Šírky nižšie predpokladajú pomer 16:9.
| Stupeň | Snímka pri 16:9 | Strop videa | Cieľová kvalita (CRF) | Zvuk | Špičková veľkosť za hodinu |
|---|---|---|---|---|---|
| 2160p | 3840x2160 | 16 Mbit/s | 20 | 192 kbit/s | 6,79 GiB |
| 1080p | 1920x1080 | 5 Mbit/s | 22 | 160 kbit/s | 2,16 GiB |
| 720p | 1280x720 | 2,8 Mbit/s | 23 | 128 kbit/s | 1,23 GiB |
| 360p | 640x360 | 0,8 Mbit/s | 26 | 64 kbit/s | 0,36 GiB |
Predvolený preset je medium a dátové toky stupňov boli zvolené pre bežný obsah v H.264. Stupeň 1080p má strop 5 Mbit/s: to stačí na čistý obraz a nad touto hranicou súbor rastie bez viditeľného prínosu. 4K má štyrikrát viac pixelov ako 1080p, takže jeho strop je 16 Mbit/s, viac ako trojnásobok, aby sa v zložitých scénach neobjavovali bloky.
Konvertor nevytvára 480p ani 240p. Menej stupňov znamená menej miesta na disku a kratšie kódovanie a medzi 360p a 720p má prehrávač stále rozumný krok pre pomalé mobilné pripojenia. Ktoré stupne naozaj dostanete, závisí aj od plánu: 360p a 720p sú základ a najvyšší stupeň obmedzuje strop plánu uvedený na stránke Cenník. V pláne Free má video jedinú kvalitu.
CRF a strop dátového toku: prečo sú veľkosti súborov horné hranice
Enkodér nemieri na pevný dátový tok. Mieri na konštantnú kvalitu vyjadrenú hodnotou CRF (constant rate factor): nižšie číslo znamená lepší obraz a väčší súbor. Statickému záberu hovoriacej osoby stačí na dosiahnutie cieľa veľmi málo dát, akčná scéna ich potrebuje veľa. Aby žiadna jednotlivá scéna nezahltila pomalé pripojenie, má každý stupeň aj maxrate rovný dátovému toku v tabuľke a vyrovnávaciu pamäť s dvojnásobnou veľkosťou. Výsledkom je stream, ktorý je zvyčajne pod stropom a nikdy nad ním dlhšie.
Preto sú veľkosti v tomto článku špičkové. Prednáška alebo záznam obrazovky obvykle skončí výrazne pod nimi. Obsah s prevahou rozhovoru môže mať len zlomok stropu, šport s rýchlym pohybom alebo zašumený záznam sa k nemu priblíži. Pri plánovaní knižnice použite špičku na bezpečný rozpočet a vlastný nameraný priemer na realistický.
Profil kvality v Štúdiu kódovania túto rovnováhu posúva. Rýchly profil používa rýchlejší preset x264 a video je hotové skôr za cenu o niečo väčších súborov; profil kvality používa pomalší preset a nižšie CRF pre čistejší obraz a je dostupný v platených plánoch. Predvolený vyvážený profil leží medzi nimi.
Koľko miesta na disku zaberie rebrík
Hodina videa na špičke jednotlivých stupňov váži 6,79 GiB pri 2160p, 2,16 GiB pri 1080p, 1,23 GiB pri 720p a 0,36 GiB pri 360p. Celý rebrík je súčtom stupňov, ktoré váš zdroj umožní, a každý stupeň je na disku samostatný súbor:
| Rozlíšenie zdroja | Vytvorené stupne | Špičková veľkosť za hodinu videa |
|---|---|---|
| 4K (2160p) | 2160p, 1080p, 720p, 360p | 10,54 GiB |
| Full HD (1080p) | 1080p, 720p, 360p | 3,75 GiB |
| HD (720p) | 720p, 360p | 1,59 GiB |
| Pod 360p | Jedna verzia vo veľkosti zdroja | Závisí od zdroja |
Konkrétny príklad: 100 hodín záznamu vo Full HD vytvorí najviac približne 375 GiB verzií. Ak najvyšší stupeň obmedzíte na 720p, tých istých sto hodín potrebuje najviac asi 159 GiB, teda o viac ako polovicu menej. Účtu dominuje najvyšší stupeň: vypustenie 4K z knižnice so 4K zdrojmi odstráni zhruba dve tretiny jej objemu. Či hosting započítava tieto verzie do vašej kvóty úložiska, je samostatná otázka, ktorej sa venuje článok koľko stojí videohosting; v UFOLOAD sa kvóta počíta podľa veľkosti súborov, ktoré nahráte.
Ladenie rebríka v Štúdiu kódovania
Predvolené nastavenia nemusíte prijať. Štúdio kódovania v prehľade má tri nastavenia, ktoré menia počet uložených stupňov:
- Maximálne rozlíšenie. Videá sa nikdy nekódujú nad túto hodnotu. Rozlíšenia nad stropom vášho plánu sú zamknuté.
- Najnižšia kvalita. Ako spodný stupeň zvoľte 360p, 720p alebo 1080p. Jej zvýšenie odstráni malé stupne, čo ušetrí disk aj čas kódovania, ale diváci so slabým pripojením prídu o záložnú možnosť, preto si 360p ponechajte, ak sú medzi vaším publikom mobilní používatelia.
- Rýchle predvoľby. Maximálna kvalita, vyvážené, úspora úložiska (do 720p a len potrebné kvality) a okamžité zverejnenie pre oprávnené účty.
Zmeny platia pre nové nahratia. Ak ich chcete použiť aj na videá, ktoré už máte v knižnici, použite akciu opätovného kódovania, ktorá spracúva najnovšie videá v dávkach a medzi spusteniami má ochrannú prestávku; videá zostávajú počas opätovného kódovania prehrateľné.
Ak si staviate vlastný rebrík
- Kroky medzi susednými stupňami držte približne na 1,5- až 2-násobku dátového toku. Menšie kroky pridávajú úložisko bez viditeľného prínosu, väčšie robia skok v kvalite zjavným.
- Začnite dostatočne nízko pre svojich najpomalších realistických divákov. Stupeň, ktorý nikto neutiahne, je zbytočný; chýbajúci spodný stupeň znamená točiace sa koliesko.
- Zarovnajte kľúčové snímky s dĺžkou segmentu a v playliste uvádzajte špičkový dátový tok.
- Nezväčšujte. Každý stupeň obmedzte výškou zdroja.
- Po mesiaci zmerajte, ktoré stupne vaši diváci naozaj používajú, a tie, ktoré sa nikdy neprehrajú, vypustite.
Celý proces od formátov nahrávania po doručenie nájdete na stránke Funkcie; limity a ceny plánov v cenníku. Ak ešte porovnávate možnosti, kontrolný zoznam pre výber videohostingu obsahuje otázky ku kódovaniu a kvalite, ktoré sa oplatí položiť každému poskytovateľovi.
Nahrajte video a za pár minút máte HLS prehrávač aj kľúč API. Limity plánov nájdete na stránke Cenník.