Ezzel a kis leírással, szeretnék eloszlatni alapvető tévhiteket a témával kapcsolatban, és egy leírást adni arról, hogy hogyan lehet a legjobb minőséget elérni (az én véleményem szerint), célhardver nélkül. Tehát VIVO-s és TV-Tuner kártyákkal, de a leírtak jó része igaz digitális kamera felvételeire és, DVB felvételekre is.
Kezdjük rögtön az elején alapfogalmakkal, és alapvető hibákkal.
- Sokan úgy gondolják, hogy mivel a VHS, Video8, Hi8 és hasonló képrögzítés alacsonyabb felbontással bír mint a Teljes PAL 768x576-os bontás, ezért nekik nem szükséges a kártyájuk által felajánlott maximális felbontásban digitalizálniuk (ez általában 720x576/704x576). Hanem elég 384x288-ban vagy esetleg 720x288-ban.
De ez nem igaz, ugyanis ha a függőleges felbontást a felére csökkentjük, ez azzal egyenlő, hogy a képi információ felét eldobjuk, ezzel jelentősen rontva az elérhető minőséget.
- Egy másik ok, ami miatt sokan 288-as függőleges felbontásban digitalizálnak az, hogy azt vették észre, hogy ha 576-os felbontásban teszik, akkor a felvételben gyors mozgásnál fésűszerű hibák lesznek felfedezhetőek.
Ez nem hiba, hanem az interlaced képalkotás miatt lesz ilyen.
Ez a jelenség abból adódik, hogy a digitalizáláskor, a következő történik:
1. Első félkép rögzítése
2. Második félkép rögzítése
3. A két felvett félkép keverése (interlacing) egy teljes (768x576) képkockába.
És ugyanez folytatódik a következő képkockával.
A leírtak digitális kamerára vonatkoznak, az analóg kamerák némileg eltérő módon működnek, de a mi esetünkben ez lényegtelen, a monitoron látott végeredmény ugyanilyen, akkor is, ha pl. tunerrel digitalizálunk egy Hi8-as felvételt.
Ahhoz, hogy a kép jó legyen monitoron nézve is, az interlaced képeket át kell alakítani progresszív képkockákká, ennek az eljárásnak a neve a deinterlacing, a módszerekről és azok pontos leírásáról később.
- Szintén alapvető hiba, ha az interlace videót deinterlacing előtt átméretezzük, ezzel lényegében mindent elrontunk, ugyanis az átméretezéssel, egészen csúnya eredményeket érhetünk el, és átméretezés után, már nem is lehet elvégezni a deinterlaceinget. Tehát a fontos, hogy a felvétel utómunkáinál a legelső a deinterlacing legyen, minden más csak utána következhet. (1-2 dolog elvégezhető előtte is, de nincs jelentősége, ugyanis nem nyerünk semmit vele, ha előtte végezzük el, de az átméretezés semmiképpen sem lehet előbb)
Ennyit bevezetésképpen. Most pedig térjünk rá magára a felvételre, mivel ez a rész szinte minden tuner és vivo kártya esetében egyedi lehet, csak 1-2 általánosságot írok le.
A felvevő programnak egyet tudok ajánlani, az IuVCR-t http://www.iulab.com/ Ez általában minden capture alkalmatossággal működik, és jól használható program.
Nagyon fontos, hogy ha utómunkát kívánunk végezni a felvételen, akkor a lehető legkevésbé veszteséges, vagy veszteségmentes eljárással tömörítsük a felvételt.
Néhány jól használható tömörítő:
- Mainconcept Mjpeg http://www.mainconce...om/codecs.shtml
- Picvideo Mjpeg http://www.pegasusim...cvideomjpeg.htm
- Huffyuv http://neuron2.net/www.math.berkeley.edu/b...rg/huffyuv.html
Az első kettő alacsony veszteséggel dolgozó codec, a harmadik veszteségmentes és freeware.
Az, hogy ki melyiket használja, leginkább tárterület kérdése, veszteségmentes tömörítés esetén, 7-8Mb/s lehet a helyfoglalás. Az mjpegekkel már 2-4mb/s ?el is jó minőség érhető el.
Ezek után elvileg eljutottunk oda, hogy van egy nyers jópár GByte méretű avi-nk. Azaz következhet a feldolgozás, és a végleges formátumba hozás.
Szükséges szoftverek:
- VirtualDub http://www.virtualdub.org/
- AviSynth 2.5 http://sourceforge.n...ects/avisynth2/
A virtualdub egy capture és feldolgozó/vágó program egyben, de capture képességeit inkább W9x korszakban lehetett jól használni, ugyanis VFW alapú.
Az AviSynth egy un. Frame server program, ami számunkra lényegében láthatatlanul működik.
Arról volt szó, hogy a deinterlacinggel kell kezdeni a feldolgozást, tehát ennek a leírásával kezdem.
Itt rögtön egy dilemma következik, hogy milyen módszert használjunk a deinterlacehez. Létezik rengeteg féle-fajta, én kettőt írok le, amik szerintem a legjobb végeredményt adják.
Az első egyfajta motion compensation eljárás, ez valamivel egyszerűbb, szükséges hozzá a két fent említett programon kívül a TomsMocomp szűrő http://mywebpages.comcast.net/trbarry/ avisynth verziója.
Ahhoz, hogy az avisynthen keresztül tudjuk megnyitni a videófileunkat, kell írni egy scriptet. Aminek .avs a kiterjesztése, ehhez notepad tökéletesen használható. Ebben ennek kell állnia:
LoadPlugin("C:Program FilesAviSynth 2.5pluginsTomsMoComp.dll")
clip = avisource("ttvideo.avi")
return clip.TomsMoComp(-1,5,1)
Természetesen azt az elérési utat kell az első sorba írni, ahová tettük a TomsMoComp.dll-t
A második sor eléggé egyértelmű, a videófileunk elérési útja és neve kerül az idézőjelek közé.
A harmadik sorban hívjuk meg a deinterlace filtert, ahol a paraméterek közül a középső a minőséget állítja, minél magasabb a szám annál jobb a minőség, és annál lassabb lesz. 5-az kb jó beállítás, de aki akar változtathat rajta, de 15 fölé nem érdemes menni, mert túl lassú lesz, és nagyon lefelé sem, mert akkor meg túl rossz minőséget fog produkálni.
Ha valamilyen okból a felvételünk több külön filera van darabolva. Akkor így lehet összefűzni őket:
Clip1 = avisource("ttvideo00.avi")
Clip2 = avisource("ttvideo01.avi")
.
.
.
Clip = clip1+clip2+?
Kiegészítés Mpeg2 esetére, akit nem érint ugorjon a dőlt betűs rész utánra:
Ha forrás nem avi, hanem Mpeg2 (pl DVB esetén), akkor szükségünk lesz mpeg2 decoder pluginra, az avisynthhez http://mf.creations....s/MPEG2Dec3.dll Leírás: http://mf.creations..../MPEG2Dec3.html
Ekkor avisource helyett ez kell:
MPEG2Source("eb.d2v",CPU=6,IDCT=0,IPP=True)
A .d2v filet, előtte létre kell hozin az mpeg2-höz, DVD2AVI-val. http://arbor.ee.ntu....jackei/dvd2avi/
Ezzel meg kell nyitni az mpeg2-t:

