Výroba videa

krok za krokem

Datum vzniku tohoto textu: Sun Nov 04 12:00:00 2001, datum poslední úpravy: Sat Mar 09 16:30:00 2002

V tomto příspěvku se budu zabývat postupem, jak vytvořit finální AVI soubor z nagrabovaného materiálu. Postup při samotném grabování zde popsán není, neb se mezi různými grabovacími kartami může odlišovat. Také zde (zatím) není popsána vhodná konfigurace DivX 4.x ani SBC (Nandub).

Protože jsem v době tvoření tohoto příspěvku nagraboval z TV vysílání ČT1 film Na hromnice o den více, budou se všechny obrázky, ukázky a faktické údaje týkat tohoto jednoho konkrétního filmu, takže si budete moci snadno odvodit, jak by to asi vypadalo u filmů jiných.

Cílem mého snažení bylo vytvořit AVI soubor, který by se vešel na jedno 80 minut dlohé CD (702 MB) a film aby při tom měl rozměr obrazu 512x384 při 25 snímcích za sekundu a kvalitní stereo zvuk (tzn. MP3 cca 128 kbit/sec).

Paramerty grabování kartou AV Master 2000:
zvuk 16 bit, 44 100 Hz, stereo, PCM
obraz 768x576, 25 fps, MJPEG komprese 1:7

Po nagrabování "syrového" videa (několik 2 GB dlouhých Motion-JPEG AVI) jsem ho postupně soubor po souboru načetl do programu Ulead Media Studio Pro 5.2 a dal uložit (kvůli rychlosti na fyzicky jiný hard disk) bez rekomprese. Při té příležitosti jsem "odstřihl" na začátku a na konci filmu to, co k němu nepatřilo (hlasatelku, reklamy, ...), neboť trefit se se začátkem a koncem grabování přesně na začátek a konec filmu je zhola nemožné. Na zvukovou stopu jsem použil na obou jejích koncích 2 sec dlouhé FADE-IN a FADE-OUT.

Samozřejmě že by stačilo takto ošetřit jen první a poslední soubor, ale v takovém případě mi program VirtualDub odmítá načíst všechny AVI a tvrdí o nich, že mají navzájem různé parametry. Po "protažení" UMSem je VD načte bez protestů.

Tato "operace" mi trvala cca 50 minut.


Zdrojový Motion-JPEG

Výsledkem mého snažení bylo několik AVI souborů o celkové velikosti 20 011 970 560 bajtů (18,6 GB). Tyto jsem postupně načetl do programu VirtualDub 1.4.7. První soubor pomocí menu File položkou Open video file..., druhý pak pomocí menu File položkou Append AVI segment... kde jsem v dialogovém okně zafajfkoval volbu Autodetect additional segments by filename, čímž se mi načetly i všechny ostatní zbývající soubory. Samozřejmě že AVI soubory měly stejný název, který se lišil pouze pořadovou číslovkou: HROM01.AVI až HROM10.AVI, jinak by tuto volbu nebylo možné použít. Načtený film jsem si zkontroloval (Menu File položka File Information... - viz obrázek výše).

Nyjí jsem zkontroloval, že je v menu Audio navoleno AVI audio a Direct stream copy a zadal jsem Save WAV... (v menu File).

Po cca 10 minutách vznikl WAV soubor dlouhý 1 024 517 156 bajtů (977 MB) se zvukovou stopou, kterou jsem pak dál zpracovával separátně (samozřejmě, že jsem si zvuk namátkově přehrál, zda-li je OK).

V této chvíli nastal čas pro zdlouhavou konverzi obrazu. Jelikož ve finále chci mít co nejlepší obraz při co možná nejmenší velikosti souboru, nezbývá, než využít stávajících technik založených na dvouprůchodovém zpracování: nejprve analýza, pak komprese. Tyto techniky jsou v tuto chvíli dostupné pro:

Jelikož konverze MJPEG obrazu do finální podoby by musela absolvovat dvakrát všechny zdlouhavé procedůry spojené s vylepšením obrazu, je lepší úpravu obrazu a finální kompresi od sebe oddělit a postupovat takto:

Jako první jsem vypnul zvukovou stopu, neb je již vyexportována (v menu Audio volím No audio).

Poté jsem přidal do zpracování video stopy všechny potřebné video filtry.

Dále jsem navolil v kompresi videa bezztrátový kodek - buď Uncompressed RGB (šíleně veliké!) nebo lépe HUFFYUV.

Režim zpracování videa musí být pochopitelně Full processing mode. Jak se jednotlivé kroky dělají je podrobně popsáno na mých stránkách o programu VirtualDub, proto to zde nerozebírám do podrobností.

Nakonec jsem dal uložit (vytvořit AVI), menu File položka Save segmented AVI..., kde jsem si zvolil disk (s dostatkem volného místa), složku a vhodný název souboru (aby se mi různé fáze mezi sebou nepletly).

Jaké videofiltry a s jakým nastavením jsem použil, je popsáno o pár odstavců níže.


Mezifáze: HuffYUV

Po neuvěřitelně dlouhé době počítané téměř ve dnech mám konečně hotovo: AVI soubory zabírají 20 140 652 544 bajtů (18,7 GB).

Pokud jsem tak ještě neučinil (třeba na jiném počítači), zpracuji nyní audio stopu. Samozřejmostí je Normalize, Loudness (jak se toto dělá je kromě jiného popsáno v příspěvku konverze FPS) a komprese do variable bitrate MP3 (MPEG Audio Layer III) programem LAME (nastavení: min: 32 kbps, max: 160 kbps, ABR: 128 kbps).

Výsledný MP3 soubor měl 84 524 608 bajtů (80,6 MB). V této chvíli je už také jasné, kolik prostoru na CD zbývá pro obraz.


Finální DivX SBC

Nyní lze obě stopy (obraz a zvuk) načíst do programu:


Případně lze načíst obraz (musel by ale mít jiné rozměry, např. 480x576) a nekomprimovaný zvuk do programu TMPGEnc a vyrobit finální MPG s kodekem MPEG-2.

Před finální kompresí Nandubem (opět připomínám: dvouprůchodovou) jsem si Bitrate Calculatorem nechal spočítat vhodný bitrate a pro jistotu jsem ho ještě i trochu snížil (na 850 kbit/sec). Zbytek Nandubu jsem pak nastavil podle AJISLAVova návodu a nechal proběhnout oba "passy".

Tato konečná fáze trvala necelých 6 hodin.

Vylepšení obrazu

Přestože obraz nagrabovaný přímo z TV vysílání je 100x :-) kvalitnější než týž obraz nagrabovaný z VHS nebo Super VHS, je přesto poznamenán několika neduhy, které je vhodné odstranit a obraz tak vylepšit.


Obraz bez úprav

Takto vypadá nagrabovaný obraz bez jakýchkoli úprav. Je v něm obrazový šum (způsobený jednak přenosem, druhak MJPEG kompresí), logo televizní stanice a "roztřepené" okraje (tentokrát náhodou docela málo). Obraz je prokládaný (viz třepotající se vlajka nebo pohybující se hůl ceremoniáře). Také rozměr obrazu 768x576 není to pravé ořechové (1 GHz PIII je sice takovýto obraz schopen plynule přehrávat, ale dostat ho na 1 CD je téměř nemožné).


Smart Deinterlace

Prokládání obrazu lze odstranit několika způsoby, každý se hodí na něco jiného. V tomto případě stačilo prohodit půlsímky (field swap).


Dynamic Noise Reduction, Deinterlace, LogoAway, Smart Smoother

Obraz po aplikaci filtrů, které odstraňují (šum, prokládání, logo).


Smart Smoother: originál, 5/20, 5/30 a 5/40

Doslova "chytré" vyhlazení obrazu redukuje obrazový šum na minimum (vyhladí plochy s podobnou barvou na jednolitý odstín a při tom zachová kontury - detaily). Záleží samozřejmě na nastavení působnosti tohoto video filtru. Zde je několik ukázek jak moc lze vyhlazovat (4x zvětšeno). Při nastavení 3/xx je zpracování výrazně rychejší, při nastavení 11/xx je zpracování výrazně pomalejší, ale přesnější.

