Diit.cz - Novinky a informace o hardware, software a internetu

Zpracování videa ve VirtualDubModu

Spousta lidí dnes vlastní nějaký ten TV tuner, VIVO grafickou kartu, či třeba FireWire řadič ve spojení s DV kamerou. Obvykle je k těmto zařízením dodáván nějaký software určený pro zpracování videa. Zejména však v případě TV tunerů velmi často platí pravidlo, že software je tak mizerný, jak je karta skvělá. Hlavním problémem zpravidla není, jak TO nahrát (to ten dodávaný soft obvykle i zvládne), ale co s TÍM pak dál.
VirtualDubMod logo

Nebudu se zde zabývat samotným záznamem videa. To se značně liší od použitého grabovacího hardware, či v případě TV tunerů podle osazeného čipu a použitých ovladačů (Bt878, Bt881, Philips 713x ad.) - vydalo na samostatný článek. Problém zpravidla pro méně zkušené grabovače nastává ve chvíli, kdy TO mají převést do nějaké úspornější formy. V tu chvíli většinou nastupují rady od kamarádů, kterým také radili nějací kamarádi a pak je občas na katastrofu zaděláno. Mohl bych strašit malé děti historkami o filmech v rozlišení 320×240 v DivX 3 Low Motion, ripnutých na 2CD s 15fps a zvukem 8bit 11kHz mono MP3. Postupů, jak zpracovat film je mnoho a některé se opírají o zálohu na DVD-Video disk. To je však značně neúsporná metoda, opírající se o zastaralý kompresní algoritmus MPEG-2, kterým nás v současné době masírují filmová studia a videopůjčovny ve snaze vytřískat z umírajícího formátu ve smrtelné křeči poslední dolary.

Tento článek vám poskytne alternativní postup, kterak uložit vaše video s co nejvyšším poměrem kvality vůči velikosti výsledného videa. Každému již musí být v tuto chvíli jasné, o co půjde. Samozřejmě o to, co nás čeká ve standardech přicházejících na trh, a to MPEG-4 kompresi.

Než se v diskusi pod článkem začnete všichni divit, proč proboha matroska, proč ne DivX, proč ne WMV9, proč ne tohleto a támhleto, tak vezměte v úvahu třeba otázky jako: proč tento postup používám již skoro 2 roky, proč jsem ochotný se za něj bít na tomto serveru, je skutečně M$ AVI ten jediný správný formát. Nikoho nenutím používat zrovna matrosku a ogg zvuk. Pokud budete mít zájem, mohu poskytnout i postupy pro klasické AVI a zvuk v MP3, DVD-Video anebo třeba také vcelku neznámý OGM Ogg Media Stream. Nyní již zpět k tématu:

Vše, co budete k použití následujícího postupu potřebovat je zde:

  1. všemocný program VirtualDubMod (dále jen jako Vdub)
  2. některý z MPEG-4 kodeků, např. DivX, XviD, 3ivX, MS MPEG-4. Moje doporučení zní XviD
  3. pokud je vaše zdrojové video prokládané, tak i Smart Deinterlacer Filter
  4. dále pak (třeba) OGG kodek na zvuk, já osobně si vystačím s OggDrop aplikací
  5. nakonec něco, co si poradí s Matroska containerem: Matrsoka Pack Full resp. mPlayer resp. VLC Player (záleží na vašem vkusu).

Nejrpve si někam rozbalte Vdub (já osobně pro takovéto aplikace používám univerzální adresář C:\Drivers\) a do adresáře C:\Drivers\VirtualDubMod_1_5_10_1_All_inclusive\plugins rozbalte Smart Deinterlacer Filter. Nebudu tu popisovat, jak rozbalit ZIP soubor, to umí třeba Total Commander nebo i samotná Windows XP (díky Bille :-).

Dalším krokem je nainstalování kodeku, který použijeme. Já se zaměřím na XviD (a vám bych to doporučil také, protože další pasáže se budou vztahovat právě na něj). Pro účely tohoto testu jsem použil aktuální verzi XviD-1.1.0-Beta1-16012005.

Následně si někam rozbalte OggDrop (opět předpokládám, že to zvládne každý). No a pokud ještě nepoužíváte Matroska Pack, mPlayer nebo VLC, tak si aspoň nainstalujte Matroska Pack.

Matroska Pack instalace

Volby v instalaci Matrosky nastavte třeba podle obrázku.

  • RealMedia Splitter stejně vyžaduje nainstalovaný RealPlayer, takže je to zbytečné (lepší je použít Real Alternative)
  • VSFilter občas způsobuje tuhnutí při přehrávání videí, takže jej také neinstalujte
  • pokud chcete přehrávat všechny MPEG4 videa společným dekodérem, můžete si nainstalovat, sice starší, ale přesto kvalitní verzi ffdshow, bundlovanou s Matroska Packem
  • doporučuji též nainstalovat MatrixMixer, ten pak tvoří jakousi mezivrstvu při přehrávání a umožňuje vám třeba měnit hlasitost audio stopy, pokud vaše zvukovka nestíhá (skutečně jsem se setkal s tak tichou zvukovou stopou ve filmu, že ani mixer zvukovky na max. v kombinaci s maximální hlasitostí reproduktorů nebyl dostatečný a pomohlo pouze umělé přebuzení zvukové stopy právě pomocí MatrixMixeru)