Itt hozzá lehet adni több filet egyszerre, összefűzéshez.

majd elmenteni a projectet.

Ez létrehozza a .d2v project filet. És ha volt hang az mpeg2-ben, azt is kimenti külön file-ba.
Akkor ezzel készen vagyunk, megvan a script fileunk, amit már csak meg kell nyitni virtualdub alatt, és ha mindent jól csináltunk, akkor hibaüzenet nélkül megnyitja, és ott már a deinterlaced képet kapjuk, amivel azt csinálunk, amit akarunk.
A Virtualdub használatába, most nem megyek bele, ha igény van arról is részletes leírásra, akkor talán megcsinálom.
A másik módszer a deinterlacere, egy progressive scan megoldás, ehhez egy másik szűrő kell:
A smooth deinterlace http://biphome.spray.se/gunnart/video/
Ez egy virtualdub filter, tehát majd ott kell felhasználnunk.
Ebben az esetben a deinterlace 2 részletben történik, már az avisynthben elkezdjük, és a virtualdubban fejeződik be a smooth deinterlace filterrel.
Ekkor az avs script így néz ki:
clip = avisource("ttvideo.avi")
separatefields(clip)
return clip
Ez a fentebb említett két félképet szétszedi és átteszi két külön képkockába, így egy 50fps-es, de fele magasságú videót kapunk virtuakdubban.
Bizonyos esetben előfordulhat, hogy a kép előre hátra ugrál virtualdubban ez rögtön látszik, ha kicsit lépegetünk a képkockákban előre.
Ekkor bele kell tenni a scriptbe egy complementparity parancsot is a separetefields elé.
Complementparity(clip)
Ha ez megvan a virtualdubban be kell tenni első helyre, a smooth deinterlace filtert.