Pro představu o časové náročnosti konverze zde uvádím také tabulku, jak moc by video filtr Smart Smoother ovlivnil celkovou rychlost (fps = rychlost zpracování ve snímcích za sekundu):

nastavenírychlostcelková doba (cca)
bez filtruĆ 5 fps8 hod
3/15Ć 3,1 fps13 hodin
5/20Ć 2 fps20 hodin
11/25Ć 1 fps1 den 15 hodin


Mezifáze: HuffYUV

Po zmenšení a oříznutí okrajů a jejich vylití černou barvou (malý black letter box) vzniká takovýto krásný obraz. Nakonec jsem použil Smart Smoother nastavený na 5/20.


Finální DivX SBC

Týž snímek, tentokrát již komprimovaný DivX SBC. Téměř k nerozeznání.

Použité videofiltry

Zde je popsán každý použitý video filtr. Pořadí by šlo změnit (například nejprve deinterlace, pak logoaway, pak zmenšit, nakonec odšumět a vyhladit - zpracování by se zrychlilo ale znepřesnilo, neboť zmenšení by přepočítávalo i šum, což je špatné).


Použité videofiltry

Konkrétně jsem pak použil všechny na obrázku uvedené videofiltry, na pořadí samozřejmě záleží!

Dynamic Noise Reduction: vhodné použít v rozsahu 8 až 12. Méně skoro není poznat, více "vyrábí duchy".


Smart Deinterlace - chytré odstranění prokládání obrazu

Smart Deinterlace: nabízí vysokou variabilitu. Možnosti nastavení by vydaly na samostatný článek, proto je zde nebudu zmiňovat. Místo tohoto video filtru lze také použít "obyčejné" Deinterlace, nejlépe v režimu blend (v tomto konkrétním případě by ale vedlo k horšímu výsledku).

LogoAway: umí odstranit z obrazu to, co se vám v něm nehodí, tím, že místo rozmaže (nejčastěji se používá na logo). Nastavení je poměrně jednoduché, jde o to "trefit se".


Smart Smoother - chytré vyhlazení obrazu

Smart Smoother: nejúčinnější, ale zároveň také nejpomalejší "zlepšovač" obrazu. Nastavení výrazně ovlivňuje rychlost. Příliš nízké nastavení je rychlé, ale málo účinné, příliš vysoké nastavení je šíleně pomalé a nehodí se hrané filmy (naopak se hodí na "cartoony").


Resize - zmenšení z plného PALu na 512x384

Resize: zmenšení (a zvětšení samozřejmě také). Vhodné rozměry obrazu: 640x480, 512x384, 384x288 nebo 352x288. Více je obtížně přehratelné (vyžaduje vyšší datový tok, pokud má obraz za něco stát), menší příliš degraduje obraz, ze kterého se vytrácejí detaily (ať se na mě ATInáři nezlobí, ale 320x240 je hnus!).


Resize & Cropping - oříznutí roztřepených okrajů

2. Resize: tento dialog se vyvolává tlačítkem Cropping... při aktivním filtru Resize - tom druhém v pořadí. Každý videofiltr lze totiž "ořezávat" zvlášť. Zde je využit k odstranění duchatých a otřepaných okrajů. Zároveň je ořez proveden tak, aby byl v násobích 8mi obrazových bodů (tzn. je oříznuto o něco málo víc, než je nezbytně nutné).


Resize & Cropping - doplnění oříznuté plochy

2. Resize: tento dialog se vyvolává tlačítkem Configure... při aktivním filtru Resize - tom druhém v pořadí. Zde žádná změna velikosti (resize má stejné X a Y jako obraz), alebrž jen doplnění černou barvou na rozměr dělitený 32 bezezbytku.

[EOF (zatím)]

Announcement:
o všech informacích zde uvedených platí, že nutně nemusí být 100% správné.
Stránka byla vytvořena pomocí programu NOTEPAD.EXE, což je jediná správná cesta, jak tvořit HTML.
Obrázky obrazovek byly nasnímány za prostého užití čudlíku [PrintScreen], následně byly zpracovány a případné ostatní obrázky i namalovány v programu Corel PhotoPaint.

Home


© 2001-2002, K5