Sophie

Sophie

distrib > Mandriva > current > i586 > media > main-updates > by-pkgid > a42e22ddf1d70fb02e9f62289d71cafa > files > 481

mplayer-doc-1.0-1.rc4.0.r31086.3.1mdv2010.2.i586.rpm

<html><head><meta http-equiv="Content-Type" content="text/html; charset=utf-8"><title>11.1. Nagyon jó minőségű MPEG-4 ("DivX") rip készítése DVD filmből</title><link rel="stylesheet" href="default.css" type="text/css"><meta name="generator" content="DocBook XSL Stylesheets V1.75.2"><link rel="home" href="index.html" title="MPlayer - The Movie Player"><link rel="up" href="encoding-guide.html" title="11. fejezet - Kódolás a MEncoderrel"><link rel="prev" href="encoding-guide.html" title="11. fejezet - Kódolás a MEncoderrel"><link rel="next" href="menc-feat-telecine.html" title="11.2. Mit kezdjünk a telecine-nel és az átlapolással NTSC DVD-ken"><link rel="preface" href="howtoread.html" title="Hogyan olvasd ezt a dokumentációt"><link rel="chapter" href="intro.html" title="1. fejezet - Bevezetés"><link rel="chapter" href="install.html" title="2. fejezet - Telepítés"><link rel="chapter" href="usage.html" title="3. fejezet - Használat"><link rel="chapter" href="advaudio.html" title="4. fejezet - Továbbfejlesztett audió használata"><link rel="chapter" href="cd-dvd.html" title="5. fejezet - CD/DVD használat"><link rel="chapter" href="tv.html" title="6. fejezet - TV"><link rel="chapter" href="radio.html" title="7. fejezet - Rádió"><link rel="chapter" href="video.html" title="8. fejezet - Videó kimeneti eszközök"><link rel="chapter" href="ports.html" title="9. fejezet - Portok"><link rel="chapter" href="mencoder.html" title="10. fejezet - A MEncoder használatának alapjai"><link rel="chapter" href="encoding-guide.html" title="11. fejezet - Kódolás a MEncoderrel"><link rel="chapter" href="faq.html" title="12. fejezet - Gyakran ismételt kérdések"><link rel="appendix" href="bugreports.html" title="A. függelék - Hogyan jelentsd a hibákat"><link rel="appendix" href="skin.html" title="B. függelék - MPlayer skin formátum"><link rel="subsection" href="menc-feat-dvd-mpeg4.html#menc-feat-dvd-mpeg4-preparing-encode" title="11.1.1. Felkészülés a kódolásra: A forrás anyag és frameráta azonosítása"><link rel="subsection" href="menc-feat-dvd-mpeg4.html#menc-feat-dvd-mpeg4-2pass" title="11.1.2. Konstans kvantálás vs. többmenetes kódolás"><link rel="subsection" href="menc-feat-dvd-mpeg4.html#menc-feat-dvd-mpeg4-constraints" title="11.1.3. Megszorítások a hatékony kódoláshoz"><link rel="subsection" href="menc-feat-dvd-mpeg4.html#menc-feat-dvd-mpeg4-crop" title="11.1.4. Vágás és méretezés"><link rel="subsection" href="menc-feat-dvd-mpeg4.html#menc-feat-dvd-mpeg4-resolution-bitrate" title="11.1.5. Felbontás és bitráta kiválasztása"><link rel="subsection" href="menc-feat-dvd-mpeg4.html#menc-feat-dvd-mpeg4-filtering" title="11.1.6. Szűrés"><link rel="subsection" href="menc-feat-dvd-mpeg4.html#menc-feat-dvd-mpeg4-interlacing" title="11.1.7. Interlacing és Telecine"><link rel="subsection" href="menc-feat-dvd-mpeg4.html#menc-feat-dvd-mpeg4-encoding-interlaced" title="11.1.8. Átlapolt videó elkódolása"><link rel="subsection" href="menc-feat-dvd-mpeg4.html#menc-feat-dvd-mpeg4-av-sync" title="11.1.9. Megjegyzések az Audió/Videó szinkronizáláshoz"><link rel="subsection" href="menc-feat-dvd-mpeg4.html#menc-feat-dvd-mpeg4-codec" title="11.1.10. A videó codec kiválasztása"><link rel="subsection" href="menc-feat-dvd-mpeg4.html#menc-feat-dvd-mpeg4-audio" title="11.1.11. Audió"><link rel="subsection" href="menc-feat-dvd-mpeg4.html#menc-feat-dvd-mpeg4-muxing" title="11.1.12. Keverés"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">11.1. Nagyon jó minőségű MPEG-4 ("DivX")
  rip készítése DVD filmből</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="encoding-guide.html">Előző</a> </td><th width="60%" align="center">11. fejezet - Kódolás a <span class="application">MEncoder</span>rel</th><td width="20%" align="right"> <a accesskey="n" href="menc-feat-telecine.html">Következő</a></td></tr></table><hr></div><div class="sect1" title='11.1. Nagyon jó minőségű MPEG-4 ("DivX") rip készítése DVD filmből'><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="menc-feat-dvd-mpeg4"></a>11.1. Nagyon jó minőségű MPEG-4 ("DivX")
  rip készítése DVD filmből</h2></div></div></div><p>
Egy gyakran feltett kérdés: "Hogyan készíthetem el a legjobb minőségű
DVD rip-et egy adott méretben?" Vagy: "Hogyan készíthetem el a lehető
legjobb minőségű DVD rip-et? Nem érdekel a fájl méret, csak a legjobb
minőséget akarom."
</p><p>
Az utóbbi kérdés talán kicsit rosszul van megfogalmazva. Hiszen ha nem
érdekel a fájl méret, akkor miért nem másolod át az egész MPEG-2 videó
stream-et a DVD-ről egy az egyben? Az AVI fájlod 5GB körül fogja végezni,
fogd és vidd, de ha a legjobb minőséget akarod és nem érdekel a méret,
akkor biztos, hogy ez lesz a legjobb lehetőséged.
</p><p>
Valójában egy DVD MPEG-4-be történő átkódolásának az oka pont az, hogy
<span class="bold"><strong>érdekel</strong></span> a fájl mérete.
</p><p>
Nehéz egy általános receptet adni a jó minőségű DVD rip-ek készítéséhez.
Számos szempontot figyelembe kell venni és meg kell értened ezeket a
részleteket, különben elégedetlen leszel a végeredménnyel. Kicsit körbejárjuk
ezen dolgok közül néhányat és utána példát is adunk. Feltételezzük, hogy a
<code class="systemitem">libavcodec</code>-et használod a videó
kódolásához, habár az elmélet bármilyen codec-kel használható.
</p><p>
Ha ez túl sok neked, akkor talán jobb, ha a sok nagyszerű frontend
valamelyikét használod, amik fel vannak sorolva a
kapcsolódó projektek oldalán a
<a class="ulink" href="http://www.mplayerhq.hu/design7/projects.html#mencoder_frontends" target="_top">MEncoder részben</a>.
Így nagyon jó minőségű rip-eket készíthetsz túl sok gondolkodás nélkül,
mert ezen eszközök legtöbbje úgy lett megtervezve, hogy jó döntéseket
hozzon.
</p><div class="sect2" title="11.1.1. Felkészülés a kódolásra: A forrás anyag és frameráta azonosítása"><div class="titlepage"><div><div><h3 class="title"><a name="menc-feat-dvd-mpeg4-preparing-encode"></a>11.1.1. Felkészülés a kódolásra: A forrás anyag és frameráta azonosítása</h3></div></div></div><p>
Mielőtt eszedbe jutna bármiféle film átkódolása, meg kell tenned
pár előkészületi lépést.
</p><p>
Az első és legfontosabb lépés a kódolás előtt annak megállapítása,
hogy miféle anyaggal van egyáltalán dolgod.
Ha a forrás anyagod DVD-ről származik vagy sugárzott/kábeles/műholdas
TV, a következő két formátum valamelyikében tárolódik: NTSC Észak
Amerikában és Japánban, PAL Európában.
Fontos tudatosítani, hogy ez csak a televízión történő megjelenítés
formátuma és gyakran <span class="bold"><strong>nincs</strong></span>
összhangban a film eredeti formátumával.
A tapasztalatok szerint az NTSC tartalmat sokkal nehezebb elkódolni, mert
több elemet kell azonosítani a forrásban.
Ahhoz, hogy megfelelő legyen a kódolás, ismerned kell az eredeti
formátumot.
Ennek elmulasztása esetén különböző hibák lesznek a kódolásodban,
csúnya törési (átlapolás) mellékhatások, duplázott
vagy akár elveszett képkockák.
Mindamellett, hogy csúnya, a mellékhatások rontják a kódolási
hatékonyságot is: rosszabb minőség per bitráta egység arányt kapsz.
</p><div class="sect3" title="11.1.1.1. A forrás framerátájának azonosítása"><div class="titlepage"><div><div><h4 class="title"><a name="menc-feat-dvd-mpeg4-preparing-encode-fps"></a>11.1.1.1. A forrás framerátájának azonosítása</h4></div></div></div><p>
Itt van egy lista a forrás anyagok által általában használt típusokról,
ebben valószínűleg megtalálod a tiédet és annak jellemzőit:
</p><div class="itemizedlist"><ul class="itemizedlist" type="disc"><li class="listitem"><p>
  <span class="bold"><strong>Szabványos film</strong></span>: Moziban történő
  vetítéshez rögzítették 24 fps-sel.
</p></li><li class="listitem"><p>
  <span class="bold"><strong>PAL videó</strong></span>: PAL videókamerával
  rögzítették 50 mező per másodperc sebességgel.
  Egy mező csak a képkocka páros vagy páratlan sorszámú sorait
  tartalmazza.
  A televíziót úgy tervezték meg, hogy ilyen arányban frissítsen,
  az analóg tömörítés egy olcsó formájaként.
  Az emberi szemnek ezt kompenzálnia kellene, de ha egyszer megérted
  az átlapolást, meg fogod látni a TV-n és soha többé nem fogod
  élvezni a TV adást.
  Két mező még <span class="bold"><strong>nem</strong></span> alkot egy
  teljes képkockát, mert 1/50 másodpercnyire vannak egymástól időben
  és így csak mozgásnál igazodnak össze.
</p></li><li class="listitem"><p>
  <span class="bold"><strong>NTSC Videó</strong></span>: NTSC kamerával felvett,
  60000/1001 mező per másodperc vagy a színek előtti időben 60 mező per
  másodperc sebességű film. Egyébként hasonló a PAL-hoz.
</p></li><li class="listitem"><p>
  <span class="bold"><strong>Animáció</strong></span>: Általában 24fps-sel
  rajzolják, de található kevert-framerátás változat is.
</p></li><li class="listitem"><p>
  <span class="bold"><strong>Számítógépes grafika (CG)</strong></span>: Bármilyen
  framerátával mehet, de van pár, ami gyakoribb a többinél; 24 és
  30 képkocka per másodpercesek a tipikusak NTSC-nél és 25fps PAL-nál.
</p></li><li class="listitem"><p>
  <span class="bold"><strong>Régi film</strong></span>: Különböző alacsony
  frameráták.