[ Kattints ide a teljes méretű képhez ]
A szűrő beállításait nem nagyon érdemes birizgálni, tapasztalatom szerint csak rontani lehet a minőségen, ha elállítgatom a paramétereket.

Ha ez megvan, ismét teljes méretű képet kapunk, de az előző módszerrel ellentétben itt nem 25fps videónk van, hanem 50fps. És ez a legnagyobb előnye, és egyben hátránya is ennek a módszernek az előzővel szemben. Az 50fps miatt sokkal folyamatosabb és simább a mozgás, viszont ugyanezen okból 2* annyi információnk van, így legalább 1.5* akkora bitrate-t kell beállítani a tömörítésnél, hogy ne romoljon a minőség.
Én ezt az utóbbi módszert leginkább sportműsorok felvételénél használom, ugyanis itt nem árt a folyamatos mozgás, viszont házi felvételeknél nincs rá akkora szükség, így a helytakarékosság miatt nem használom. De akinek a hely nem számít, és tetszik neki az eredmény használhatja mindenre ezt a módszert.
Most pedig a végére 1-2 tipp:
- Minden esetben vágjuk le, a kép széleiről a holt tereket, de ne hagyjunk 1 pixelnyit sem belőle, mert éppen a határ foglalja a helyet, nem maga a fekete sáv. Jelentős helyet takarítunk meg vele/több hely marad a lényegi képi információkra.
- Ha TV-ből veszünk fel, akkor az idegesítő logok eltüntetéséhez használjunk logoaway szűrőt http://www.republika...r74/virtualdub/
Ennek elsősorban esztétikai jelentősége van, de némi helyet is spórolunk vele.
- Ha zajos, a felvétel használjunk valami zajszűrőt mindenképpen, ugyanis ezzel ellensúlyozhatjuk azt, hogy a tömörítő ne a zajt tárolja el mint lényegi információ, hanem a valódi képet. Én ezt ajánlom: http://neuron2.net/nrs/nrs.html
Az ne tévesszen meg senkit, hogy nem lát semmi különbséget szinte a kimenet és a bemenet között a szűrővel, ettől az még dolgozik, nem 1 képen belül csökkenti a zajt, hanem a képkockák között, időbeni szűrést alkalmaz.
- A tömörítőt mindenki azt és olyat használ, ami neki szimpatikus, én mindenesetre az On2VP6-ot ajánlom, mert szerintem jobb minőséget produkál, mint a többi népszerű mpeg4 codec. http://www.on2.com/vp6.php3
Néhány információt a http://100fps.com -ról vettem, illetve akit érdekel ott talál valamivel bővebb leírást az interlace jelenségről.
Szerkesztette: Mumia 2004. 04. 07. 23:46 -kor