Pokud jste majitelem trochu bystřejších očí, určitě si v průběhu tohoto článku všimnete, že mnou ripnutá okna aplikací se občas poněkud liší od toho, co máte na monitoru vy. Je to způsobeno tím, že jsem je lehce předělal, abyste u každého většího obrázku nemuseli klikat na náhled pro zobrazení v plné velikosti. To by značně kazilo váš požitek ze čtení :-). Strukturou však tato típnutá okna odpovídají skutečnosti, takže by snad neměl nastat problém. Pokud by se však přece jen mezi vámi našel nějaký puritán, nechť mi dá vědět v diskusi a já si doma vysypu nějaký ten popel na hlavu (obrázky ale rozhodně předělávat nebudu).

Tak a konečně se můžeme pustit do zpracování (ještě malá poznámka, já v postupu jako zdrojové video používám soubor bez komprese, majitelů DV kamer se bude týkat nějaká verze DV kodeku, tuneristů typicky např. Huffyův nebo MJPEG kodek)

Prvním krokem je otevřít zdrojový soubor ve Vdubu. To lze provést několika způsoby

  1. drag&drop přes wokna
  2. ve Vdubu Ctrl+O
  3. nebo použít můj oblíbený: Vdub mít v liště Total Commanderu a jen přetáhnout (v podstatě subvarianta a)

přetažení do VirtualDubMod v TC

Vdub poté bude vypadat nějak takto:

VirtualDubMod po otevření souboru

Teď je ta pravá chvíle na to, upřesnit si několik detailů. Obrázek odpovídá rozlišení 1024×768, zdrojové i cílové video pak 720×576 (zdrojem byla DV kamera). Oko znalce pozná, že zdrojové video je prokládané to bude první věc, jíž budeme řešit po seznámení se s Vdubem. Důležitá informace je to, že v okně„finální video“ vidíte, jak bude vypadat výsledný soubor po aplikování vybraných filtrů (které probereme podrobněji dále). Timeline označuje zjednodušenou časovou osu, pomocí níž se ve Vdubu velice rychle orientuje v editovaném souboru. Vaše pozice po otevření souboru je vždy na prvním snímku, který je také snímkem klíčovým.

Správný čas na vsuvku:

  • kodeky jako MJPEG, Huffyův či Uncompressed video mají všechny snímky klíčové, anglicky Keyframe ve Vdubu označené [K]. Tyto snímky jsou uloženy celé a obsahují tak veškeré informace, vztahující se k tomuto snímku
  • kodeky jako DivX, XviD používají 3 typy snímků:
    1. keyframes (klíčové)
    2. Predicted ty nejsou uloženy celé, obsahují pouze informaci o změně oproti nejbližšímu předchozímu klíčovému snímku. Pokud se tedy v časové ose posunete na P-snímek, Vdub jej nejprve musí dopočítat
    3. Bidirectionaly-Predicted tyto snímky ukládají pouze změnu oproti dvěma nejbližším klíčovým snímkům (před a za) jejich dopočítání je časově náročnější než u P-snímků

Poznánka pro experty: toto je pouze zjednodušený popis, nekamenujte mě za to v diskusi.

Z principu věci je hned jasné, že klíčové snímky jsou nejjednodušeji dekódovatelné (a tudíž přehratelné), protože je k nim okamžitý přístup. S P-snímky je to komplikovanější, ale zase je jejich velikost menší, než u klíčových snímků. Nejlépe z hlediska velikosti výsledného videa jsou na tom B-snímky, neboť mají nejmenší velikost, jejich dekódování je však nejpomalejší (mám na mysli dekódování při pohybu v časové ose Vdubu, nikoliv při přehrávání videa).

David Ježek

Dlouholetý zdejší redaktor (2005-2017), příznivec open-source rád píšící i o ne-IT tématech. Odpůrce sw patentů a omezování občanských svobod ve prospěch korporací. Fanoušek Asimova, Kinga, Feynmana, Sudka, 70mm filmu, sf/vf filmu, Fomapanu 400, starých dobrých her, 99% čokolády, indické kuchyně, domácího kváskového chleba a řady dalších věcí.

více článků, blogů a informací o autorovi

Diskuse ke článku Zpracování videa ve VirtualDubModu

Úterý, 22 Srpen 2006 - 18:47 | | KDyž zkouším spojit video (2x 700 MB)...
Úterý, 22 Srpen 2006 - 18:44 | | Když používám virtualdubmov ke spojování videa (...
Pondělí, 27 Březen 2006 - 22:08 | David Ježek | to Marwin: co pouziva tvuj DF za priponu pro...
Neděle, 5 Březen 2006 - 11:12 | Anonym | VDub  mi odmítá otevřít zdrojový soubor...
Pondělí, 28 Listopad 2005 - 15:05 | Martin Bartoň | daemoon007: Ano, je to jak píšeš. Stáhnout na hdd...
Neděle, 27 Listopad 2005 - 23:36 | daemoon007 | ahoj lidicky vlastnim tv kartu Win Fast 2000 XP...
Čtvrtek, 4 Srpen 2005 - 12:48 | Anonym | Zdravim vsetkych, som uplny zaciatocnik v tvorbe...
Pátek, 29 Červenec 2005 - 11:45 | Anonym | prosim, kde je ke stahnuti Smart Deinterlace...
Pondělí, 18 Duben 2005 - 08:53 | Anonym | Rád bych se zeptal, jak mám komprimovat ČB video...
Sobota, 9 Duben 2005 - 16:44 | Anonym | Nevíte někdo jestli je VDMod také v WinXP64. A...

Zobrazit diskusi