</p></li></ul></div></div><div class="sect3" title="11.1.1.2. A forrásanyag beazonosítása"><div class="titlepage"><div><div><h4 class="title"><a name="menc-feat-dvd-mpeg4-preparing-encode-material"></a>11.1.1.2. A forrásanyag beazonosítása</h4></div></div></div><p>
A képkockákból álló filmekre progresszívként szoktak hivatkozni,
míg az egymástól független mezőkből állóakra vagy átlapoltként
vagy videóként - bár ez utóbbi félreérthető.
</p><p>
További bonyolításként néhány film a fenti kettő keveréke.
</p><p>
A legfontosabb különbség, amit észre kell venni a két formátum
között, hogy van, amelyik képkocka-alapú míg mások mező alapúak.
<span class="bold"><strong>Bármikor</strong></span>, ha egy filmet televíziós
megjelenítésre készítenek elő (beleértve a DVD-t is), átkonvertálják
mező-alapú formába.
A különböző módszereket, amikkel ez végrehajtható, gyűjtőnéven
"telecine"-nek hívjuk, ennek egyik változata a hírhedt NTSC-s
"3:2 pulldown".
Hacsak nem volt az eredeti anyag is mező-alapú (és megegyező
mező rátájú), más formátumbú lesz a filmed, mint az eredeti.
</p><div class="itemizedlist" title="Számos általános típusa van a pulldown-nak:"><p class="title"><b>Számos általános típusa van a pulldown-nak:</b></p><ul class="itemizedlist" type="disc"><li class="listitem"><p>
  <span class="bold"><strong>PAL 2:2 pulldown</strong></span>: Az összes közül a
  legjobb.
  Minden képkocka két mező idejéig látszódik, úgy, hogy a páros és páratlan
  sorokat kinyeri belőlük és váltakozva mutatja őket.
  Ha az eredeti anyag 24fps-es, ez az eljárás felgyorsítja a filmet
  4%-kal.
</p></li><li class="listitem"><p>
  <span class="bold"><strong>PAL 2:2:2:2:2:2:2:2:2:2:2:3 pulldown</strong></span>:
  Minden 12. kockát három mező hosszan mutat kettő helyett.
  Ezzel elkerüli a 4%-os gyorsulást, de sokkal nehezebben megfordíthatóvá
  teszi a folyamatot.
  Általában musical készítésénél használják, ahol a 4%-os sebességmódosulás
  komolyan rontaná a zenei jelet.
</p></li><li class="listitem"><p>
  <span class="bold"><strong>NTSC 3:2 telecine</strong></span>: A kockák
  felváltva 3 vagy 2 mezőnyi ideig látszódnak. Ezáltal a mező ráta
  2.5-szöröse lesz az eredeti framerátának.
  Az eredmény nagyon kis mértékben lelassul, 60 mező per másodpercről
  59.94 mező per másodpercre, az NTSC mező ráta megtartása miatt.
</p></li><li class="listitem"><p>
  <span class="bold"><strong>NTSC 2:2 pulldown</strong></span>: A 30fps-es
  anyagok NTSC-n történő megjelenítéséhez használják.
  Szép, csakúgy, mint a 2:2 PAL pulldown.
</p></li></ul></div><p>
Vannak még egyéb módszerek az NTSC és a PAL videó közötti konvertáláshoz,
de ez a téma meghaladja ezen leírás célkitűzéseit.
Ha ilyen filmbe futsz bele és el szeretnéd kódolni, a legjobb, ha
keresel egy másolatot az eredeti formátumban.
A két formátum közötti konvertálás nagyon romboló hatású és nem
lehet teljesen visszafordítani, így a kódolt adatod nagyon
megszenvedi, ha már konvertált forrásból készül.
</p><p>
Ha a videó DVD-n van, az egymást követő mezők képkockává
csoportosíthatóak, még akkor is, ha nem egyidejű megjelenítésre
tervezték őket.
A DVD-n és digitális TV-n használt MPEG-2 szabvány lehetőséget nyújt
mind az eredeti progresszív kockák elkódolására, mind pedig arra, hogy
azon mezők számát, amelyhez egy képkockát meg kell jeleníteni, az
adott képkocka fejlécében tárolhassuk.
Ha ezt a módszert használják, a filmet gyakran "soft-telecined"-ként
jellemzik, mert ez az eljárás csak utasítja a DVD lejátszót a pulldown
alkalmazására a film tényleges megváltoztatása helyett.
Ez a lehetőség nagyon preferált, mert könnyen visszafordítható
(tulajdonképpen kihagyható) a kódoló által és megtartja a maximális
minőséget.
Bár sok DVD és műsorszóró stúdió nem használ megfelelő kódolási
technikát, hanem inkább "hard telecine"-es filmeket alkalmaznak,
ahol a mezők tulajdonképpen duplázva vannak az elkódolt MPEG-2-ben.
</p><p>
Az eljárás, ahogy ezeket az eseteket kezelni kell, <a class="link" href="menc-feat-telecine.html" title="11.2. Mit kezdjünk a telecine-nel és az átlapolással NTSC DVD-ken">később kerül leírásra</a> ebben
az útmutatóban.
Most következzék pár tanács, amik segítségével eldöntheted, hogy milyen
anyaggal van dolgod:
</p><div class="itemizedlist" title="NTSC régiók:"><p class="title"><b>NTSC régiók:</b></p><ul class="itemizedlist" type="disc"><li class="listitem"><p>
  Ha az <span class="application">MPlayer</span> azt írja ki, hogy a frameráta
  megváltozott 24000/1001-re a film nézése közben, és soha nem vált vissza,
  akkor majdnem biztosan progresszív tartalomról van szó, amit "soft telecine"
  eljárásnak vetettek alá.
</p></li><li class="listitem"><p>
  Ha az <span class="application">MPlayer</span> a frameráta oda-vissza
  váltakozását mutatja 24000/1001 és 30000/1001 között és "hullámzást"
  látsz ilyenkor, akkor több lehetőség is van.
  A 24000/1001 fps-es részek majdnem biztosan progresszív
  tartalmak, "soft telecine"-ltek, de a 30000/1001 fps-es részek
  lehetnek vagy hard-telecine-lt 24000/1001 fps-esek vagy 60000/1001
  mező per másodperces NTSC videók.
  Kövesd a következő két esetben leírt irányelveket, hogy el tudd
  dönteni, valójában melyik formátummal van dolgod.
</p></li><li class="listitem"><p>
  Ha az <span class="application">MPlayer</span> soha nem mutatja a frameráta
  változást és minden egyes mozgást tartalmazó kocka hullámosnak tűnik,
  akkor a filmed NTSC videó 60000/1001 mező per másodperc sebességgel.
</p></li><li class="listitem"><p>
  Ha az <span class="application">MPlayer</span> soha nem mutatja a frameráta
  változást és minden ötből két kocka hullámosnak tűnik, akkor a filmed
  "hard telecine"-s 24000/1001fps-es formátumú.
</p></li></ul></div><div class="itemizedlist" title="PAL régiók:"><p class="title"><b>PAL régiók:</b></p><ul class="itemizedlist" type="disc"><li class="listitem"><p>
  Ha sosem látsz hullámzást, akkor a filmed 2:2 pulldown-os.
</p></li><li class="listitem"><p>
  Ha hullámzást látsz váltakozóan ki-be minden fél másodpercben,
  akkor a filmed 2:2:2:2:2:2:2:2:2:2:2:3 pulldown-os.
</p></li><li class="listitem"><p>
  Ha mindig látsz hullámzást a mozgás közben, akkor a filmed PAL
  videó 50 mező per másodperces sebességgel.
</p></li></ul></div><div class="note" title="Tanács:" style="margin-left: 0.5in; margin-right: 0.5in;"><h3 class="title">Tanács:</h3><p>
  Az <span class="application">MPlayer</span> le tudja lassítani a lejátszást
  a -speed kapcsolóval vagy a kockáról-kockára történő lejátszással.
  Próbáld meg használni a <tt class="option">-speed</tt> 0.2-t, hogy nagyon lassan
  nézhesd a filmet vagy nyomogasd a "<span class="keycap"><b>.</b></span>" gombot a kockáról
  kockára történő lejátszáshoz és azonosítsd a mintákat, ha nem látod meg
  teljes sebességnél.
