Datový tok, rozlišení a snímková frekvence
Které z těch nastavení soubor zmenší a které ho jen zhorší?
Většinu vysvětlí jediná rovnice
Velikost souboru je s dobrou přesností datový tok krát délka. Datový tok je počet bitů za sekundu, které smí kodér utratit; délka je počet sekund, po které je utrácí. Všechno ostatní — rozlišení, snímková frekvence, pohyb, kodek — mění, jak dobře obraz při daném datovém toku vypadá, ne jak velký je soubor.
Konkrétní příklad to udělá hmatatelným. Klip zakódovaný při 5 megabitech za sekundu po dobu šedesáti sekund obsahuje 300 megabitů videodat, tedy 37,5 megabajtu, plus zvukovou stopu a režii kontejneru. To je aritmetika, ne měření: stejných šedesát sekund při 2 Mbit/s je 15 MB, ať je v záběru cokoli.
Rozlišení a snímková frekvence jsou nárok, ne velikost
Zvýšení rozlišení nebo snímkové frekvence soubor přímo nezvětší. Zvýší to, kolik bitů kodér potřebuje, aby výsledek vypadal přijatelně. Klip ve 4K při 2 Mbit/s je stejně velký jako klip v 720p při 2 Mbit/s; ta verze ve 4K jen vypadá mnohem hůř, protože se stejný rozpočet rozprostírá po devětkrát větším počtu pixelů.
Právě proto je snížení rozlišení tak účinný způsob, jak video zmenšit. Změnou rozlišení soubor nezmenšujete — jenom díky ní vypadá nižší datový tok přijatelně, a ten nižší datový tok pak zvolíte.
| Rozlišení | Při 30 fps | Při 60 fps |
|---|---|---|
| 3840 × 2160 | 249 milionů px/s | 498 milionů px/s |
| 1920 × 1080 | 62 milionů px/s | 124 milionů px/s |
| 1280 × 720 | 28 milionů px/s | 55 milionů px/s |
| 854 × 480 | 12 milionů px/s | 25 milionů px/s |
Ta čísla představují zátěž kodéru a škálují se očekávaným způsobem. Poloviční snímková frekvence znamená poloviční zátěž; přechod z 1080p na 720p ji sníží zhruba na třetinu. Snímková frekvence má ale ještě druhý efekt: mění, jak působí pohyb. Snížit ji na polovinu u statické mluvící hlavy je skoro neviditelné; snížit ji na polovinu u rychlého švenku je vidět velmi dobře.
Co dělá index kvality
Většina moderních kodérů dává přednost cíli v kvalitě před cílem v datovém toku. Zadáte index kvality, kodér snímek po snímku utratí tolik bitů, kolik ta kvalita potřebuje, a výsledný datový tok se mění podle obsahu. Obvykle je to lepší nastavení, protože dává bity tam, kde je obraz potřebuje, místo aby jimi plýtval na statický snímek a hladověl ten rychlý.
Důsledek je ten, že vám index kvality neřekne velikost souboru dopředu. Dva klipy zakódované na stejném indexu se můžou lišit několikanásobně a bez zakódování to nezjistíte. Pokud musíte trefit limit velikosti, buď zakódujte a změřte, nebo použijte cíl v datovém toku a smiřte se s tím, že se místo toho bude měnit kvalita.
Pohyb je ta skrytá proměnná
Video kodeky pracují tak, že popisují každý snímek jako rozdíl oproti předchozím snímkům. Když se mění málo — pevně postavená kamera, prezentace, obličej proti holé stěně — jsou rozdíly nepatrné a kodér potřebuje velmi málo bitů. Když se mění všechno — švenk z ruky, konfety, déšť, voda, listí ve větru, střih každou sekundu — nedá se předpovědět skoro nic a datový tok stoupá.
- Zrno a šum senzoru se chovají jako pohyb: mění každý pixel v každém snímku a jejich zakódování je drahé.
- Roztřesený klip z ruky stojí mnohem víc než tentýž objekt natočený ze stativu.
- Záznamy obrazovky s převážně statickým rozhraním jsou extrémně levné, dokud se něco neposune.
- Prolínačky a stmívačky jsou dražší než tvrdé střihy, protože se každý pixel po sekundu i déle mírně mění.
Zvuk je malý, dokud není
U většiny klipů je zvuk zaokrouhlovací chyba: stereo stopa při 128 kbit/s přidá asi megabajt za minutu. U hodně zkomprimovaného, krátkého klipu v nízkém rozlišení se ale může stát znatelnou částí celku. Pokud tlačíte na limit velikosti, stojí za zvážení snížit datový tok zvuku nebo přejít na mono dřív, než ještě víc poškodíte obraz. Pokud na zvuku nezáleží vůbec, odstranění celé stopy je přebalení a na kvalitě nestojí nic.
Recept, který obvykle funguje
- Rozhodněte, na jaké největší obrazovce se klip skutečně bude sledovat, a rozlišení omezte na ni.
- Ponechte původní snímkovou frekvenci, pokud není pohyb klidný; snížení na polovinu je viditelná změna, ne úspora zadarmo.
- Kódujte s indexem kvality místo datového toku a pak výsledek změřte.
- Pokud je výsledek moc velký, snižte rozlišení dřív, než budete dál snižovat kvalitu.
- Klip ostříhejte. Délka je přímý násobitel celé rovnice a třicet zbytečných sekund stojí víc než jakékoli nastavení.
Jak zmenšit video pro e-mail
Limity e-mailu platí pro hotovou přílohu, takže první věc ke kontrole je délka. Ostříhejte všechno zbytečné a pak snižte rozlišení na 720p nebo 480p, když se klip bude sledovat ve zprávě, a ne na velké obrazovce. Nižší nárok na pixely dovolí kodéru použít mnohem menší datový tok, aniž by zničil detaily.
Pokud příloha limit poskytovatele pořád nesplní, zkraťte ji nebo ji sdílejte přes schválenou službu pro přenos souborů. Opakované kódování téhož dlouhého klipu ve stále nižší kvalitě nakonec vyrobí ošklivě vypadající soubor, který může být pořád příliš velký, protože délka datový tok pořád násobí.
Co vám tohle nepoví
V tomhle průvodci nejsou žádné doporučené datové toky, a to záměrně. Doporučené číslo závisí na kodeku, na implementaci kodéru, na obsahu a na podmínkách sledování a jakýkoli údaj uvedený bez těchhle čtyř věcí je dekorace. Zakódujte třicetisekundovou ukázku vlastního klipu ve dvou nastaveních a obě si prohlédněte — to srovnání má větší cenu než jakákoli tabulka, kterou někdo naměřil na cizím materiálu.
Ještě jeden limit specifický pro kódování v prohlížeči: tempo určuje vaše zařízení. Kódování je opravdu náročná práce, telefony při zahřátí snižují výkon a dlouhý klip ve vysokém rozlišení může být pro konkrétní zařízení nad síly. To je hranice hardwaru, ne nastavení, které by šlo změnit.