</p></div></div></div><div class="sect2" title="11.1.2. Konstans kvantálás vs. többmenetes kódolás"><div class="titlepage"><div><div><h3 class="title"><a name="menc-feat-dvd-mpeg4-2pass"></a>11.1.2. Konstans kvantálás vs. többmenetes kódolás</h3></div></div></div><p>
Nagyon sokféle minőségben tudod elkódolni a filmedet.
A modern videó kódolókkal és egy kis pre-codec tömörítéssel
(leméretezés és zajcsökkentés), lehetséges nagyon jó minőség elérése
700 MB-on, egy 90-110 perces szélesvásznú filmnél.
Továbbá minden, kivéve a leghosszabb filmeket, elkódolható majdnem
tökéletes minőséggel 1400 MB-ba.
</p><p>
Három féle megközelítése van egy videó kódolásának: konstans bitráta
(CBR), konstans kvantálás, és többmenetes (ABR vagy átlagos bitráta).
</p><p>
Egy film képkockáinak komplexitása és így a tömörítéshez szükséges bitek
száma nagy mértékben változhat jelentről jelenetre.
A modern videó kódolók már alkalmazkodnak az igényekhez a bitráta variálásával.
Az egyszerű módokban, mint pl. a CBR, a kódolók nem ismerik az elkövetkező
jelenetek bitráta igényét és így nem tudják átlépni az igényelt átlagos
bitrátát hosszabb időre. A fejlettebb módokban, mint pl. a több lépéses
kódolásnál, már figyelembe lehet venni az előző lépés statisztikáját; ez
megoldja a fent említett problémát.
</p><div class="note" title="Megjegyzés:" style="margin-left: 0.5in; margin-right: 0.5in;"><h3 class="title">Megjegyzés:</h3><p>
A legtöbb ABR kódolást támogató codec csak a két lépéses kódolást
támogatja, míg néhány másik, mint pl. az <code class="systemitem">x264</code>,
az <code class="systemitem">Xvid</code> és a
<code class="systemitem">libavcodec</code> támogatják
a többmenetest, ami kissé javít a minőségen minden lépésben,
bár ez a javulás nem mérhető és nem is észrevehető a 4. lépés után.
Ezért, ebben a részben a két lépéses és a többmenetes felváltva
értelmezhető.
</p></div><p>
Ezen módok mindegyikében a videó codec (mint pl. a
<code class="systemitem">libavcodec</code>)
a videó képkockákat 16x16 pixel nagyságú macroblock-okra osztja, majd egy
kvantálást végez mindegyik macroblock-on. Minél alacsonyabb a kvantálás, annál
jobb a minőség és nagyobb a bitráta. A film kódolók által egy adott macroblockhoz
a megfelelő kvantáló kiválasztására használt módszer változó és nagymértékben
tuningolható. (Ez egy extrém túl-egyszerűsítése a tulajdonképpeni folyamatnak,
de az alap koncepciót hasznos megérteni.)
</p><p>
Ha előírsz egy konstans bitrátát, a videó codec elkódolja a videót, figyelmen
kívül hagyva a részleteket amennyire csak lehetséges és a legkisebb mértékben,
amennyire szükséges, hogy a megadott bitrátánál alacsonyabban maradjon. Ha
tényleg nem érdekel a fájl méret, használhatsz CBR-t és megadhatsz egy bitrátát
vagy hagyhatod határozatlanul. (A gyakorlatban ez egy kellően magas értéket
jelent, ami nem szab gátat, pl. 10000Kbit.) Ha nincs különösebb megkötés a
bitrátára vonatkozóan, az eredmény az lesz, hogy a codec a lehető legalacsonyabb
kvantálást fogja használni minden egyes macroblock-hoz (amint ez a
<tt class="option">vqmin</tt>-ben meg van adva a <code class="systemitem">libavcodec</code>nél, alapértelmezésként 2). Amint
előírsz egy megfelelően alacsony bitrátát, ami a codecet magasabb kvantálás
használatára kényszeríti, majdnem biztos, hogy rontod a videód minőségét.
Ahhoz, hogy ezt elkerüld, valószínűleg downscale-t kell végrehajtani a
videón, az alábbiakban szereplő módszernek megfelelően. Általában igaz,
hogy jobb ha kerülöd a CBR-t, ha számít a minőség.
</p><p>
Konstans kvantálással a codec ugyan azt a kvantálót használja, amit
a <tt class="option">vqscale</tt> kapcsolóval megadtál (a <code class="systemitem">libavcodec</code>nek), minden macroblock-nál. Ha
a lehető legjobb minőségű rip-et szeretnéd, szintén a bitráta kihagyásával,
használhatod a <tt class="option">vqscale=2</tt> kapcsolót. Ez ugyan azt a bitrátát
és PSNR-t (peak signal-to-noise ratio) szolgáltatja, mint a CBR a
<tt class="option">vbitrate</tt>=végtelen kapcsolóval és a alapértelmezett 2-es
<tt class="option">vqmin</tt>-nal.
</p><p>
A konstans kvantálás problémája, hogy a megadott kvantálót alkalmazza, akár
szükséges a macroblock-hoz, akár nem. Lehet, hogy használható lenne egy
nagyobb kvantálás is a mackroblock-on a vizuális minőség feláldozása nélkül
is. Miért pazarolnánk a biteket szükségtelenül alacsony kvantálóra? A
CPU-d annyi ciklusa lehet, amennyi időd csak van, de a merevlemezed véges.
</p><p>
Két lépéses kódolásban az első lépés úgy rip-eli a filmet, mintha CBR lenne,
de megtartja a tulajdonságok listáját minden egyes képkockánál. Ezeket az
adatokat használja fel aztán a második lépésben a használni kívánt kvantálót
meghatározó intelligens döntésekben. Gyors akciónál vagy nagyon részletes
jeleneteknél magasabb kvantálót használ, lassú mozgásnál vagy kevésbé
részletes jeleneteknél alacsonyabbat.
Általában a mozgás mennyisége sokkal fontosabb, mint a részletesség.
</p><p>
Ha használod a <tt class="option">vqscale=2</tt> kapcsolót, akkor biteket pazarolsz.
Ha a <tt class="option">vqscale=3</tt> kapcsolót adod meg, akkor nem a legjobb minőségű
rip-et kapod. Tegyük fel, hogy egy DVD-t rip-elsz <tt class="option">vqscale=3</tt>-mal,
és az eredmény 1800Kbit. Ha két lépéses kódolást csinálsz <tt class="option">vbitrate=1800</tt>
kapcsolóval, az kimeneti videó <span class="bold"><strong>jobb minőségű</strong></span> lesz
<span class="bold"><strong>ugyanolyan bitrátával</strong></span>.
</p><p>
Mivel most meggyőződtél róla, hogy a két lépéses kódolás a megfelelő módszer,
az igazi kérdés az, hogy milyen bitrátát ajánlott használni? A válasz az, hogy
nincs egyszerű válasz. Valószínűleg olyan bitrátát akarsz választani, ami a
legjobb egyensúlyt biztosítja a minőség és a fájl méret között. Ez viszont a
forrás videótól függően változik.
</p><p>
Ha a méret nem számít, egy jó kiindulási pont minden nagyon jó minőségű
rip-hez egy 2000Kbit körüli érték, plusz-mínusz 200Kbit.
A gyors akciókhoz és a nagy részletességű videókhoz vagy ha sas szemed
van, akkor választhatsz 2400-at vagy 2600-at.
Néhány DVD-nél nem fogsz különbséget felfedezni 1400Kbit-en sem. Jó ötlet
az egyes fejezeteket különböző bitrátával megnézni, hogy meglásd a
különbséget.
</p><p>
Ha egy bizonyos méretet céloztál be, valahogy ki kell számítanod a bitrátát.
De ezelőtt azt kell megtudnod, hogy mennyi helyet kell fenntartanod az
audió sáv(ok)nak, így először <a class="link" href="menc-feat-dvd-mpeg4.html#menc-feat-dvd-mpeg4-audio" title="11.1.11. Audió">ezeket
kell lerippelned</a>.
A következő egyenlettel tudod kiszámítani a bitrátát:
<code class="systemitem">bitráta = (cél_méret_Mbyteokban - hang_mérete_Mbyteokban) *
1024 * 1024 / hossz_másodpercben * 8 / 1000</code>
Például egy két órás film 702 Mbájtos CD-re való összenyomásához, 60
Mbájtnyi hang sávval, a videó bitrátájának
<code class="systemitem">(702 - 60) * 1024 * 1024 / (120*60) * 8 / 1000 =
740kbps</code>-nek kell lennie.
</p></div><div class="sect2" title="11.1.3. Megszorítások a hatékony kódoláshoz"><div class="titlepage"><div><div><h3 class="title"><a name="menc-feat-dvd-mpeg4-constraints"></a>11.1.3. Megszorítások a hatékony kódoláshoz</h3></div></div></div><p>
Az MPEG-típusú tömörítés természetéből adódóan számos megszorítás
van, amit követned kell a maximális minőség érdekében.
Az MPEG 16x16 makroblokknak nevezett négyzetre osztja fel a videót,
mindegyik 4 darab 8x8 blokk luma (intenzitás) információt és két
fél-felbontású 8x8 chroma (szín) blokkot tartalmaz (egy a vörös-világoskék
tengelyen, a másik a kék-sárga tengelyen).
Ha a film szélessége és magassága nem 16 többszöröse, a kódoló akkor is
elegendő 16x16-os makroblokkot fog használni, hogy lefedje a teljes
képet, a maradék hely veszendőbe megy.
Így ha a minőség maximalizálása a cél egy fix fájl mérettel, akkor
eléggé rossz ötlet nem 16 valamelyik többszörösét használni méretként.
</p><p>
A legtöbb DVD-n van valamekkora fekete sáv a sarkokban. Ha ezeket békén
hagyod, akkor több módon is <span class="bold"><strong>nagyon</strong></span>
rontják a minőséget.
</p><div class="orderedlist"><ol class="orderedlist" type="1"><li class="listitem"><p>
  Az MPEG-típusú tömörítés nagyban függ a frekvencia tartományok
  transzformálásától is, általában a Diszkrét Koszinusz Transzformációt
  (DCT) használják, ami hasonló a Fourier transzformációhoz. Ez a fajta
  kódolás hatékony a minták és a sima átmenetek átalakításához, de
  nehezen bírkózik meg az éles élekkel. Ezek elkódolásához sokkal több
  bitre van szüksége, különben egy gyűrűsödésnek nevezett mellékhatás
  jelenik meg.
  </p><p>
  A frekvencia transzformáció (DCT) külön hajtódik végre minden egyes
  makroblokkon (tulajdonképpen minden blokkon), így ez a probléma csak
  akkor jelentkezik, ha az éles él a blokkon belül van. Ha a fekete
  határ épp olyan pixel határon kezdődik, ami 16 többszöröse, akkor nincs
  probléma. Habár a fekete határok a DVD-ken ritkán vannak szépen
  eligazítva, így a gyakorlatban majdnem mindig vágni kell, hogy
  elkerüld ez a büntetést.
  </p></li></ol></div><p>
A frekvencia tartományok kódolása mellett az MPEG-típusú tömörítés
mozgó vektorokat használ a képkockák közötti változások ábrázolásához.
A mozgó vektorok természetesen kevésbé hatékonyak a sarkokból érkező
új tartalomnál, mert az még nincs jelen az előző képkockán. Amíg a
tartalom a sarkok felé terjed ki, a mozgó vektoroknak nincs problémájuk
a tartalom kifelé mozgásával. Habár a fekete határok megjelenésekor
lehetnek gondok:
</p><div class="orderedlist"><ol class="orderedlist" start="2" type="1"><li class="listitem"><p>
  Minden egyes makroblokknál az MPEG-típusú kódolás egy vektort is
  eltárol, mely azt mondja meg, hogy az előző képkocka melyik részét
  kell átmásolni ebbe a makroblokkba a következő kocka megbecsléséhez.
  Csak a megmaradt különbséget kell elkódolni. Ha a makroblokkot
  kettéosztja a kép széle és a fekete sáv, akkor a kép többi részének
  mozgó vektorai felül fogják írni a fekete sávot. Ez azt jelenti,
  hogy sok bitet kell elpazarolni vagy a határ felülírt részének
  újrafeketítéséhez vagy (inkább) a mozgó vektor nem kerül
  felhasználásra és így a makroblokk összes változását expliciten el
  kell kódolni. Mindkét esetben jelentősen romlik a kódolás
  hatékonysága.
  </p><p>
  Ez a probléma szintén csak akkor jelentkezik, ha a fekete sáv nem 16
  többszörösű pixel-határon van.
  </p></li><li class="listitem"><p>
  Végül tegyük fel, hogy van egy makroblokkunk a kép belsejében és
  egy objektum mozog be ebbe a blokkba a kép sarka felől. Az
  MPEG-típusú kódolás nem tudja azt mondani, hogy "másold át azt a
  részt, ami a kép belsejében van, de a fekete sávot ne". Így a
  fekete sáv is átmásolódik és így rengeteg bitet kell feláldozni
  a kép ott lévő részének újrakódolásához.
  </p><p>
  Ha a kép tovább fut az elkódolt terület sarka felé, az MPEG-nek
  speciális optimalizációi vannak az kép szélén lévő pixelek
  ismétlődő másolására, ha a mozgó vektorok a kódolt területen
  kívülről jönnek. Ez a tulajdonság haszontalanná válik, ha a
  filmen fekete sávok vannak. Az első két problémával ellentétben
  itt nem segít a 16 többszörösére való igazítás.
  </p></li><li class="listitem"><p>
  Habár a sávok teljesen feketék és soha nem változnak, mindenképpen
  egy kis plusz munkát igényelnek, mivel több macroblokk van.
</p></li></ol></div><p>
A fenti okok miatt javasolt, hogy teljesen vágd le a fekete sávokat.
Továbbá ha a kép sarkainál zaros/torz rész van, ennek a levágása is
javít a kódolási hatékonyságon. A keményvonalas videósok, akik az
eredeti tartalmat akarják megtartani, amennyire csak lehet, biztos
tiltakozni fognak ez ellen, de ha nem tervezed konstant kvantálás
használatát, akkor a vágás miatt nyert minőségjavulás jelentősen
nagyobb lesz, mint a sarkok levágása miatti információvesztés.
</p></div><div class="sect2" title="11.1.4. Vágás és méretezés"><div class="titlepage"><div><div><h3 class="title"><a name="menc-feat-dvd-mpeg4-crop"></a>11.1.4. Vágás és méretezés</h3></div></div></div><p>
Emlékezz rá az előző fejezetből, hogy a végső képméret, amibe kódolsz,
16 többszöröse ajánlott, hogy legyen (mind szélességben, mind magasságban).
Ezt vágással, méretezéssel vagy ezek kombinációjával érheted el.
</p><p>
Vágásnál van egy pár ökölszabály, amit jó ha betartasz, ha nem akarsz
kárt tenni a filmben.
A normál YUV formátum 4:2:0, a chroma (szín) információkat almintaként
tárolja, pl. a chroma csak fele annyiszor kerül mintázásra minden
irányban, mint a luma (intenzítás) információk.
Tanulmányozd ezt a diagramot, ahol L jelenti a luma mintázási pontokat
és C a chroma-kat!
</p><div class="informaltable"><table border="1" width="40%"><colgroup><col align="center"><col align="center"><col align="center"><col align="center"><col align="center"><col align="center"><col align="center"><col align="center"></colgroup><tbody><tr><td align="center">L</td><td align="center">L</td><td align="center">L</td><td align="center">L</td><td align="center">L</td><td align="center">L</td><td align="center">L</td><td align="center">L</td></tr><tr><td colspan="2" align="center">C</td><td colspan="2" align="center">C</td><td colspan="2" align="center">C</td><td colspan="2" align="center">C</td></tr><tr><td align="center">L</td><td align="center">L</td><td align="center">L</td><td align="center">L</td><td align="center">L</td><td align="center">L</td><td align="center">L</td><td align="center">L</td></tr><tr><td align="center">L</td><td align="center">L</td><td align="center">L</td><td align="center">L</td><td align="center">L</td><td align="center">L</td><td align="center">L</td><td align="center">L</td></tr><tr><td colspan="2" align="center">C</td><td colspan="2" align="center">C</td><td colspan="2" align="center">C</td><td colspan="2" align="center">C</td></tr><tr><td align="center">L</td><td align="center">L</td><td align="center">L</td><td align="center">L</td><td align="center">L</td><td align="center">L</td><td align="center">L</td><td align="center">L</td></tr></tbody></table></div><p>
Amint láthatod, a kép sorai és oszlopai természetszerűleg párokba
rendeződnek. Így a vágási eltolásodnak és a méreteidnek páros
számoknak <span class="emphasis"><em>kell</em></span> lenniük.
Ha nem, akkor a chroma nem fog rendes sort alkotni a luma-val.
Elméletben lehetséges a vágás páratlan eltolással, de ehhez a
chroma újramintázása szükséges, ami egy veszteséges művelet és
nem is támogatja a vágó szűrő.
</p><p>
Továbbá az átlapolt videót a következőképpen mintázzák:
</p><div class="informaltable"><table border="1" width="80%"><colgroup><col align="center"><col align="center"><col align="center"><col align="center"><col align="center"><col align="center"><col align="center"><col align="center"><col align="center"><col align="center"><col align="center"><col align="center"><col align="center"><col align="center"><col align="center"><col align="center"></colgroup><tbody><tr><td colspan="8" align="center">Top field</td><td colspan="8" align="center">Bottom field</td></tr><tr><td align="center">L</td><td align="center">L</td><td align="center">L</td><td align="center">L</td><td align="center">L</td><td align="center">L</td><td align="center">L</td><td align="center">L</td><td align="center"> </td><td align="center"> </td><td align="center"> </td><td align="center"> </td><td align="center"> </td><td align="center"> </td><td align="center"> </td><td align="center"> </td></tr><tr><td colspan="2" align="center">C</td><td colspan="2" align="center">C</td><td colspan="2" align="center">C</td><td colspan="2" align="center">C</td><td align="center"> </td><td align="center"> </td><td align="center"> </td><td align="center"> </td><td align="center"> </td><td align="center"> </td><td align="center"> </td><td align="center"> </td></tr><tr><td align="center"> </td><td align="center"> </td><td align="center"> </td><td align="center"> </td><td align="center"> </td><td align="center"> </td><td align="center"> </td><td align="center"> </td><td align="center">L</td><td align="center">L</td><td align="center">L</td><td align="center">L</td><td align="center">L</td><td align="center">L</td><td align="center">L</td><td align="center">L</td></tr><tr><td align="center">L</td><td align="center">L</td><td align="center">L</td><td align="center">L</td><td align="center">L</td><td align="center">L</td><td align="center">L</td><td align="center">L</td><td align="center"> </td><td align="center"> </td><td align="center"> </td><td align="center"> </td><td align="center"> </td><td align="center"> </td><td align="center"> </td><td align="center"> </td></tr><tr><td align="center"> </td><td align="center"> </td><td align="center"> </td><td align="center"> </td><td align="center"> </td><td align="center"> </td><td align="center"> </td><td align="center"> </td><td colspan="2" align="center">C</td><td colspan="2" align="center">C</td><td colspan="2" align="center">C</td><td colspan="2" align="center">C</td></tr><tr><td align="center"> </td><td align="center"> </td><td align="center"> </td><td align="center"> </td><td align="center"> </td><td align="center"> </td><td align="center"> </td><td align="center"> </td><td align="center">L</td><td align="center">L</td><td align="center">L</td><td align="center">L</td><td align="center">L</td><td align="center">L</td><td align="center">L</td><td align="center">L</td></tr><tr><td align="center">L</td><td align="center">L</td><td align="center">L</td><td align="center">L</td><td align="center">L</td><td align="center">L</td><td align="center">L</td><td align="center">L</td><td align="center"> </td><td align="center"> </td><td align="center"> </td><td align="center"> </td><td align="center"> </td><td align="center"> </td><td align="center"> </td><td align="center"> </td></tr><tr><td colspan="2" align="center">C</td><td colspan="2" align="center">C</td><td colspan="2" align="center">C</td><td colspan="2" align="center">C</td><td align="center"> </td><td align="center"> </td><td align="center"> </td><td align="center"> </td><td align="center"> </td><td align="center"> </td><td align="center"> </td><td align="center"> </td></tr><tr><td align="center"> </td><td align="center"> </td><td align="center"> </td><td align="center"> </td><td align="center"> </td><td align="center"> </td><td align="center"> </td><td align="center"> </td><td align="center">L</td><td align="center">L</td><td align="center">L</td><td align="center">L</td><td align="center">L</td><td align="center">L</td><td align="center">L</td><td align="center">L</td></tr><tr><td align="center">L</td><td align="center">L</td><td align="center">L</td><td align="center">L</td><td align="center">L</td><td align="center">L</td><td align="center">L</td><td align="center">L</td><td align="center"> </td><td align="center"> </td><td align="center"> </td><td align="center"> </td><td align="center"> </td><td align="center"> </td><td align="center"> </td><td align="center"> </td></tr><tr><td align="center"> </td><td align="center"> </td><td align="center"> </td><td align="center"> </td><td align="center"> </td><td align="center"> </td><td align="center"> </td><td align="center"> </td><td colspan="2" align="center">C</td><td colspan="2" align="center">C</td><td colspan="2" align="center">C</td><td colspan="2" align="center">C</td></tr><tr><td align="center"> </td><td align="center"> </td><td align="center"> </td><td align="center"> </td><td align="center"> </td><td align="center"> </td><td align="center"> </td><td align="center"> </td><td align="center">L</td><td align="center">L</td><td align="center">L</td><td align="center">L</td><td align="center">L</td><td align="center">L</td><td align="center">L</td><td align="center">L</td></tr></tbody></table></div><p>
Amint láthatod a minták nem ismétlődnek meg a 4 sor után.
Így az átlapolt videóhoz a vágás y-eltolásának és a magasságának
4 többszörösének kell lennie.
</p><p>
A natív DVD felbontás 720x480 NTSC-vel és 720x576 PAL-lal, de van egy
arányjelző is, ami megmutatja, hogy teljes képernyős (4:3) vagy széles
vásznú (16:9). Sok (ha nem az összes) széles képernyős DVD nem szigorúan
16:9-es, vagy 1.85:1-hez vagy 2.35:1-hez (cinescope). Ez azt jelenti,
hogy fekete sávok lesznek a videón, amit le kell vágni.
</p><p>
Az <span class="application">MPlayer</span> rendelkezik egy crop detection
szűrővel, ami megállapítja a levágandó téglalapot (<tt class="option">-vf cropdetect</tt>).
Futtasd az <span class="application">MPlayer</span>t a
<tt class="option">-vf cropdetect</tt> kapcsolóval és kiírja a vágási
beállításokat a határok eltávolításához.
A filmet elegendő ideig kell engedned futni ahhoz, hogy legyen
teljesen lefedett kép és helyes vágási eredményeket kapj.
</p><p>
Ezután teszteld le a kapott értékeket az <span class="application">MPlayer</span>rel,
felhasználva a <tt class="option">cropdetect</tt> által kiírt parancssort és állíts
a téglalapon, ha szükséges.
A <tt class="option">téglalap</tt> szűrő segít neked a vágási téglalap
filmen való, interaktív módon történő elhelyezésében.
Emlékezz, és kövesd a fenti oszthatósági ökölszabályokat, nehogy
félreigazítsd a chroma plane-eket.
</p><p>
Bizonyos esetekben a méretezés nem kívánatos.
A méretezés függőleges irányban nehéz átlapolt videónál és ha meg
akarod őrizni az átlapoltságot, tartózkodnod kell a méretezéstől.
Ha nem fogsz méretezni, de 16 többszörösét akarod használni
képméretként, túl kell vágnod a filmet.
Ne vágj kisebbet, mert a fekete szélek nagyon rosszak kódoláskor!
</p><p>
Mivel az MPEG-4 16x16-os macroblock-okat használ, meg kell győződnöd róla,
hogy a kódolt videó mindegyik dimenziója 16 többszöröse-e, különben rontod
a minőséget, különösen alacsony bitrátánál. Ezt megteheted a levágandó
terület szélességének és magasságának 16 legközelebbi többszörösére való
kerekítésével.
Amint az már szerepelt korábban, vágásnál növelni szeretnéd az y-offszetet
a régi és az új magasság közötti különbség felével, így a keletkező videó
elmozdul a kép középpontjából. A DVD videó mintavételezési módja miatt meg
kell győződnöd róla, hogy az offszet páros szám-e. (Valójában íratlan
szabály, hogy soha ne használj páratlan értékeket semmilyen paraméternek
se, ha vágsz vagy méretezel egy videót.) Ha nem akarsz pár extra pixelt
eldobni, akkor a videó méretezését kell megfontolnod inkább. Ezt nézzük
meg a következő példánkban.
Tulajdonképpen engedélyezheted a <tt class="option">cropdetect</tt> szűrőnek,
hogy ezt az egészet megcsinálja helyetted, mivel van egy opcionális
<tt class="option">kerekítési</tt> paramétere, ami alapértelmezésként 16.
</p><p>
Szintén figyelned kell a "félfekete" pixelekre a sarkokban. Győződj meg
róla, hogy ezeket szintén levágtad, különben olyan biteket pazarolsz el
ott, amiket máshoz jobban felhasználhatnál.
</p><p>
Miután mindent elmondtunk és kész, valószínűleg olyan videót kapsz, aminek
a pixeljei nem éppen 1.85:1 vagy 2.35:1 arányúak, de legalább valami hasonló.
Az új képarányt kiszámíthatod kézzel is, de a <span class="application">MEncoder</span>
rendelkezik egy kapcsolóval a <code class="systemitem">libavcodec</code>hez, amit <tt class="option">autoaspect</tt>-nek
hívnak, ami megcsinálja ezt neked. Ne méretezd át ezt a videót a pixelek
négyszögletesítéséhez, hacsak nem akarod pazarolni a helyet a merevlemezeden.
A méretezés történhet lejátszáskor, és a lejátszó az AVI-ban tárolt arányt
fogja használni a megfelelő felbontás megállapításához.
Sajnos nem minden lejátszó teszi kötelezővé ezt az auto-méretezési
információt, ezért lehet, hogy mégis átméretezésre kényszerülsz.
</p></div><div class="sect2" title="11.1.5. Felbontás és bitráta kiválasztása"><div class="titlepage"><div><div><h3 class="title"><a name="menc-feat-dvd-mpeg4-resolution-bitrate"></a>11.1.5. Felbontás és bitráta kiválasztása</h3></div></div></div><p>
Ha nem konstans kvantálási módban fogsz kódolni, akkor meg kell adnod
a bitrátát.
A bitráta koncepciója elég egyszerű.
A filmed tárolására másodpercenként felhasznált bitek (átlagos) száma.
Normális esetben a bitrátát kilobit (1000 bit) per másodpercben mérik.
A filmed mérete a lemezen egyenlő a bitráta és a film hosszának
szorzatával, plusz egy kis "túlterheléssel" (lásd
<a class="link" href="menc-feat-dvd-mpeg4.html#menc-feat-dvd-mpeg4-muxing-avi-limitations" title="11.1.12.2. Az AVI konténer korlátai">az AVI konténer</a>t
például).
Az egyéb paraméterek, mint a méretezés, vágás, stb.
<span class="bold"><strong>nem</strong></span> változtatják meg a fájl méretét,
amíg nem változtatsz a bitrátán is.
</p><p>
A bitráta <span class="bold"><strong>nem</strong></span> aránylik a felbontáshoz.
Ezért mondhatjuk, hogy egy 320x240-es fájl 200 kbit/sec-kel nem lesz
ugyan olyan minőségű, mint ugyan az a film 640x480-ban, 800 kbit/sec-kel!
Ennek két oka van:
</p><div class="orderedlist"><ol class="orderedlist" type="1"><li class="listitem"><p>
  <span class="bold"><strong>Érzékelhető</strong></span>: Jobban észreveszed az
  MPEG hibáit ha fel vannak nagyítva!
  A hibák a blokkok (8x8) méretezéséből adódnak.
  A szemed nem látja meg a hibát 4800 kicsi blokkban olyan könnyen,
  mint 1200 nagy blokkban (feltételezve, hogy mindkettőt teljes
  képernyőre nagyítod).
</p></li><li class="listitem"><p>
  <span class="bold"><strong>Elméleti</strong></span>: Ha egy képet leméretezel,
  de ugyan akkora méretű (8x8) blokkokat használsz a frekvenciatartomány
  transzformálásához, több adatot mozgatsz a magasabb
  frekvenciatartományokba. Egyszerűen fogalmazva, minden pixel több
  részletet fog tartalmazni, mint előtte.
  Így habár a leméretezett képed kiterjedésében az információ 1/4-edét
  tartalmazza csak, mégis az információ nagy részét tartalmazhatja a
  frekvenciatartományban (feltéve, hogy a magas frekvenciák nincsenek
  kellőképpen kihasználva az eredeti 640x480-as képen).
</p></li></ol></div><p>
</p><p>
A régi leírások egy "bit per pixel" megközelítés szerint javasolták
a bitráta és a felbontás megválasztását, ez azonban általában nem
helyes a fentiek miatt.
A legjobb becslésnek az tűnik, ha a bitráta léptéke a felbontás
négyzetgyökével arányos, így a 320x240 és 400 kbit/sec
összehasonlítható a 640x480 és 800 kbit/sec-kel.
Azonban ez még nem lett bizonyítva sem elméleti sem gyakorlati
törvénnyel. Továbbá, tekintve, hogy a filmek nagyon változatosak
a zajtól, részletességtől, a mozgás szögétől, és a többitől függően,
haszontalan általános tanácsokat adni bit per átló hosszára
vonatkozóan (a bit per pixel analógiája, a négyzetgyök
felhasználásával).
</p><p>
Eddig csak a felbontás és a bitráta kiválasztás nehézségeiről
beszéltünk.
</p><div class="sect3" title="11.1.5.1. Felbontás kiszámítása"><div class="titlepage"><div><div><h4 class="title"><a name="menc-feat-dvd-mpeg4-resolution-bitrate-compute"></a>11.1.5.1. Felbontás kiszámítása</h4></div></div></div><p>
A következő képések segítenek a kódolásod felbontásának kiszámításában,
a videód túlzott mértékben történő torzítása nélkül, a forrás videó
számos tulajdonságának figyelembe vételével.
Először, ki kell számítanod az elkódolt képarányt:
<code class="systemitem">ARc = (Wc x (ARa / PRdvd )) / Hc</code>

</p><div class="itemizedlist" title="ahol:"><p class="title"><b>ahol:</b></p><ul class="itemizedlist" type="disc"><li class="listitem"><p>
  Wc és Hc a vágott videó szélessége és a magassága,
</p></li><li class="listitem"><p>
  ARa a megjelenített kép aránya, ami általában 4/3 vagy 16/9,
</p></li><li class="listitem"><p>
  PRdvd a DVD pixel rátája, ami PAL DVD-k esetén 1.25=(720/576)
  és 1.5=(720/480) NTSC DVD-knél.
</p></li></ul></div><p>
</p><p>
Ezután, kiszámíthatod az X és Y felbontást, egy bizonyos Tömörítési
Minőség (Compression Quality, CQ) faktornak megfelelően:
<code class="systemitem">ResY = INT(SQRT( 1000*Bitrate/25/ARc/CQ )/16) * 16</code>
és
<code class="systemitem">ResX = INT( ResY * ARc / 16) * 16</code>
</p><p>
Oké, de mi az a CQ?
A CQ reprezentálja a kódolás pixelenkénti és képkockánkénti bitszükségletét.
Nagy vonalakban minél nagyobb a CQ, annál kisebb a valószínűsége, hogy
kódolási hibát fog látni.
Bár ha van cél méret a filmedhez (1 vagy 2 CD például), akkor korlátozott
a felhasználható bitek száma; ezért szükséges, hogy megfelelő arányt találj
a tömörség és a minőség között.
</p><p>
A CQ függ a bitrátától, a videó codec hatékonyságától és a film felbontásától.
Ha növelni akarod a CQ-t, általában leméretezést kell végezned a filmen,
mivel a bitráta a cél méret és a film hosszából számítódik, ami konstans.
Az MPEG-4 ASP codec-ekkel, mint pl. az <code class="systemitem">Xvid</code>
és a <code class="systemitem">libavcodec</code>, egy 0,18 alatti
CQ általában nagyon kockás képet eredményez, mert nincs
elég bit minden egyes makroblokk információinak eltárolásához. (Az MPEG4,
mint sok más codec, csoportokba gyűjti a pixeleket a kép tömörítéséhez;
ha nincs elég bit, láthatóvá válik ezen blokkok széle.)
Ezért ésszerű a CQ-t a 0,20-0,22-es tartományból választani 1 CD-s rip
esetén, és 0,26-0,28-ból a 2 CD-snél a szabványos kódolási opciókkal.
A <a class="link" href="menc-feat-enc-libavcodec.html#menc-feat-mpeg4-lavc-example-settings" title="11.3.4. Kódolás beállítási példák"><code class="systemitem">libavcodec</code></a>-hez
és az
<a class="link" href="menc-feat-xvid.html#menc-feat-xvid-example-settings" title="11.4.4. Kódolás beállítási példák"><code class="systemitem">Xvid</code></a>-hez
itt felsoroltaknál fejlettebb kódolási opciók segítségével lehetséges
ugyan ilyen minőség elérése 0,18-0,20-as CQ mellett egy 1 CD-s rip
esetén és 0,24-0,26-ossal 2 CD-s rip-nél.
Az MPEG-4 AVC codec-eknél, mint pl. az <code class="systemitem">x264</code>,
használhatsz 0,14-0,16-os CQ tartományt a szabványos kódolási opciókkal
és lemehetsz akár 0,10-0,12-ig is az
<a class="link" href="menc-feat-x264.html#menc-feat-x264-example-settings" title="11.5.2. Kódolás beállítási példák"><code class="systemitem">x264</code> fejlett kódolási beállításaival</a>.
</p><p>
Kérlek figyelj rá, hogy a CQ csak egy mutató, mely az elkódolt tartalomtól
függ, egy 0,18-as CQ-val jól nézhet ki egy Bergman, szemben az olyan
filmekkel, mint például a Mátrix, ami sok gyors-mozgású részt tartalmaz.
Másrészt nem éri meg növelni a CQ-t 0,30-nál magasabbra, mert csak pazarolni
fogod a biteket észrevehető minőségi nyereség nélkül.
Vedd figyelembe, amint azt már korábban is említettük, hogy az alacsony
felbontású videókhoz nagyobb CQ kell (összehasonlítva pl. a DVD felbontással),
hogy jól nézzen ki.
</p></div></div><div class="sect2" title="11.1.6. Szűrés"><div class="titlepage"><div><div><h3 class="title"><a name="menc-feat-dvd-mpeg4-filtering"></a>11.1.6. Szűrés</h3></div></div></div><p>
A <span class="application">MEncoder</span> videó szűrői használatának
ismerete alapvető fontosságú a jó kódoláshoz.
Az összes videó feldolgozás a szűrőkön keresztül történik -- vágás,
méretezés, szín állítás, zajszűrés, élesítés, deinterlacing, telecine,
inverz telecine és deblocking, csak hogy néhányat megemlítsünk.
A támogatott formátumok sokaságával együtt a <span class="application">MEncoder</span>
szűrőinek változatossága a fő előnye a hasonló programokkal szemben.
</p><p>
A szűrők láncban töltődnek be a -vf kapcsoló használatával:

</p><pre class="screen">-vf szuro1=opciok,szuro2=opciok,...</pre><p>

A legtöbb szűrő több numerikus opciót vár, kettőspontokkal elválasztva,
de igazából a szintaxis szűrőről szűrőre változik, ezért olvasd el a man
oldal általad használni kívánt szűrőhöz tartozó részét!
</p><p>
A szűrők olyan sorrendben módosítják a videót, ahogy be lettek töltve.
Például a következő lánc:

</p><pre class="screen">-vf crop=688:464:12:4,scale=640:464</pre><p>

először kivágja a 688x464 területű régiót (12,4)-es bal felső
sarokkal, majd az eredményt leméretezi 640x464-re.
</p><p>
Bizonyos szűrőket a szűrő lánc elején, vagy ahhoz közel kell betölteni,
ahhoz, hogy a videó dekódolótól érkező információkat megkapja, azok ne
vesszenek el vagy változzanak meg másik szűrő miatt.
A legjobb példa erre a <tt class="option">pp</tt> (utófeldolgozás, csak ha
deblock vagy dering műveleteket hajt végre), az
<tt class="option">spp</tt> (másik utófeldolgozó az MPEG mellékhatások eltávolítására),
a <tt class="option">pullup</tt> (inverz telecine) és a
<tt class="option">softpulldown</tt> (a soft telecine hard telecine-re történő
konvertálása).
</p><p>
Általában olyan kevés szűrést szeretnél, amennyit csak lehet, hogy az
eredeti DVD forráshoz hű maradj. A vágás gyakran elkerülhetetlen (amint
azt fentebb leírtuk), de ne méretezd a videót. Noha a kicsinyítés néha
előnyben részesül a magas kvantálóknál, mi szeretnénk elkerülni mindkét
dolgot: emlékezz, hogy mit határoztunk el kezdetben a bitek minőségért
történő feláldozásáról.
</p><p>
Szintén hagyd békén a gamma, kontraszt, fényerő, stb. beállításokat.
Ami jól néz ki a monitorodon nem biztos, hogy másnál is szép lesz.
Ezeket a beállításokat lejátszáskor kell elvégezni.
</p><p>
Az egyetlen dolog, amit szeretnél, a videó nagyon könnyű zajszűrőn történő
áteresztése, mint pl. <tt class="option">-vf hqdn3d=2:1:2</tt>. Ismételten, ezen
bitek jobb felhasználásáról van szó: miért vesztegessük el őket a zaj
kódolására, ha ezt a zajt lejátszás közben is hozzá tudod adni? A
<tt class="option">hqdn3d</tt> paramétereinek növelésével még jobb tömörítettséget
érhetsz el, de ha túl magasra állítod az értékeket, akkor láthatóan rontod
a kép minőségét.
A fent javasolt értékek (<tt class="option">2:1:2</tt>) eléggé konzervatívak;
kísérletezz szabadon nagyobb értékekkel és ellenőrizd az eredményeket magad.
</p></div><div class="sect2" title="11.1.7. Interlacing és Telecine"><div class="titlepage"><div><div><h3 class="title"><a name="menc-feat-dvd-mpeg4-interlacing"></a>11.1.7. Interlacing és Telecine</h3></div></div></div><p>
Majdnem minden filmet 24 fps-sel fényképeznek. Mivel az NTSC 30000/1001
fps-es, némi átdolgozás szükséges ezen a 24 fps-es videón, hogy a
megfelelő NTSC framerátával menjen. Ez az eljárást 3:2 pulldown-nak hívják,
de általában csak telecine néven hivatkoznak rá (mivel a pulldownt gyakran
használják a telecine eljárás során), ami egyszerűen leírva lelassítja a
filmet 24000/1001 fps-re és megismétel minden negyedik képkockát.
</p><p>
Ez nem speciális feldolgozás, habár minden PAL DVD esetében megcsinálják,
ami 25 fps-sel megy. (Műszaki szempontból a PAL-t lehet telecine-elni,
ezt 2:2 pulldown-nak hívják, de ez nem terjedt el a gyakorlatban.) A 24
fps-es filmet egyszerűen 25 fps-sel játszák le. Az eredmény az, hogy a
film kissé gyorsabban megy, de ha nem vagy egy földönkívüli, valószínűleg
nem fogod észrevenni a különbséget. A legtöbb PAL DVD zajszint-javított
audiót tartalmaz, így amikor 25 fps-sel játszák le őket, a hangok jól
hangzanak, még akkor is, ha az audió sáv (és ebből adódóan az egész film)
az NTSC DVD-kénél 4%-kal lassabb futási idővel megy.
</p><p>
Mivel a PAL DVD-ben a videót nem változtatták meg, nem kell aggódnod a
frameráta miatt. A forrás 25 fps-es és a rip-ed is 25 fps-es lesz. De ha
egy NTSC DVD filmet rippelsz, fordított telecine-t kell alkalmaznod.
</p><p>
A 24 fps-sel felvett filmeknél az NTSC DVD-n lévő videó vagy telecine-elt
30000/1001 fps-re vagy pedig progresszív 24000/1001 fps-es és szándék szerint
a DVD lejátszó végzi a telecine-t lejátszás közben. Másrészről a TV sorozatok
általában csak átlapoltak, nem telecine-ltek. Ez azonban nem ökölszabály:
néhány TV sorozat átlapolt (mint a Buffy a Vámpír gyilkos) míg másik a
progresszív és az átlapolt keverékei (mint pl. az Angyal vagy a 24).
</p><p>
Javasoljuk, hogy olvasd el a
<a class="link" href="menc-feat-telecine.html" title="11.2. Mit kezdjünk a telecine-nel és az átlapolással NTSC DVD-ken">mit kezdjünk a telecine-nel és az átlapolással NTSC DVD-ken</a>
részt, hogy kezelni tudd a különböző lehetőségeket.
</p><p>
Bár ha legtöbbször csak filmeket rippelsz, valószínűleg vagy 24 fps-es
progresszív vagy telecine-lt videóval lesz dolgod, ezekben az esetekben
használhatod a <tt class="option">pullup</tt> szűrőt a <tt class="option">-vf
pullup,softskip</tt> kapcsolóval.
</p></div><div class="sect2" title="11.1.8. Átlapolt videó elkódolása"><div class="titlepage"><div><div><h3 class="title"><a name="menc-feat-dvd-mpeg4-encoding-interlaced"></a>11.1.8. Átlapolt videó elkódolása</h3></div></div></div><p>
Ha az általad elkódolni kívánt film átlapolt (NTSC videó vagy
PAL videó), el kell döntened, hogy akarsz-e deinterlacing-et
vagy sem.
A deinterlacing használhatóvá teszi a filmed progresszív scan-es
megjelenítőkön, mint pl. a számítógép monitorok vagy a projektorok,
van ára is: az 50 vagy 60000/1001-es mezőráta feleződik 25 vagy
30000/1001 képkocka per másodpercre és így a filmedben tárolt
információk durván fele elveszik a jelentős mozgást tartalmazó
részekben.
</p><p>
Így hát ha archiválási okokból jó minőség kell, akkor kerüld el a
deinterlace-t.
Bármikor deinterlace-lheted a filmet lejátszás közben is, ha
progresszív scan-es megjelenítőd van.
A jelenleg kapható számítógépek teljesítménye deinterlacing szűrő
használatára kényszerítik a lejátszókat, ami egy kis mértékű
képminőség romlást okoz.
Azonban a jövő lejátszói képesek lesznek az átlapolt képernyő
TV-vé történő átváltoztatására, teljes mezőrátás deinterlacing-re és
az átlapolt videó 50 vagy 60000/1001 teljes képkocka per másodpercre
interpolálására.
</p><p>
Fokozott figyelemmel kell eljárni, ha átlapolt videóval dolgozol:
</p><div class="orderedlist"><ol class="orderedlist" type="1"><li class="listitem"><p>
  A vágási magasság és y-offszet 4 többszöröse kell, hogy legyen.
</p></li><li class="listitem"><p>
  Bármilyen függőleges átméretezést átlapolt módban kell elvégezni.
</p></li><li class="listitem"><p>
  Az utófeldolgozó és a zajcsökkentő szűrők nem az elvártnak megfelelően
  működnek, ha nem gondoskodsz róla, hogy egyszerre csak egy mezővel
  dolgozzanak, különben a nem megfelelő használat miatt sérülhet a videó.
</p></li></ol></div><p>
Mindezt észben tartva, itt az első példánk:
</p><pre class="screen">
mencoder <em class="replaceable"><code>capture.avi</code></em> -mc 0 -oac lavc -ovc lavc -lavcopts \
  vcodec=mpeg2video:vbitrate=6000:ilme:ildct:acodec=mp2:abitrate=224
</pre><p>
Figyelj az <tt class="option">ilme</tt> és az <tt class="option">ildct</tt> kapcsolókra.
</p></div><div class="sect2" title="11.1.9. Megjegyzések az Audió/Videó szinkronizáláshoz"><div class="titlepage"><div><div><h3 class="title"><a name="menc-feat-dvd-mpeg4-av-sync"></a>11.1.9. Megjegyzések az Audió/Videó szinkronizáláshoz</h3></div></div></div><p>
A <span class="application">MEncoder</span> audió/videó szinkronizáló
algoritmusai azzal a szándékkal lettek megtervezve, hogy képesek
legyenek a sérült szinkronú filmek megjavítására.
De néhány esetben a képkockáknál szükségtelen kihagyásokat és duplikálásokat
valamint kis mértékben A/V deszinkronizációt okozhatnak, ha megfelelő
bementük van (természetesen az A/V szinkron dolgok csak akkor érvényesek,
ha feldolgozod vagy másolod az audió sávot a videó átkódolása közben,
ami nagyon javasolt).
Ezért lehet, hogy az alapértelmezett A/V szinkronizációra kell váltanod
a <tt class="option">-mc 0</tt> opcióval, vagy írd ezt bele a
<code class="systemitem">~/.mplayer/mencoder</code> konfigurációs fájlodba,
feltéve, hogy csak hibátlan anyaggal dolgozol (DVD, TV mentés, nagyon
jó minőségű MPEG-4 rip, stb.) és nem hibás ASF/RM/MOV fájlokkal.
</p><p>
Ha még további különös képkocka kihagyásokat és duplázásokat akarsz
elkerülni, használhatod az <tt class="option">-mc 0</tt> és <tt class="option">-noskip</tt>
kapcsolókat együtt is.
Ez megakadályoz <span class="emphasis"><em>mindenféle</em></span> A/V szinkronizációt és
egy az egyben másolja a képkockákat, így nem használhatod olyan szűrőkkel,
melyek megjósolhatatlanul hozzáadnak vagy elvesznek képkockákat, vagy ha
a bemeneti fájlodnak változó framerátája van!
Ezért a <tt class="option">-noskip</tt> használata általában nem javasolt.
</p><p>
A <span class="application">MEncoder</span> által támogatott, úgy nevezett
"három lépéses" audió kódolás a visszajelzések szerint A/V deszinkronizációt
okoz.
Ez különösen akkor történik, ha bizonyos szűrőkkel együtt használják,
így jelenleg <span class="emphasis"><em>nem</em></span> javasolt a három lépéses audió
mód használata.
Ez a képesség csak kompatibilítási okok miatt maradt meg és a haladó
felhasználóknak, akik tudják, hogy mikor lehet használni és mikor nem.
Ha ezelőtt még soha nem hallottál a három lépéses módról, felejtsd el azt
is, hogy megemlítettük!
</p><p>
Érkeztek jelentések A/V deszinkronizációról <span class="application">MEncoder</span>rel
stdin-ről történő kódolás esetén is.
Ne tedd ezt! Mindig használj fájlt vagy CD/DVD/stb. eszközt forrásként.
</p></div><div class="sect2" title="11.1.10. A videó codec kiválasztása"><div class="titlepage"><div><div><h3 class="title"><a name="menc-feat-dvd-mpeg4-codec"></a>11.1.10. A videó codec kiválasztása</h3></div></div></div><p>
A használandó videó codec kiválasztása több dologtól függ, mint például a
méret, minőség, stream-elhetőség, használhatóság és elterjedtség, melyeket
a személyes igények és a technikai korlátok határoznak meg.
</p><div class="itemizedlist"><ul class="itemizedlist" type="disc"><li class="listitem"><p>
  <span class="bold"><strong>Tömörítési hatékonyság</strong></span>:
  Érthető módon a legtöbb új generációs codec a minőség és a tömörítés
  javítására íródott.
  Ezért ezen leírás szerzői és még sok más szerint sem tudsz rosszat
  választani,
  <sup>[<a name="fn-menc-feat-dvd-mpeg4-codec-cpu" href="#ftn.fn-menc-feat-dvd-mpeg4-codec-cpu" class="footnote">1</a>]</sup>
  akár MPEG-4 AVC codec-et választasz, mint például az
  <code class="systemitem">x264</code>, akár egy MPEG-4 ASP
  codec-et, mint pl. a <code class="systemitem">libavcodec</code>
  MPEG-4 vagy az <code class="systemitem">Xvid</code>.
  (A haladóbb codec fejlesztőket talán érdekelheti Michael
  Niedermayer véleménye, a
  "<a class="ulink" href="http://guru.multimedia.cx/?p=10" target="_top">miért utáljuk az MPEG4-et</a>".)
  Valószínűleg az MPEG-4 ASP-vel jobb minőséget érhetsz el, mint az
  MPEG-2 codec-ekkel.
  </p><p>
  Bár az új codec-ek, melyek még erőteljes fejlesztés alatt állnak,
  tartalmazhatnak hibákat, amiket még nem fedeztek fel és amik
  tönkretehetnek egy kódolást. Ez a hátránya az új dolgok használatának.
  </p><p>
  Mint ahogy az is, hogy amikor új codec-et kezdesz használni, időt kell
  szánnod az opcióinak a megismerésére, hogy tudd, miket kell
  beállítanod a kívánt képminőség eléréséhez.
  </p></li><li class="listitem"><p>
  <span class="bold"><strong>Hardveres kompatibilítás</strong></span>:
  Általában sok idő kell, míg az asztali lejátszók elkezdenek támogatni
  egy új codec-et.
  Ennek eredménye, hogy a legtöbb csak MPEG-1 (mint a VCD, XVCD és KVCD),
  MPEG-2 (mint a DVD, SVCD és KVCD) és MPEG-4 ASP (mint a DivX, a
  <code class="systemitem">libavcodec</code> LMP4-e és az
  <code class="systemitem">Xvid</code>) lejátszására képes
  (Vigyázz: Legtöbbször nem ismerik az MPEG-4 ASP összes képességét).
  Nézd meg a lejátszód technikai specifikációját (ha van) vagy google-ozz
  körbe további információért.
</p></li><li class="listitem"><p>
  <span class="bold"><strong>Legjobb minőség kontra kódolási idő</strong></span>:
  A már jó ideje létező codec-ek (mint pl. a
  <code class="systemitem">libavcodec</code> MPEG-4-e és az
  <code class="systemitem">Xvid</code>) általában nagyon jól
  optimalizáltak mindenféle okos algoritmussal és SIMD assembly kóddal.
  Ezért a legjobb minőség per kódolási idő arány felé tartanak.
  Azonban van néhány nagyon fejlett opció, amit ha engedélyezel, nagyon
  nagy mértékben lelassítják a kódolást csekély javulást produkálva.
  </p><p>
  Ha a fantasztikus sebességet keresed, a codec alapértelmezett beállításai
  körül nézelődj (azonban így is ajánlott kipróbálni egyéb opciókat,
  amiket ezen leírás más fejezetei említenek).
  </p><p>
  Megfontolandó olyan codec-et választani, ami több-szálas módban
  dolgozza fel a forrást, azonban ez csak a több processzoros géppel
  rendelkezőknek jelent előnyt.
  A <code class="systemitem">libavcodec</code> MPEG-4 tudja
  ezt, de a sebességnövekedés eléggé korlátolt és egy kis negatív hatása
  van a képminőségre.
  Az <code class="systemitem">Xvid</code> több-szálas kódolása,
  melyet a <tt class="option">threads</tt> opció kapcsol be, használható a
  kódolási sebesség — átlagban kb. 40-60%-os — növelésére,
  nagyon csekély vagy semmilyen képromlással.
  Az <code class="systemitem">x264</code> is tudja a több-szálas
  kódolást, ami jelenleg CPU magonként 94%-kal gyorsítja fel a kódolást
  míg a PSNR-t kb. 0.005dB és 0.01dB közötti értékkel csökkenti.
  </p></li><li class="listitem"><p>
  <span class="bold"><strong>Egyéni igények</strong></span>:
  Itt válik a dolog a legirrálisabbá: ugyan azért, amiért sokan leragadtak
  a DivX 3-nál évekig, miközben az új codec-ek már csodákat műveltek,
  néhányan az <code class="systemitem">Xvid</code>-et vagy a
  <code class="systemitem">libavcodec</code> MPEG-4-ét részesítik
  előnyben az <code class="systemitem">x264</code>-hez képest.
  </p><p>
  A döntést magadnak kell meghoznod; ne hallgass azokra, akik egy codec-re
  esküsznek.
  Vegyél pár példa klippet nyers forrásokból és hasonlítsd össze a különböző
  kódolási opciókat és codec-eket, hogy megtudd, melyik a legjobb neked.
  A legjobb codec mindig az, amelyikhez a legjobban értesz, amelyik
  a legjobban néz ki szerinted a monitorodon.
  <sup>[<a name="fn-menc-feat-dvd-mpeg4-codec-playback" href="#ftn.fn-menc-feat-dvd-mpeg4-codec-playback" class="footnote">2</a>]</sup>!
  </p></li></ul></div><p>
Kérjük, nézd meg a
<a class="link" href="menc-feat-selecting-codec.html" title="10.1. Codec és konténer formátum kiválasztása">codec-ek és konténer formátumok kiválasztásáról</a>
szóló fejezetet a támogatott codec-ek listájához.
</p></div><div class="sect2" title="11.1.11. Audió"><div class="titlepage"><div><div><h3 class="title"><a name="menc-feat-dvd-mpeg4-audio"></a>11.1.11. Audió</h3></div></div></div><p>
Az audió egy sokkal könnyebben megoldható probléma: ha számít a minőség,
akkor egyszerűen hagyd úgy, ahogy van.
Még az AC-3 5.1 stream-ek is leginkább 448Kbit/s-osak és minden
bitet megérnek. Csábító lehet az audió jó minőségű Vorbis-ba történő
konvertálása, de az, hogy ma nincs egy A/V receiver-ed az AC-3 áteresztéshez,
nem jelenti azt, hogy holnap sem lesz. Készíts a jövőben is használható
DVD rip-eket az AC-3 stream megtartásával.
Megtarthatod az AC-3 stream-et a <a class="link" href="menc-feat-mpeg4.html" title='10.3. Két menetes MPEG-4 ("DivX") kódolás'>kódolás közben</a>
a videó stream-be történő közvetlen átmásolással.
Vagy ki is szedheted az AC-3 stream-et, hogy elkeverd valamilyen konténer
formátumba, mint pl. a NUT vagy a Matroska.
</p><pre class="screen">
mplayer <em class="replaceable"><code>forras_fajl.vob</code></em> -aid 129 -dumpaudio -dumpfile <em class="replaceable"><code>hang.ac3</code></em>
</pre><p>
a 129-es audió sávot kiszedi a <em class="replaceable"><code>sound.ac3</code></em> nevű
fájlba a <em class="replaceable"><code>source_file.vob</code></em>-ból (NB: a DVD VOB
fájlok általában különböző audió számozást használnak, ami azt jelenti,
hogy a 129-es VOB audio sáv a 2. audió sáv a fájlban).
</p><p>
De néha tényleg nincs más választásod, mint tovább tömöríteni a
hangot így több bit jut a videóra.
A legtöbb ember vagy MP3-at vagy Vorbis-t választ az audió tömörítéséhez.
Míg az utóbbi nagyon hely-takarékos codec, az MP3-nak jobb a hardveres
lejátszók terén a támogatottsága, bár ez a trend változóban van.
</p><p>
<span class="emphasis"><em>Ne</em></span> használd a <tt class="option">-nosound</tt>-ot ha
audióval rendelkező fájlt kódolsz, akkor se, ha az audiót később,
elkülönítve kódolod és kevered.
Bár ideális esetben működik, a <tt class="option">-nosound</tt> opció okozhat
némi problémát a parancssori kódolási beállításaidban.
Más szavakkal, a zene sáv megléte biztosítja a
<span class="quote">„<span class="quote">Too many audio packets in the buffer</span>”</span> (Túl sok audió csomag
a bufferban) és hasonló üzenetek elkerülését és a megfelelő szinkront.
</p><p>
Fel kell dolgoznod a <span class="application">MEncoder</span>rel a hangot.
Például az <tt class="option">-oac copy</tt>-val átmásolhatod az eredeti hangsávot
a kódolás közben vagy átkonvertálhatod "könnyű" 4 kHz-es mono WAV
PCM-be a <tt class="option">-oac pcm -channels 1 -srate 4000</tt> kapcsolóval.
Különben bizonyos esetekben olyan videó fájlt fog létrehozni, amiben nem
lesz szinkronban az audió.
Akkor fordulhat elő ilyen eset, ha a videó kockák száma a forrás fájlban
nem egyezik meg az audió keretek teljes hosszával vagy folyamatossági
hiba/szakadás miatt hiányzó vagy extra audió keretek vannak a fájlban.
A helyes megoldás ezen típusú problémák kezelésére csend beillesztése vagy
az audió keretek vágása ezeken a pontokon.
Azonban a <span class="application">MPlayer</span> ezt nem tudja megtenni, így
ha az AC-3-at demuxálod és egy másik alkalmazással kódolod (vagy kimented
PCM-be az <span class="application">MPlayer</span>rel), a szeletek hibásan maradnak
benne és csak képkocka eldobással/duplázással lehet javítani.
Amíg a <span class="application">MEncoder</span> látja az audiót a videó kódolása
közben, meg tudja csinálni ezt az eldobást/duplázást (ami általában rendben
van, mert teljesen sötét/jelentet váltásos helyeken történik), de ha a
<span class="application">MEncoder</span> nem látja az audiót, csak feldolgoz
minden képkockát úgy ahogy van és nem fog illeszkedni a végső audió folyamhoz
ha például összeilleszted az audió és a videó sávodat egy Matroska fájlba.
</p><p>
Mindenek előtt át kell konvertálnod a DVD hangját WAV fájlba, hogy az audió
codec használhassa bemenetként.
Például:
</p><pre class="screen">
mplayer <em class="replaceable"><code>forras_fajl.vob</code></em> -ao pcm:file=<em class="replaceable"><code>cel_hang.wav</code></em> \
  -vc dummy -aid 1 -vo null
</pre><p>
ki fogja szedni a második audió sávot a <em class="replaceable"><code>source_file.vob</code></em>
fájlból a <em class="replaceable"><code>destination_sound.wav</code></em> fájlba.
Kódolás előtt valószínűleg normalizálni akarod a hangot, mivel a DVD
audió sávjait legtöbbször alacsony hangerővel rögzítik.
Használhatod a <span class="application">normalize</span> eszközt, ami
megtalálható a legtöbb disztribúcióban.
Ha Windows-t használsz, egy eszköz, mint pl. a <span class="application">BeSweet</span>
megcsinálja ezt neked.
Vagy Vorbis-ba vagy MP3-ba kódolsz.
Például:
</p><pre class="screen">oggenc -q1 <em class="replaceable"><code>cel_hang.wav</code></em></pre><p>
elkódolja a <em class="replaceable"><code>destination_sound.wav</code></em>-ot az 1-es
kódolási minsőséggel, ami nagyjából megfelel 80Kb/s-nak és annak a
minimum minőségnek, amit legalább használnod kell, ha érdekel a minőség.
Kérlek jegyezd meg, hogy a <span class="application">MEncoder</span> jelenleg
nem tud Ogg Vorbis sávokat belekeverni a kimeneti fájlba, mert csak AVI
és MPEG konténereket támogat kimenetként és mindkettőnél audió/videó
lejátszási szinkronizációs problémákat okozhat néhány lejátszóval, ha
az AVI fájl VBR-es audió stream-et tartalmaz, mint pl. a Vorbis.
De ne aggódj, ez a dokumentáció megmutatja, hogy hogy tudod
ezt megcsinálni egyéb programokkal.
</p></div><div class="sect2" title="11.1.12. Keverés"><div class="titlepage"><div><div><h3 class="title"><a name="menc-feat-dvd-mpeg4-muxing"></a>11.1.12. Keverés</h3></div></div></div><p>
Most, hogy elkódoltad a videódat, valószínűleg szeretnéd elkeverni egy
vagy több audió sávval együtt egy film konténerbe, mint pl. az AVI,
MPEG, Matroska vagy a NUT.
A <span class="application">MEncoder</span> jelenleg csak MPEG és AVI
konténer formátumokba tud natív audió és videó kimenetet készíteni.
Például:
</p><pre class="screen">
mencoder -oac copy -ovc copy  -o <em class="replaceable"><code>kimenet_film.avi</code></em> \
  -audiofile <em class="replaceable"><code>bemenet_audio.mp2</code></em> <em class="replaceable"><code>bemenet_video.avi</code></em></pre><p>
Ez a <em class="replaceable"><code>bemenet_video.avi</code></em> videó fájlból
és a <em class="replaceable"><code>bemenet_audio.mp2</code></em> audió fájlból
elkészíti a <em class="replaceable"><code>kimenet_film.avi</code></em> fájlt.
Ez a parancs működik MPEG-1 layer I, II és III (ismertebb nevén
MP3) audióval, WAV és egy pár más audió formátummal.
</p><p>
A <span class="application">MEncoder</span>ben kísérleti jelleggel van
<code class="systemitem">libavformat</code> támogatás, ami
az FFmpeg projektből egy függvénykönyvtár, ami számos konténer keverését és
demux-álását támogatja.
Például:
</p><pre class="screen">
mencoder -oac copy -ovc copy  -o <em class="replaceable"><code>kimenet_film.asf</code></em> -audiofile <em class="replaceable"><code>bemenet_audio.mp2</code></em> \
  <em class="replaceable"><code>bemenet_video.avi</code></em> -of lavf -lavfopts format=asf</pre><p>
Ez ugyan azt csinálja, mint az előbbi példa, de a kimeneti
konténer ASF lesz.
Kérlek figyelj, hogy ez a támogatás még nagyon kísérleti (de minden
nap egyre jobb lesz) és csak akkor működik, ha az
<span class="application">MPlayer</span>t a
<code class="systemitem">libavformat</code> támogatás
bekapcsolásával fordítottad (ami azt jelenti, hogy az előre
csomagolt binárisok a legtöbb esetben nem fognak működni).
</p><div class="sect3" title="11.1.12.1. A keverés és az A/V szinkron megbízhatóságának növelése"><div class="titlepage"><div><div><h4 class="title"><a name="menc-feat-dvd-mpeg4-muxing-filter-issues"></a>11.1.12.1. A keverés és az A/V szinkron megbízhatóságának növelése</h4></div></div></div><p>
Néhány súlyos A/V szinkron problémát tapasztalhatsz, ha a videódat
valamilyen audió sávval akarod összekeverni, mégpedig azt, hogy akár
hogyan állítod az audió késleltetést, soha nem lesz megfelelő a szinkron.
Ez akkor történhet meg, ha olyan videó szűrőt használsz, ami eldob vagy
megdupláz képkockákat, mint pl. az inverz telecine szűrők.
Javasolt a <tt class="option">harddup</tt> videű szűrő hozzáillesztése a szűrő
lánc végéhez ezen problémák elkerülése érdekében.
</p><p>
A <tt class="option">harddup</tt> nélkül ha a <span class="application">MEncoder</span>
meg akar duplázni egy képkockát, a keverőre bízza a jelölés konténerbe
helyezését, hogy az utolsó képkocka még egyszer megjelenjen a szinkron
megtartása végett, aktuális képkocka írása nélkül.
A <tt class="option">harddup</tt>-pal a <span class="application">MEncoder</span>
ehelyett egyszerűen csak újra átküldi a szűrő láncon az utolsó
megjelenített képkockát.
Ez azt jelenti, hogy a kódoló <span class="emphasis"><em>pontosan</em></span> ugyan azt
a képkockát kapja meg kétszer és tömöríti be.
Ez kicsit nagyobb fájlt eredményez, de nem okoz problémát demuxálásnál
vagy másik konténer formátumba történő újrakeverésnél.
</p><p>
Nincs más választásod, mint a <tt class="option">harddup</tt> használata az
olyan konténer formátumokkal, amelyek nincsenek szoros összefüggésben
a <span class="application">MEncoder</span>rel. Ezek pl. azok, amelyeket a
<code class="systemitem">libavformat</code>-on keresztül
támogat, ami nem támogatja a képkocka duplázást konténer szinten.
</p></div><div class="sect3" title="11.1.12.2. Az AVI konténer korlátai"><div class="titlepage"><div><div><h4 class="title"><a name="menc-feat-dvd-mpeg4-muxing-avi-limitations"></a>11.1.12.2. Az AVI konténer korlátai</h4></div></div></div><p>
Habár a legszélesebb körben támogatott konténer formátum az MPEG-1
után, az AVI-nak is van néhány nagy hátránya.
Talán a legnyilvánvalóbb a túlterhelés.
Az AVi fájl minden egyes chunk-ja 24 bájtot pazarol a fejlécekre és
az indexre.
Ez egy kicsit több mint 5 MB óránként vagy 1-2,5% plusz egy 700 MB-os
filmnél. Ez nem tűnik soknak, de eldöntheti, hogy 700 kbit/sec-os videót
tudsz csak használni vagy 714 kbit/sec-osat, ahol minden bit a minőségre
megy.
</p><p>
Ezen hatalmas hátrány mellett az AVI-nak a következő fő korlátai vannak:
</p><div class="orderedlist"><ol class="orderedlist" type="1"><li class="listitem"><p>
  Csak fix-fps-ű tartalmat tud tárolni. Ez különleges korlátozás, ha
  az eredeti anyag, amit el akarsz kódolni, kevert tartalom, például
  NTSC videó és film anyag keveréke.
  Már vannak olyan hack-ek, amivel kevert framerátás tartalmat lehetne
  AVI-ba tenni, de ötszörös vagy még nagyobb mértékben növelik a (már
  amúgy is nagy) túlterhelést, így nem praktikusak.
</p></li><li class="listitem"><p>
  Az AVI fájlokban az audiónak vagy konstans-bitrátásnak (CBR) vagy
  konstans-képkocka méretűnek (pl. minden képkocka ugyan annyi számú
  mintát dekódol) kell lennie.
  Sajnos a leghatékonyabb codec, a Vorbis, egyik kívánalomnak sem
  felel meg.
  Ezért ha AVI-ban tárolod a filmjeidet, egy kevésbé hatékony
  codec-et kell használnod, mint pl. az MP3 vagy az AC-3.
</p></li></ol></div><p>
A fentiek miatt a <span class="application">MEncoder</span> jelenleg nem
támogatja a változó-fps-es kimenetet vagy a Vorbis kódolást.
Így ezeket nem korlátozásként fogod fel, ha a
<span class="application">MEncoder</span> az egyetlen
eszköz, mellyel kódolsz.
Azonban lehetséges a <span class="application">MEncoder</span>t csak
a videó kódolására használni és valamilyen egyéb eszközzel
elkódolni az audiót majd összekeverni őket egy konténer formátumba.
</p></div><div class="sect3" title="11.1.12.3. Keverés a Matroska konténerbe"><div class="titlepage"><div><div><h4 class="title"><a name="menc-feat-dvd-mpeg4-muxing-matroska"></a>11.1.12.3. Keverés a Matroska konténerbe</h4></div></div></div><p>
A Matroska szabad, nyílt szabványú konténer formátum, melynek
célja, hogy rengeteg továbbfejlesztett képességet biztosítson,
amit a régebbi konténerek, mint pl. az AVI nem tud kezelni.
például a Matroska támogatja a változó bitrátás audió tartalmat
(VBR), változó framerátát (VFR), fejezeteket, fájl csatolásokat,
hiba kereső kódot (EDC) és a modern A/V codec-eket, mint az
"Advanced Audio Coding" (AAC), "Vorbis" vagy "MPEG-4 AVC" (H.264),
szemben az AVI-val, amelyik egyiket sem.
</p><p>
A Matroska fájlok készítéséhez szükséges eszközöket együtt
<span class="application">mkvtoolnix</span>-nek hívják és elérhetőek a
legtöbb Unix platformon, akárcsak <span class="application">Windows</span>on.
Mivel a Matroska nyílt szabványú, találhatsz más eszközöket is, amik
jobban megfelelnek neked, de mivel az mkvtoolnix a leggyakrabban
használt, és maga a Matroska csapat támogatja, csak ennek a
használatát mutatjuk be.
</p><p>
Talán a legegyszerűbb módszer, hogy elindulj a Matroska-val, az
<span class="application">MMG</span> használata, az
<span class="application">mkvtoolnix</span>-szel szállított grafikus frontend
és kövesd a
<a class="ulink" href="http://www.bunkus.org/videotools/mkvtoolnix/doc/mkvmerge-gui.html" target="_top">mkvmerge GUI (mmg) leírást</a>.
</p><p>
A parancssor segítségével is összekverheted az audió és videó fájlokat:
</p><pre class="screen">
mkvmerge -o <em class="replaceable"><code>kimenet.mkv</code></em> <em class="replaceable"><code>bemenet_video.avi</code></em> <em class="replaceable"><code>bemenet_audio1.mp3</code></em> <em class="replaceable"><code>bemenet_audio2.ac3</code></em>
</pre><p>
Ez a <em class="replaceable"><code>bemenet_video.avi</code></em> fájlt és a
két audió fájlt, a <em class="replaceable"><code>bemenet_audio1.mp3</code></em>-at
és a <em class="replaceable"><code>bemenet_audio2.ac3</code></em>-at összefűzi a
<em class="replaceable"><code>kimenet.mkv</code></em> Matroska fájlba.
A Matroska, mint ahogy azt már megemlítettem, ennél sokkal többre
képes, mint pl. több audió sáv használatára (beleértve az audió/videó
szinkronizáció finom-hangolását), fejezetek, feliratok, vágás, stb...
Kérlek olvasd el ezen alkalmazások dokumentációit a részletekért.
</p></div></div><div class="footnotes"><br><hr width="100" align="left"><div class="footnote"><p><sup>[<a name="ftn.fn-menc-feat-dvd-mpeg4-codec-cpu" href="#fn-menc-feat-dvd-mpeg4-codec-cpu" class="para">1</a>] </sup>
  Azonban légy óvatos: A DVD felbontású MPEG-4 AVC videó
  dekódolása gyors gépet igényel (pl. egy 1,5 GHz feletti Pentium 4
  vagy egy 1 GHz feletti Pentium M).
  </p></div><div class="footnote"><p><sup>[<a name="ftn.fn-menc-feat-dvd-mpeg4-codec-playback" href="#fn-menc-feat-dvd-mpeg4-codec-playback" class="para">2</a>] </sup>Ugyan az a kódolás nem biztos, hogy ugyan úgy néz ki valaki másnak
  a monitorán vagy ha más dekódolóval játszák le, ezért ellenőrizd a
  kódolásaidat különböző beállítások mellett történő lejátszással!
  </p></div></div></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="encoding-guide.html">Előző</a> </td><td width="20%" align="center"><a accesskey="u" href="encoding-guide.html">Fel</a></td><td width="40%" align="right"> <a accesskey="n" href="menc-feat-telecine.html">Következő</a></td></tr><tr><td width="40%" align="left" valign="top">11. fejezet - Kódolás a <span class="application">MEncoder</span>rel </td><td width="20%" align="center"><a accesskey="h" href="index.html">Tartalom</a></td><td width="40%" align="right" valign="top"> 11.2. Mit kezdjünk a telecine-nel és az átlapolással NTSC DVD-ken</td></tr></table></div></body></html>