mirror of
https://github.com/mpv-player/mpv
synced 2024-12-22 06:42:03 +00:00
44f4ae1a29
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@26968 b3059339-0415-0410-9bf9-f77b7e298cf2
5526 lines
206 KiB
XML
5526 lines
206 KiB
XML
<?xml version="1.0" encoding="utf-8"?>
|
|
<!-- synced with r26925 -->
|
|
<chapter id="encoding-guide">
|
|
<title>Kódolás a <application>MEncoder</application>rel</title>
|
|
|
|
<sect1 id="menc-feat-dvd-mpeg4">
|
|
<title>Nagyon jó minőségű MPEG-4 ("DivX")
|
|
rip készítése DVD filmből</title>
|
|
|
|
<para>
|
|
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."
|
|
</para>
|
|
|
|
<para>
|
|
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.
|
|
</para>
|
|
|
|
<para>
|
|
Valójában egy DVD MPEG-4-be történő átkódolásának az oka pont az, hogy
|
|
<emphasis role="bold">érdekel</emphasis> a fájl mérete.
|
|
</para>
|
|
|
|
<para>
|
|
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
|
|
<systemitem class="library">libavcodec</systemitem>-et használod a videó
|
|
kódolásához, habár az elmélet bármilyen codec-kel használható.
|
|
</para>
|
|
|
|
<para>
|
|
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
|
|
<ulink url="http://www.mplayerhq.hu/design7/projects.html#mencoder_frontends">MEncoder részben</ulink>.
|
|
Í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.
|
|
</para>
|
|
|
|
<!-- ********** -->
|
|
|
|
<sect2 id="menc-feat-dvd-mpeg4-preparing-encode">
|
|
<title>Felkészülés a kódolásra: A forrás anyag és frameráta azonosítása</title>
|
|
|
|
<para>
|
|
Mielőtt eszedbe jutna bármiféle film átkódolása, meg kell tenned
|
|
pár előkészületi lépést.
|
|
</para>
|
|
|
|
<para>
|
|
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 <emphasis role="bold">nincs</emphasis>
|
|
ö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.
|
|
</para>
|
|
|
|
|
|
<sect3 id="menc-feat-dvd-mpeg4-preparing-encode-fps">
|
|
<title>A forrás framerátájának azonosítása</title>
|
|
|
|
<para>
|
|
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:
|
|
</para>
|
|
|
|
<itemizedlist>
|
|
<listitem><para>
|
|
<emphasis role="bold">Szabványos film</emphasis>: Moziban történő
|
|
vetítéshez rögzítették 24 fps-sel.
|
|
</para></listitem>
|
|
<listitem><para>
|
|
<emphasis role="bold">PAL videó</emphasis>: 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 <emphasis role="bold">nem</emphasis> 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.
|
|
</para></listitem>
|
|
<listitem><para>
|
|
<emphasis role="bold">NTSC Videó</emphasis>: 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.
|
|
</para></listitem>
|
|
<listitem><para>
|
|
<emphasis role="bold">Animáció</emphasis>: Általában 24fps-sel
|
|
rajzolják, de található kevert-framerátás változat is.
|
|
</para></listitem>
|
|
<listitem><para>
|
|
<emphasis role="bold">Számítógépes grafika (CG)</emphasis>: 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.
|
|
</para></listitem>
|
|
<listitem><para>
|
|
<emphasis role="bold">Régi film</emphasis>: Különböző alacsony
|
|
frameráták.
|
|
</para></listitem>
|
|
</itemizedlist>
|
|
</sect3>
|
|
|
|
|
|
<sect3 id="menc-feat-dvd-mpeg4-preparing-encode-material">
|
|
<title>A forrásanyag beazonosítása</title>
|
|
|
|
<para>
|
|
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ő.
|
|
</para>
|
|
|
|
<para>
|
|
További bonyolításként néhány film a fenti kettő keveréke.
|
|
</para>
|
|
|
|
<para>
|
|
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.
|
|
<emphasis role="bold">Bármikor</emphasis>, 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.
|
|
</para>
|
|
|
|
<itemizedlist>
|
|
<title>Számos általános típusa van a pulldown-nak:</title>
|
|
<listitem><para>
|
|
<emphasis role="bold">PAL 2:2 pulldown</emphasis>: 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.
|
|
</para></listitem>
|
|
<listitem><para>
|
|
<emphasis role="bold">PAL 2:2:2:2:2:2:2:2:2:2:2:3 pulldown</emphasis>:
|
|
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.
|
|
</para></listitem>
|
|
<listitem><para>
|
|
<emphasis role="bold">NTSC 3:2 telecine</emphasis>: 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.
|
|
</para></listitem>
|
|
<listitem><para>
|
|
<emphasis role="bold">NTSC 2:2 pulldown</emphasis>: 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.
|
|
</para></listitem>
|
|
</itemizedlist>
|
|
|
|
<para>
|
|
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.
|
|
</para>
|
|
|
|
<para>
|
|
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.
|
|
</para>
|
|
|
|
<para>
|
|
Az eljárás, ahogy ezeket az eseteket kezelni kell, <link
|
|
linkend="menc-feat-telecine">később kerül leírásra</link> ebben
|
|
az útmutatóban.
|
|
Most következzék pár tanács, amik segítségével eldöntheted, hogy milyen
|
|
anyaggal van dolgod:
|
|
</para>
|
|
|
|
<itemizedlist>
|
|
<title>NTSC régiók:</title>
|
|
<listitem><para>
|
|
Ha az <application>MPlayer</application> 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á.
|
|
</para></listitem>
|
|
<listitem><para>
|
|
Ha az <application>MPlayer</application> 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.
|
|
</para></listitem>
|
|
<listitem><para>
|
|
Ha az <application>MPlayer</application> 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.
|
|
</para></listitem>
|
|
<listitem><para>
|
|
Ha az <application>MPlayer</application> 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ú.
|
|
</para></listitem>
|
|
</itemizedlist>
|
|
|
|
<itemizedlist>
|
|
<title>PAL régiók:</title>
|
|
<listitem><para>
|
|
Ha sosem látsz hullámzást, akkor a filmed 2:2 pulldown-os.
|
|
</para></listitem>
|
|
<listitem><para>
|
|
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.
|
|
</para></listitem>
|
|
<listitem><para>
|
|
Ha mindig látsz hullámzást a mozgás közben, akkor a filmed PAL
|
|
videó 50 mező per másodperces sebességgel.
|
|
</para></listitem>
|
|
</itemizedlist>
|
|
|
|
<note><title>Tanács:</title>
|
|
<para>
|
|
Az <application>MPlayer</application> 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 <option>-speed</option> 0.2-t, hogy nagyon lassan
|
|
nézhesd a filmet vagy nyomogasd a "<keycap>.</keycap>" 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.
|
|
</para>
|
|
</note>
|
|
</sect3>
|
|
</sect2>
|
|
|
|
<!-- ********** -->
|
|
|
|
<sect2 id="menc-feat-dvd-mpeg4-2pass">
|
|
<title>Konstans kvantálás vs. többmenetes kódolás</title>
|
|
|
|
<para>
|
|
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.
|
|
</para>
|
|
|
|
<para>
|
|
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).
|
|
</para>
|
|
|
|
<para>
|
|
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.
|
|
</para>
|
|
|
|
<note><title>Megjegyzés:</title>
|
|
<para>
|
|
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 <systemitem class="library">x264</systemitem>,
|
|
az <systemitem class="library">Xvid</systemitem> és a
|
|
<systemitem class="library">libavcodec</systemitem> 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ő.
|
|
</para>
|
|
</note>
|
|
|
|
<para>
|
|
Ezen módok mindegyikében a videó codec (mint pl. a
|
|
<systemitem class="library">libavcodec</systemitem>)
|
|
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.)
|
|
</para>
|
|
|
|
<para>
|
|
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
|
|
<option>vqmin</option>-ben meg van adva a <systemitem
|
|
class="library">libavcodec</systemitem>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.
|
|
</para>
|
|
|
|
<para>
|
|
Konstans kvantálással a codec ugyan azt a kvantálót használja, amit
|
|
a <option>vqscale</option> kapcsolóval megadtál (a <systemitem
|
|
class="library">libavcodec</systemitem>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 <option>vqscale=2</option> kapcsolót. Ez ugyan azt a bitrátát
|
|
és PSNR-t (peak signal-to-noise ratio) szolgáltatja, mint a CBR a
|
|
<option>vbitrate</option>=végtelen kapcsolóval és a alapértelmezett 2-es
|
|
<option>vqmin</option>-nal.
|
|
</para>
|
|
|
|
<para>
|
|
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.
|
|
</para>
|
|
|
|
<para>
|
|
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.
|
|
</para>
|
|
|
|
<para>
|
|
Ha használod a <option>vqscale=2</option> kapcsolót, akkor biteket pazarolsz.
|
|
Ha a <option>vqscale=3</option> kapcsolót adod meg, akkor nem a legjobb minőségű
|
|
rip-et kapod. Tegyük fel, hogy egy DVD-t rip-elsz <option>vqscale=3</option>-mal,
|
|
és az eredmény 1800Kbit. Ha két lépéses kódolást csinálsz <option>vbitrate=1800</option>
|
|
kapcsolóval, az kimeneti videó <emphasis role="bold">jobb minőségű</emphasis> lesz
|
|
<emphasis role="bold">ugyanolyan bitrátával</emphasis>.
|
|
</para>
|
|
|
|
<para>
|
|
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.
|
|
</para>
|
|
|
|
<para>
|
|
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.
|
|
</para>
|
|
|
|
<para>
|
|
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 <link linkend="menc-feat-dvd-mpeg4-audio">ezeket
|
|
kell lerippelned</link>.
|
|
A következő egyenlettel tudod kiszámítani a bitrátát:
|
|
<systemitem>bitráta = (cél_méret_Mbyteokban - hang_mérete_Mbyteokban) *
|
|
1024 * 1024 / hossz_másodpercben * 8 / 1000</systemitem>
|
|
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
|
|
<systemitem>(702 - 60) * 1024 * 1024 / (120*60) * 8 / 1000 =
|
|
740kbps</systemitem>-nek kell lennie.
|
|
</para>
|
|
</sect2>
|
|
|
|
<!-- ********** -->
|
|
|
|
<sect2 id="menc-feat-dvd-mpeg4-constraints">
|
|
<title>Megszorítások a hatékony kódoláshoz</title>
|
|
|
|
<para>
|
|
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ájlmérettel, akkor
|
|
eléggé rossz ötlet nem 16 valamelyik többszörösét használni méretként.
|
|
</para>
|
|
|
|
<para>
|
|
A legtöbb DVD-n van valamekkora fekete sáv a sarkokban. Ha ezeket békén
|
|
hagyod, akkor több módon is <emphasis role="bold">nagyon</emphasis>
|
|
rontják a minőséget.
|
|
</para>
|
|
|
|
<orderedlist>
|
|
<listitem>
|
|
<para>
|
|
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.
|
|
</para>
|
|
|
|
<para>
|
|
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.
|
|
</para>
|
|
</listitem>
|
|
</orderedlist>
|
|
|
|
<para>
|
|
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:
|
|
</para>
|
|
|
|
<orderedlist continuation="continues">
|
|
<listitem>
|
|
<para>
|
|
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.
|
|
</para>
|
|
|
|
<para>
|
|
Ez a probléma szintén csak akkor jelentkezik, ha a fekete sáv nem 16
|
|
többszörösű pixel-határon van.
|
|
</para>
|
|
</listitem>
|
|
|
|
<listitem>
|
|
<para>
|
|
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.
|
|
</para>
|
|
|
|
<para>
|
|
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.
|
|
</para>
|
|
</listitem>
|
|
|
|
<listitem><para>
|
|
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.
|
|
</para></listitem>
|
|
</orderedlist>
|
|
|
|
<para>
|
|
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.
|
|
</para>
|
|
</sect2>
|
|
|
|
<!-- ********** -->
|
|
|
|
<sect2 id="menc-feat-dvd-mpeg4-crop">
|
|
<title>Vágás és méretezés</title>
|
|
|
|
<para>
|
|
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.
|
|
</para>
|
|
|
|
<para>
|
|
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!
|
|
</para>
|
|
|
|
<informaltable>
|
|
<?dbhtml table-width="40%" ?>
|
|
<?dbfo table-width="40%" ?>
|
|
<tgroup cols="8" align="center">
|
|
<colspec colnum="1" colname="col1"/>
|
|
<colspec colnum="2" colname="col2"/>
|
|
<colspec colnum="3" colname="col3"/>
|
|
<colspec colnum="4" colname="col4"/>
|
|
<colspec colnum="5" colname="col5"/>
|
|
<colspec colnum="6" colname="col6"/>
|
|
<colspec colnum="7" colname="col7"/>
|
|
<colspec colnum="8" colname="col8"/>
|
|
<spanspec spanname="spa1-2" namest="col1" nameend="col2"/>
|
|
<spanspec spanname="spa3-4" namest="col3" nameend="col4"/>
|
|
<spanspec spanname="spa5-6" namest="col5" nameend="col6"/>
|
|
<spanspec spanname="spa7-8" namest="col7" nameend="col8"/>
|
|
<tbody>
|
|
<row>
|
|
<entry>L</entry>
|
|
<entry>L</entry>
|
|
<entry>L</entry>
|
|
<entry>L</entry>
|
|
<entry>L</entry>
|
|
<entry>L</entry>
|
|
<entry>L</entry>
|
|
<entry>L</entry>
|
|
</row>
|
|
<row>
|
|
<entry spanname="spa1-2">C</entry>
|
|
<entry spanname="spa3-4">C</entry>
|
|
<entry spanname="spa5-6">C</entry>
|
|
<entry spanname="spa7-8">C</entry>
|
|
</row>
|
|
<row>
|
|
<entry>L</entry>
|
|
<entry>L</entry>
|
|
<entry>L</entry>
|
|
<entry>L</entry>
|
|
<entry>L</entry>
|
|
<entry>L</entry>
|
|
<entry>L</entry>
|
|
<entry>L</entry>
|
|
</row>
|
|
<row>
|
|
<entry>L</entry>
|
|
<entry>L</entry>
|
|
<entry>L</entry>
|
|
<entry>L</entry>
|
|
<entry>L</entry>
|
|
<entry>L</entry>
|
|
<entry>L</entry>
|
|
<entry>L</entry>
|
|
</row>
|
|
<row>
|
|
<entry spanname="spa1-2">C</entry>
|
|
<entry spanname="spa3-4">C</entry>
|
|
<entry spanname="spa5-6">C</entry>
|
|
<entry spanname="spa7-8">C</entry>
|
|
</row>
|
|
<row>
|
|
<entry>L</entry>
|
|
<entry>L</entry>
|
|
<entry>L</entry>
|
|
<entry>L</entry>
|
|
<entry>L</entry>
|
|
<entry>L</entry>
|
|
<entry>L</entry>
|
|
<entry>L</entry>
|
|
</row>
|
|
</tbody>
|
|
</tgroup>
|
|
</informaltable>
|
|
|
|
<para>
|
|
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 <emphasis>kell</emphasis> 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ő.
|
|
</para>
|
|
|
|
<para>
|
|
Továbbá az átlapolt videót a következőképpen mintázzák:
|
|
</para>
|
|
|
|
<informaltable>
|
|
<?dbhtml table-width="80%" ?>
|
|
<?dbfo table-width="80%" ?>
|
|
<tgroup cols="16" align="center">
|
|
<colspec colnum="1" colname="col1"/>
|
|
<colspec colnum="2" colname="col2"/>
|
|
<colspec colnum="3" colname="col3"/>
|
|
<colspec colnum="4" colname="col4"/>
|
|
<colspec colnum="5" colname="col5"/>
|
|
<colspec colnum="6" colname="col6"/>
|
|
<colspec colnum="7" colname="col7"/>
|
|
<colspec colnum="8" colname="col8"/>
|
|
<colspec colnum="9" colname="col9"/>
|
|
<colspec colnum="10" colname="col10"/>
|
|
<colspec colnum="11" colname="col11"/>
|
|
<colspec colnum="12" colname="col12"/>
|
|
<colspec colnum="13" colname="col13"/>
|
|
<colspec colnum="14" colname="col14"/>
|
|
<colspec colnum="15" colname="col15"/>
|
|
<colspec colnum="16" colname="col16"/>
|
|
<spanspec spanname="spa1-2" namest="col1" nameend="col2"/>
|
|
<spanspec spanname="spa3-4" namest="col3" nameend="col4"/>
|
|
<spanspec spanname="spa5-6" namest="col5" nameend="col6"/>
|
|
<spanspec spanname="spa7-8" namest="col7" nameend="col8"/>
|
|
<spanspec spanname="spa9-10" namest="col9" nameend="col10"/>
|
|
<spanspec spanname="spa11-12" namest="col11" nameend="col12"/>
|
|
<spanspec spanname="spa13-14" namest="col13" nameend="col14"/>
|
|
<spanspec spanname="spa15-16" namest="col15" nameend="col16"/>
|
|
<tbody>
|
|
<row>
|
|
<entry namest="col1" nameend="col8">Top field</entry>
|
|
<entry namest="col9" nameend="col16">Bottom field</entry>
|
|
</row>
|
|
<row>
|
|
<entry>L</entry>
|
|
<entry>L</entry>
|
|
<entry>L</entry>
|
|
<entry>L</entry>
|
|
<entry>L</entry>
|
|
<entry>L</entry>
|
|
<entry>L</entry>
|
|
<entry>L</entry>
|
|
<entry></entry>
|
|
<entry></entry>
|
|
<entry></entry>
|
|
<entry></entry>
|
|
<entry></entry>
|
|
<entry></entry>
|
|
<entry></entry>
|
|
<entry></entry>
|
|
</row>
|
|
<row>
|
|
<entry spanname="spa1-2">C</entry>
|
|
<entry spanname="spa3-4">C</entry>
|
|
<entry spanname="spa5-6">C</entry>
|
|
<entry spanname="spa7-8">C</entry>
|
|
<entry></entry>
|
|
<entry></entry>
|
|
<entry></entry>
|
|
<entry></entry>
|
|
<entry></entry>
|
|
<entry></entry>
|
|
<entry></entry>
|
|
<entry></entry>
|
|
</row>
|
|
<row>
|
|
<entry></entry>
|
|
<entry></entry>
|
|
<entry></entry>
|
|
<entry></entry>
|
|
<entry></entry>
|
|
<entry></entry>
|
|
<entry></entry>
|
|
<entry></entry>
|
|
<entry>L</entry>
|
|
<entry>L</entry>
|
|
<entry>L</entry>
|
|
<entry>L</entry>
|
|
<entry>L</entry>
|
|
<entry>L</entry>
|
|
<entry>L</entry>
|
|
<entry>L</entry>
|
|
</row>
|
|
<row>
|
|
<entry>L</entry>
|
|
<entry>L</entry>
|
|
<entry>L</entry>
|
|
<entry>L</entry>
|
|
<entry>L</entry>
|
|
<entry>L</entry>
|
|
<entry>L</entry>
|
|
<entry>L</entry>
|
|
<entry></entry>
|
|
<entry></entry>
|
|
<entry></entry>
|
|
<entry></entry>
|
|
<entry></entry>
|
|
<entry></entry>
|
|
<entry></entry>
|
|
<entry></entry>
|
|
</row>
|
|
<row>
|
|
<entry></entry>
|
|
<entry></entry>
|
|
<entry></entry>
|
|
<entry></entry>
|
|
<entry></entry>
|
|
<entry></entry>
|
|
<entry></entry>
|
|
<entry></entry>
|
|
<entry spanname="spa9-10">C</entry>
|
|
<entry spanname="spa11-12">C</entry>
|
|
<entry spanname="spa13-14">C</entry>
|
|
<entry spanname="spa15-16">C</entry>
|
|
</row>
|
|
<row>
|
|
<entry></entry>
|
|
<entry></entry>
|
|
<entry></entry>
|
|
<entry></entry>
|
|
<entry></entry>
|
|
<entry></entry>
|
|
<entry></entry>
|
|
<entry></entry>
|
|
<entry>L</entry>
|
|
<entry>L</entry>
|
|
<entry>L</entry>
|
|
<entry>L</entry>
|
|
<entry>L</entry>
|
|
<entry>L</entry>
|
|
<entry>L</entry>
|
|
<entry>L</entry>
|
|
</row>
|
|
<row>
|
|
<entry>L</entry>
|
|
<entry>L</entry>
|
|
<entry>L</entry>
|
|
<entry>L</entry>
|
|
<entry>L</entry>
|
|
<entry>L</entry>
|
|
<entry>L</entry>
|
|
<entry>L</entry>
|
|
<entry></entry>
|
|
<entry></entry>
|
|
<entry></entry>
|
|
<entry></entry>
|
|
<entry></entry>
|
|
<entry></entry>
|
|
<entry></entry>
|
|
<entry></entry>
|
|
</row>
|
|
<row>
|
|
<entry spanname="spa1-2">C</entry>
|
|
<entry spanname="spa3-4">C</entry>
|
|
<entry spanname="spa5-6">C</entry>
|
|
<entry spanname="spa7-8">C</entry>
|
|
<entry></entry>
|
|
<entry></entry>
|
|
<entry></entry>
|
|
<entry></entry>
|
|
<entry></entry>
|
|
<entry></entry>
|
|
<entry></entry>
|
|
<entry></entry>
|
|
</row>
|
|
<row>
|
|
<entry></entry>
|
|
<entry></entry>
|
|
<entry></entry>
|
|
<entry></entry>
|
|
<entry></entry>
|
|
<entry></entry>
|
|
<entry></entry>
|
|
<entry></entry>
|
|
<entry>L</entry>
|
|
<entry>L</entry>
|
|
<entry>L</entry>
|
|
<entry>L</entry>
|
|
<entry>L</entry>
|
|
<entry>L</entry>
|
|
<entry>L</entry>
|
|
<entry>L</entry>
|
|
</row>
|
|
<row>
|
|
<entry>L</entry>
|
|
<entry>L</entry>
|
|
<entry>L</entry>
|
|
<entry>L</entry>
|
|
<entry>L</entry>
|
|
<entry>L</entry>
|
|
<entry>L</entry>
|
|
<entry>L</entry>
|
|
<entry></entry>
|
|
<entry></entry>
|
|
<entry></entry>
|
|
<entry></entry>
|
|
<entry></entry>
|
|
<entry></entry>
|
|
<entry></entry>
|
|
<entry></entry>
|
|
</row>
|
|
<row>
|
|
<entry></entry>
|
|
<entry></entry>
|
|
<entry></entry>
|
|
<entry></entry>
|
|
<entry></entry>
|
|
<entry></entry>
|
|
<entry></entry>
|
|
<entry></entry>
|
|
<entry spanname="spa9-10">C</entry>
|
|
<entry spanname="spa11-12">C</entry>
|
|
<entry spanname="spa13-14">C</entry>
|
|
<entry spanname="spa15-16">C</entry>
|
|
</row>
|
|
<row>
|
|
<entry></entry>
|
|
<entry></entry>
|
|
<entry></entry>
|
|
<entry></entry>
|
|
<entry></entry>
|
|
<entry></entry>
|
|
<entry></entry>
|
|
<entry></entry>
|
|
<entry>L</entry>
|
|
<entry>L</entry>
|
|
<entry>L</entry>
|
|
<entry>L</entry>
|
|
<entry>L</entry>
|
|
<entry>L</entry>
|
|
<entry>L</entry>
|
|
<entry>L</entry>
|
|
</row>
|
|
</tbody>
|
|
</tgroup>
|
|
</informaltable>
|
|
|
|
<para>
|
|
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.
|
|
</para>
|
|
|
|
<para>
|
|
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.
|
|
</para>
|
|
|
|
<para>
|
|
Az <application>MPlayer</application> rendelkezik egy crop detection
|
|
szűrővel, ami megállapítja a levágandó téglalapot (<option>-vf cropdetect</option>).
|
|
Futtasd az <application>MPlayer</application>t a
|
|
<option>-vf cropdetect</option> 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.
|
|
</para>
|
|
|
|
<para>
|
|
Ezután teszteld le a kapott értékeket az <application>MPlayer</application>rel,
|
|
felhasználva a <option>cropdetect</option> által kiírt parancssort és állíts
|
|
a téglalapon, ha szükséges.
|
|
A <option>téglalap</option> 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.
|
|
</para>
|
|
|
|
<para>
|
|
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!
|
|
</para>
|
|
|
|
<para>
|
|
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 <option>cropdetect</option> szűrőnek,
|
|
hogy ezt az egészet megcsinálja helyetted, mivel van egy opcionális
|
|
<option>kerekítési</option> paramétere, ami alapértelmezésként 16.
|
|
</para>
|
|
|
|
<para>
|
|
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.
|
|
</para>
|
|
|
|
<para>
|
|
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 <application>MEncoder</application>
|
|
rendelkezik egy kapcsolóval a <systemitem
|
|
class="library">libavcodec</systemitem>hez, amit <option>autoaspect</option>-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.
|
|
</para>
|
|
</sect2>
|
|
|
|
<!-- ********** -->
|
|
|
|
<sect2 id="menc-feat-dvd-mpeg4-resolution-bitrate">
|
|
<title>Felbontás és bitráta kiválasztása</title>
|
|
|
|
<para>
|
|
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
|
|
<link linkend="menc-feat-dvd-mpeg4-muxing-avi-limitations">az AVI konténer</link>t
|
|
például).
|
|
Az egyéb paraméterek, mint a méretezés, vágás, stb.
|
|
<emphasis role="bold">nem</emphasis> változtatják meg a fájl méretét,
|
|
amíg nem változtatsz a bitrátán is.
|
|
</para>
|
|
|
|
<para>
|
|
A bitráta <emphasis role="bold">nem</emphasis> 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:
|
|
<orderedlist>
|
|
<listitem><para>
|
|
<emphasis role="bold">Érzékelhető</emphasis>: 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).
|
|
</para></listitem>
|
|
<listitem><para>
|
|
<emphasis role="bold">Elméleti</emphasis>: 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).
|
|
</para></listitem>
|
|
</orderedlist>
|
|
</para>
|
|
|
|
<para>
|
|
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).
|
|
</para>
|
|
<para>
|
|
Eddig csak a felbontás és a bitráta kiválasztás nehézségeiről
|
|
beszéltünk.
|
|
</para>
|
|
|
|
|
|
<sect3 id="menc-feat-dvd-mpeg4-resolution-bitrate-compute">
|
|
<title>Felbontás kiszámítása</title>
|
|
|
|
<para>
|
|
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:
|
|
<systemitem>ARc = (Wc x (ARa / PRdvd )) / Hc</systemitem>
|
|
|
|
<itemizedlist>
|
|
<title>ahol:</title>
|
|
<listitem><para>
|
|
Wc és Hc a vágott videó szélessége és a magassága,
|
|
</para></listitem>
|
|
<listitem><para>
|
|
ARa a megjelenített kép aránya, ami általában 4/3 vagy 16/9,
|
|
</para></listitem>
|
|
<listitem><para>
|
|
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.
|
|
</para></listitem>
|
|
</itemizedlist>
|
|
</para>
|
|
|
|
<para>
|
|
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:
|
|
<systemitem>ResY = INT(SQRT( 1000*Bitrate/25/ARc/CQ )/16) * 16</systemitem>
|
|
és
|
|
<systemitem>ResX = INT( ResY * ARc / 16) * 16</systemitem>
|
|
</para>
|
|
|
|
<para>
|
|
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.
|
|
</para>
|
|
|
|
<para>
|
|
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 <systemitem class="library">Xvid</systemitem>
|
|
és a <systemitem class="library">libavcodec</systemitem>, 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 <link linkend="menc-feat-mpeg4-lavc-example-settings"><systemitem class="library">libavcodec</systemitem></link>-hez
|
|
és az
|
|
<link linkend="menc-feat-xvid-example-settings"><systemitem class="library">Xvid</systemitem></link>-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 <systemitem class="library">x264</systemitem>,
|
|
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
|
|
<link linkend="menc-feat-x264-example-settings"><systemitem class="library">x264</systemitem> fejlett kódolási beállításaival</link>.
|
|
</para>
|
|
|
|
<para>
|
|
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.
|
|
</para>
|
|
</sect3>
|
|
</sect2>
|
|
|
|
<!-- ********** -->
|
|
|
|
<sect2 id="menc-feat-dvd-mpeg4-filtering">
|
|
<title>Szűrés</title>
|
|
|
|
<para>
|
|
A <application>MEncoder</application> 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 <application>MEncoder</application>
|
|
szűrőinek változatossága a fő előnye a hasonló programokkal szemben.
|
|
</para>
|
|
|
|
<para>
|
|
A szűrők láncban töltődnek be a -vf kapcsoló használatával:
|
|
|
|
<screen>-vf szuro1=opciok,szuro2=opciok,...</screen>
|
|
|
|
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!
|
|
</para>
|
|
|
|
<para>
|
|
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:
|
|
|
|
<screen>-vf crop=688:464:12:4,scale=640:464</screen>
|
|
|
|
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.
|
|
</para>
|
|
|
|
<para>
|
|
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 <option>pp</option> (utófeldolgozás, csak ha
|
|
deblock vagy dering műveleteket hajt végre), az
|
|
<option>spp</option> (másik utófeldolgozó az MPEG mellékhatások eltávolítására),
|
|
a <option>pullup</option> (inverz telecine) és a
|
|
<option>softpulldown</option> (a soft telecine hard telecine-re történő
|
|
konvertálása).
|
|
</para>
|
|
|
|
<para>
|
|
Á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.
|
|
</para>
|
|
|
|
<para>
|
|
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.
|
|
</para>
|
|
|
|
<para>
|
|
Az egyetlen dolog, amit szeretnél, a videó nagyon könnyű zajszűrőn történő
|
|
áteresztése, mint pl. <option>-vf hqdn3d=2:1:2</option>. 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
|
|
<option>hqdn3d</option> 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, rontod a kép
|
|
láthatóságát.
|
|
A fent javasolt értékek (<option>2:1:2</option>) eléggé konzervatívak;
|
|
kísérletezz szabadon nagyobb értékekkel és ellenőrizd az eredményeket magad.
|
|
</para>
|
|
</sect2>
|
|
|
|
<!-- ********** -->
|
|
|
|
<sect2 id="menc-feat-dvd-mpeg4-interlacing">
|
|
<title>Interlacing és Telecine</title>
|
|
|
|
<para>
|
|
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.
|
|
</para>
|
|
|
|
<para>
|
|
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.
|
|
</para>
|
|
|
|
<para>
|
|
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.
|
|
</para>
|
|
|
|
<para>
|
|
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).
|
|
</para>
|
|
|
|
<para>
|
|
Javasoljuk, hogy olvasd el a
|
|
<link linkend="menc-feat-telecine">mit kezdjünk a telecine-nel és az átlapolással NTSC DVD-ken</link>
|
|
részt, hogy kezelni tudd a különböző lehetőségeket.
|
|
</para>
|
|
|
|
<para>
|
|
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 <option>pullup</option> szűrőt a <option>-vf
|
|
pullup,softskip</option> kapcsolóval.
|
|
</para>
|
|
</sect2>
|
|
|
|
<!-- ********** -->
|
|
|
|
<sect2 id="menc-feat-dvd-mpeg4-encoding-interlaced">
|
|
<title>Átlapolt videó elkódolása</title>
|
|
|
|
<para>
|
|
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.
|
|
</para>
|
|
|
|
<para>
|
|
Í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.
|
|
</para>
|
|
|
|
<para>
|
|
Fokozott figyelemmel kell eljárni, ha átlapolt videóval dolgozol:
|
|
</para>
|
|
|
|
<orderedlist>
|
|
<listitem><para>
|
|
A vágási magasság és y-offszet 4 többszöröse kell, hogy legyen.
|
|
</para></listitem>
|
|
<listitem><para>
|
|
Bármilyen függőleges átméretezést átlapolt módban kell elvégezni.
|
|
</para></listitem>
|
|
<listitem><para>
|
|
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ó.
|
|
</para></listitem>
|
|
</orderedlist>
|
|
|
|
<para>
|
|
Mindezt észben tartva, itt az első példánk:
|
|
<screen>
|
|
mencoder <replaceable>capture.avi</replaceable> -mc 0 -oac lavc -ovc lavc -lavcopts \
|
|
vcodec=mpeg2video:vbitrate=6000:ilme:ildct:acodec=mp2:abitrate=224
|
|
</screen>
|
|
Figyelj az <option>ilme</option> és az <option>ildct</option> kapcsolókra.
|
|
</para>
|
|
</sect2>
|
|
|
|
<!-- ********** -->
|
|
|
|
<sect2 id="menc-feat-dvd-mpeg4-av-sync">
|
|
<title>Megjegyzések az Audió/Videó szinkronizáláshoz</title>
|
|
|
|
<para>
|
|
A <application>MEncoder</application> 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 <option>-mc 0</option> opcióval, vagy írd ezt bele a
|
|
<systemitem>~/.mplayer/mencoder</systemitem> 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.
|
|
</para>
|
|
|
|
<para>
|
|
Ha még további különös képkocka kihagyásokat és duplázásokat akarsz
|
|
elkerülni, használhatod az <option>-mc 0</option> és <option>-noskip</option>
|
|
kapcsolókat együtt is.
|
|
Ez megakadályoz <emphasis>mindenféle</emphasis> 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 <option>-noskip</option> használata általában nem javasolt.
|
|
</para>
|
|
|
|
<para>
|
|
A <application>MEncoder</application> á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 <emphasis>nem</emphasis> 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!
|
|
</para>
|
|
|
|
<para>
|
|
Érkeztek jelentések A/V deszinkronizációról <application>MEncoder</application>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.
|
|
</para>
|
|
</sect2>
|
|
|
|
<!-- ********** -->
|
|
|
|
<sect2 id="menc-feat-dvd-mpeg4-codec">
|
|
<title>A videó codec kiválasztása</title>
|
|
|
|
<para>
|
|
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.
|
|
</para>
|
|
<itemizedlist>
|
|
<listitem>
|
|
<para>
|
|
<emphasis role="bold">Tömörítési hatékonyság</emphasis>:
|
|
É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,
|
|
<footnote id='fn-menc-feat-dvd-mpeg4-codec-cpu'><para>
|
|
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).
|
|
</para></footnote>
|
|
akár MPEG-4 AVC codec-et választasz, mint például az
|
|
<systemitem class="library">x264</systemitem>, akár egy MPEG-4 ASP
|
|
codec-et, mint pl. a <systemitem class="library">libavcodec</systemitem>
|
|
MPEG-4 vagy az <systemitem class="library">Xvid</systemitem>.
|
|
(A haladóbb codec fejlesztőket talán érdekelheti Michael
|
|
Niedermayer véleménye, a
|
|
"<ulink url="http://guru.multimedia.cx/?p=10">miért utáljuk az MPEG4-et</ulink>".)
|
|
Valószínűleg az MPEG-4 ASP-vel jobb minőséget érhetsz el, mint az
|
|
MPEG-2 codec-ekkel.
|
|
</para>
|
|
|
|
<para>
|
|
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.
|
|
</para>
|
|
|
|
<para>
|
|
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.
|
|
</para>
|
|
</listitem>
|
|
|
|
<listitem><para>
|
|
<emphasis role="bold">Hardveres kompatibilítás</emphasis>:
|
|
Á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
|
|
<systemitem class="library">libavcodec</systemitem> LMP4-e és az
|
|
<systemitem class="library">Xvid</systemitem>) 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.
|
|
</para></listitem>
|
|
|
|
<listitem>
|
|
<para>
|
|
<emphasis role="bold">Legjobb minőség kontra kódolási idő</emphasis>:
|
|
A már jó ideje létező codec-ek (mint pl. a
|
|
<systemitem class="library">libavcodec</systemitem> MPEG-4-e és az
|
|
<systemitem class="library">Xvid</systemitem>) á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.
|
|
</para>
|
|
|
|
<para>
|
|
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).
|
|
</para>
|
|
|
|
<para>
|
|
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 <systemitem class="library">libavcodec</systemitem> 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 <systemitem class="library">Xvid</systemitem> több-szálas kódolása,
|
|
melyet a <option>threads</option> 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 <systemitem class="library">x264</systemitem> 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.
|
|
</para>
|
|
</listitem>
|
|
|
|
<listitem>
|
|
<para>
|
|
<emphasis role="bold">Egyéni igények</emphasis>:
|
|
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 <systemitem class="library">Xvid</systemitem>-et vagy a
|
|
<systemitem class="library">libavcodec</systemitem> MPEG-4-ét részesítik
|
|
előnyben az <systemitem class="library">x264</systemitem>-hez képest.
|
|
</para>
|
|
<para>
|
|
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.
|
|
<footnote id='fn-menc-feat-dvd-mpeg4-codec-playback'>
|
|
<para>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!
|
|
</para></footnote>!
|
|
</para>
|
|
</listitem>
|
|
</itemizedlist>
|
|
|
|
<para>
|
|
Kérjük, nézd meg a
|
|
<link linkend="menc-feat-selecting-codec">codec-ek és konténer formátumok kiválasztásáról</link>
|
|
szóló fejezetet a támogatott codec-ek listájához.
|
|
</para>
|
|
</sect2>
|
|
|
|
<!-- ********** -->
|
|
|
|
<sect2 id="menc-feat-dvd-mpeg4-audio">
|
|
<title>Audió</title>
|
|
|
|
<para>
|
|
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 <link linkend="menc-feat-mpeg4">kódolás közben</link>
|
|
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.
|
|
<screen>
|
|
mplayer <replaceable>forras_fajl.vob</replaceable> -aid 129 -dumpaudio -dumpfile <replaceable>hang.ac3</replaceable>
|
|
</screen>
|
|
a 129-es audió sávot kiszedi a <replaceable>sound.ac3</replaceable> nevű
|
|
fájlba a <replaceable>source_file.vob</replaceable>-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).
|
|
</para>
|
|
|
|
<para>
|
|
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.
|
|
</para>
|
|
|
|
<para>
|
|
<emphasis>Ne</emphasis> használd a <option>-nosound</option>-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 <option>-nosound</option> 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
|
|
<quote>Too many audio packets in the buffer</quote> (Túl sok audió csomag
|
|
a bufferban) és hasonló üzenetek elkerülését és a megfelelő szinkront.
|
|
</para>
|
|
|
|
<para>
|
|
Fel kell dolgoznod a <application>MEncoder</application>rel a hangot.
|
|
Például az <option>-oac copy</option>-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 <option>-oac pcm -channels 1 -srate 4000</option> 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 <application>MPlayer</application> 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 <application>MPlayer</application>rel), a szeletek hibásan maradnak
|
|
benne és csak képkocka eldobással/duplázással lehet javítani.
|
|
Amíg a <application>MEncoder</application> 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/jelentetváltásos helyeken történik), de ha a
|
|
<application>MEncoder</application> 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.
|
|
</para>
|
|
|
|
<para>
|
|
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:
|
|
<screen>
|
|
mplayer <replaceable>forras_fajl.vob</replaceable> -ao pcm:file=<replaceable>cel_hang.wav</replaceable> \
|
|
-vc dummy -aid 1 -vo null
|
|
</screen>
|
|
ki fogja szedni a második audió sávot a <replaceable>source_file.vob</replaceable>
|
|
fájlból a <replaceable>destination_sound.wav</replaceable> 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 <application>normalize</application> eszközt, ami
|
|
megtalálható a legtöbb disztribúcióban.
|
|
Ha Windows-t használsz, egy eszköz, mint pl. a <application>BeSweet</application>
|
|
megcsinálja ezt neked.
|
|
Vagy Vorbis-ba vagy MP3-ba kódolsz.
|
|
Például:
|
|
<screen>oggenc -q1 <replaceable>cel_hang.wav</replaceable></screen>
|
|
elkódolja a <replaceable>destination_sound.wav</replaceable>-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 <application>MEncoder</application> 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.
|
|
</para>
|
|
</sect2>
|
|
|
|
<!-- ********** -->
|
|
|
|
<sect2 id="menc-feat-dvd-mpeg4-muxing">
|
|
<title>Keverés</title>
|
|
|
|
<para>
|
|
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 <application>MEncoder</application> jelenleg csak MPEG és AVI
|
|
konténer formátumokba tud natív audió és videó kimenetet készíteni.
|
|
Például:
|
|
<screen>
|
|
mencoder -oac copy -ovc copy -o <replaceable>kimenet_film.avi</replaceable> \
|
|
-audiofile <replaceable>bemenet_audio.mp2</replaceable> <replaceable>bemenet_video.avi</replaceable></screen>
|
|
Ez a <replaceable>bemenet_video.avi</replaceable> videó fájlból
|
|
és a <replaceable>bemenet_audio.mp2</replaceable> audió fájlból
|
|
elkészíti a <replaceable>kimenet_film.avi</replaceable> 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.
|
|
</para>
|
|
|
|
<para>
|
|
A <application>MEncoder</application>ben kísérleti jelleggel van
|
|
<systemitem class="library">libavformat</systemitem> 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:
|
|
<screen>
|
|
mencoder -oac copy -ovc copy -o <replaceable>kimenet_film.asf</replaceable> -audiofile <replaceable>bemenet_audio.mp2</replaceable> \
|
|
<replaceable>bemenet_video.avi</replaceable> -of lavf -lavfopts format=asf</screen>
|
|
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
|
|
<application>MPlayer</application>t a
|
|
<systemitem class="library">libavformat</systemitem> 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).
|
|
</para>
|
|
|
|
|
|
<sect3 id="menc-feat-dvd-mpeg4-muxing-filter-issues">
|
|
<title>A keverés és az A/V szinkron megbízhatóságának növelése</title>
|
|
|
|
<para>
|
|
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 <option>harddup</option> videű szűrő hozzáillesztése a szűrő
|
|
lánc végéhez ezen problémák elkerülése érdekében.
|
|
</para>
|
|
|
|
<para>
|
|
A <option>harddup</option> nélkül ha a <application>MEncoder</application>
|
|
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 <option>harddup</option>-pal a <application>MEncoder</application>
|
|
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ó <emphasis>pontosan</emphasis> 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.
|
|
</para>
|
|
|
|
<para>
|
|
Nincs más választásod, mint a <option>harddup</option> használata az
|
|
olyan konténer formátumokkal, amelyek nincsenek szoros összefüggésben
|
|
a <application>MEncoder</application>rel. Ezek pl. azok, amelyeket a
|
|
<systemitem class="library">libavformat</systemitem>-on keresztül
|
|
támogat, ami nem támogatja a képkocka duplázást konténer szinten.
|
|
</para>
|
|
</sect3>
|
|
|
|
|
|
<sect3 id="menc-feat-dvd-mpeg4-muxing-avi-limitations">
|
|
<title>Az AVI konténer korlátai</title>
|
|
|
|
<para>
|
|
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.
|
|
</para>
|
|
|
|
<para>
|
|
Ezen hatalmas hátrány mellett az AVI-nak a következő fő korlátai vannak:
|
|
</para>
|
|
|
|
<orderedlist>
|
|
<listitem><para>
|
|
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.
|
|
</para></listitem>
|
|
<listitem><para>
|
|
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.
|
|
</para></listitem>
|
|
</orderedlist>
|
|
|
|
<para>
|
|
A fentiek miatt a <application>MEncoder</application> 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
|
|
<application>MEncoder</application> az egyetlen
|
|
eszköz, mellyel kódolsz.
|
|
Azonban lehetséges a <application>MEncoder</application>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.
|
|
</para>
|
|
</sect3>
|
|
|
|
|
|
<sect3 id="menc-feat-dvd-mpeg4-muxing-matroska">
|
|
<title>Keverés a Matroska konténerbe</title>
|
|
|
|
<para>
|
|
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.
|
|
</para>
|
|
|
|
<para>
|
|
A Matroska fájlok készítéséhez szükséges eszközöket együtt
|
|
<application>mkvtoolnix</application>-nek hívják és elérhetőek a
|
|
legtöbb Unix platformon, akárcsak <application>Windows</application>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.
|
|
</para>
|
|
|
|
<para>
|
|
Talán a legegyszerűbb módszer, hogy elindulj a Matroska-val, az
|
|
<application>MMG</application> használata, az
|
|
<application>mkvtoolnix</application>-szel szállított grafikus frontend
|
|
és kövesd a
|
|
<ulink url="http://www.bunkus.org/videotools/mkvtoolnix/doc/mkvmerge-gui.html">mkvmerge GUI (mmg) leírást</ulink>.
|
|
</para>
|
|
|
|
<para>
|
|
A parancssor segítségével is összekverheted az audió és videó fájlokat:
|
|
<screen>
|
|
mkvmerge -o <replaceable>kimenet.mkv</replaceable> <replaceable>bemenet_video.avi</replaceable> <replaceable>bemenet_audio1.mp3</replaceable> <replaceable>bemenet_audio2.ac3</replaceable>
|
|
</screen>
|
|
Ez a <replaceable>bemenet_video.avi</replaceable> fájlt és a
|
|
két audió fájlt, a <replaceable>bemenet_audio1.mp3</replaceable>-at
|
|
és a <replaceable>bemenet_audio2.ac3</replaceable>-at összefűzi a
|
|
<replaceable>kimenet.mkv</replaceable> 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.
|
|
</para>
|
|
</sect3>
|
|
</sect2>
|
|
</sect1>
|
|
|
|
|
|
<!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -->
|
|
|
|
|
|
<sect1 id="menc-feat-telecine">
|
|
<title>Mit kezdjünk a telecine-nel és az átlapolással NTSC DVD-ken</title>
|
|
|
|
<sect2 id="menc-feat-telecine-intro">
|
|
<title>Bevezetés</title>
|
|
|
|
<formalpara>
|
|
<title>Mi az a telecine?</title>
|
|
<para>
|
|
Ha nem érted teljesen, ami ebben a dokumentumban le van írva, olvasd el a
|
|
<ulink url="http://en.wikipedia.org/wiki/Telecine">Wikipedia telecine szócikkét</ulink>.
|
|
Ez egy érthető és meglehetősen átfogó leírás arról, hogy mi is az
|
|
a telecine.
|
|
</para></formalpara>
|
|
|
|
<formalpara>
|
|
<title>Megjegyzés a számokhoz.</title>
|
|
<para>
|
|
Sok dokumentáció, beleértve a fent belinkelt cikket is, az NTSC videó mező
|
|
per másodperc értékét 59.94-ként határozza meg, és a megfelelő képkocka
|
|
per másodperc értéket 29.97-nek (telecine-s és átlapolt) és 23.976-nak
|
|
írja (progresszív). Az egyszerűség kedvéért sok dokumentáció még ezeket
|
|
a számokat is lekerekíti 60-ra, 30-ra és 24-re.
|
|
</para></formalpara>
|
|
|
|
<para>
|
|
Pontosan fogalmazva az összes szám csak közelítés. A fekete-fehér
|
|
NTSC videó pontosan 60 mező per másodperces volt, de később 60000/1001-et
|
|
választottak, hogy a szín adatokat hozzáigazítsák, de kompatibilisek
|
|
maradjanak a kortárs fekete-fehér televíziókkal. A digitális NTSC videó
|
|
(mint ami a DVD-n van) is 60000/1001 mező per másodperces. Ebből származik,
|
|
hogy az átlapolt és telecine-lt videó 30000/1001 képkocka per másodperces;
|
|
a progresszív videó 24000/1001 képkocka per másodperces.
|
|
</para>
|
|
|
|
<para>
|
|
A <application>MEncoder</application> dokumentációjának régebbi változatai
|
|
és számos archivált levelezési listára küldött levél az 59.94-re, 29.97-re
|
|
és a 23.976-ra hivatkozik. Az összes <application>MEncoder</application>
|
|
dokumentáció frissítve lett a tört számokra és neked is ajánlatos ezeket
|
|
használni.
|
|
</para>
|
|
|
|
<para>
|
|
<option>-ofps 23.976</option> helytelen.
|
|
<option>-ofps 24000/1001</option> használandó helyette.
|
|
</para>
|
|
|
|
<formalpara>
|
|
<title>A telecine használata.</title>
|
|
<para>
|
|
Az összes videónak, amit NTSC televízión szándékoznak megjeleníteni,
|
|
60000/1001 mező per másodperc sebességűnek kell lennie. A TV-nek készített
|
|
filmeket és show-kat gyakran direkt 60000/1001 mező per másodperces sebességgel
|
|
fényképezik, de a mozifilmek nagy része 24 vagy 24000/1001 képkocka per
|
|
másodperccel készül. Amikor a mozis film DVD-jét készítik, a videót egy
|
|
telecine-nek nevezett eljárás keretében televíziós formátumra konvertálják.
|
|
</para></formalpara>
|
|
|
|
<para>
|
|
Egy DVD-n a videót tulajdonképpen soha sem 60000/1001 mező per
|
|
másodperccel tárolják. Abban a videóban, ami eredetileg 60000/1001-es
|
|
volt, egy pár mező alkot egy képkockát, 30000/1001 képkocka per
|
|
másodperces sebességet eredményezve. A hardveres DVD lejátszók ezután
|
|
beolvasnak egy, a videó folyamban benne lévő jelzőt, hogy megállapítsák,
|
|
hogy a páros vagy páratlan sorszámú sorok alkotják-e az első mezőt.
|
|
</para>
|
|
|
|
<para>
|
|
Általában a 24000/1001 képkocka per másodperces tartalom változatlan
|
|
marad, ha DVD-re kódolják és a DVD lejátszónak kell telecine-t
|
|
végezni menet közben. De néha a videót a DVD-re mentés
|
|
<emphasis>előtt</emphasis> telecine-lik, akkor is, ha eredetileg
|
|
24000/1001 képkocka per másodperces volt, így 60000/1001 mező per
|
|
másodperces lesz, és a lemezen 30000/1001 képkocka per
|
|
másodpercesként tárolódik.
|
|
</para>
|
|
|
|
<para>
|
|
Ha megnézed az egyes képkockákat a 60000/1001 mező per másodperces
|
|
videóban, telecine-lt vagy sem, az átlapolás tisztán látható bármilyen
|
|
mozgásnál, mert az egyik mező (mondjuk a páros sorszámú sorok) időben
|
|
1/(60000/1001) másodperccel későbbi történést reprezentál, mint a másik.
|
|
Átlapolt videó számítógépen történő lejátszáskor rondán néz ki, mert
|
|
egyrészt a monitornak nagyobb a felbontása, másrészt mert a videót
|
|
kockáról kockára mutatja meg, mezőről mezőre történő lejátszás helyett.
|
|
</para>
|
|
|
|
<itemizedlist>
|
|
<title>Megjegyzések:</title>
|
|
<listitem><para>
|
|
Ez a rész csak NTSC DVD-re vonatkozik, nem a PAL-ra.
|
|
</para></listitem>
|
|
<listitem><para>
|
|
A <application>MEncoder</application> példa sorok a dokumentumban
|
|
<emphasis role="bold">nem</emphasis> hétköznapi felhasználásra lettek
|
|
írva. Csak a legalapvetőbb dolgokat mutatják, ami a megfelelő kategóriába
|
|
tartozó videók kódolásához szükséges. A jó DVD rip-ek készítése vagy a
|
|
<systemitem class="library">libavcodec</systemitem> finomhangolása a
|
|
maximális minőség eléréséhez nem tartozik ezen fejezet célkitűzései közé,
|
|
nézd meg a <link linkend="encoding-guide">MEncoder kódolási útmutató</link>
|
|
többi részét.
|
|
</para></listitem>
|
|
<listitem><para>
|
|
Sok megjegyzés vonatkozik erre a leírásra, melyek így vannak jelölve:
|
|
<link linkend="menc-feat-telecine-footnotes">[1]</link>
|
|
</para></listitem>
|
|
</itemizedlist>
|
|
</sect2>
|
|
|
|
<!-- ********** -->
|
|
|
|
<sect2 id="menc-feat-telecine-ident">
|
|
<title>Hogyan állapítható meg egy videó típusa</title>
|
|
|
|
<sect3 id="menc-feat-telecine-ident-progressive">
|
|
<title>Progresszív</title>
|
|
|
|
<para>
|
|
A progresszív videót eredetileg 24000/1001 fps-sel rögzítették és
|
|
változtatás nélkül tárolják a DVD-n.
|
|
</para>
|
|
|
|
<para>
|
|
Ha egy progressive DVD-t az <application>MPlayer</application>rel játszasz
|
|
le, az <application>MPlayer</application> a következő sort fogja kiírni,
|
|
amint a film lejátszása megkezdődik:
|
|
<screen>
|
|
demux_mpg: 24000/1001 fps progressive NTSC content detected, switching framerate.
|
|
</screen>
|
|
magyarul:
|
|
<screen>
|
|
demux_mpg: 24000/1001 fps progresszív NTSC formátumot találtam, frameráta váltás.
|
|
</screen>
|
|
Ettől a ponttól kezdve a demux_mpg soha sem mondhatja azt, hogy
|
|
"30000/1001 fps NTSC formátumot" talált.
|
|
</para>
|
|
|
|
<para>
|
|
Ha progresszív videót nézel, soha nem láthatod meg az átlapolást. De
|
|
vigyázz, néha pár telecine-s bit belekeveredik oda, ahol nem számítasz
|
|
rá. Én DVD-n lévő TV műsoroknál láttam egy másodpercnyi telecine-t
|
|
minden jelenet váltáskor vagy véletlen helyeken történő belenézéskor.
|
|
Egyszer láttam olyan DVD-t is, aminek az első fele progresszív volt,
|
|
a második fele pedig telecine-s. Ha <emphasis>tényleg</emphasis>
|
|
biztosra akarsz menni, átvizsgálhatod az egész filmet:
|
|
<screen>mplayer dvd://1 -nosound -vo null -benchmark</screen>
|
|
A <option>-benchmark</option> kapcsoló határása az
|
|
<application>MPlayer</application> olyan gyorsan játsza le a
|
|
filmet, amennyire csak lehetséges; a hardveredtől függően sokáig
|
|
is eltarthat. Minden esetben, ha a demux_mpg frameráta váltást
|
|
észlel, a fenti sor azonnal megmutatja neked a váltás idejét.
|
|
</para>
|
|
|
|
<para>
|
|
Néha a progresszív videóra "soft-telecine"-ként
|
|
hivatkoznak, mert a DVD lejátszónak kell ezt telecine-elnie.
|
|
</para>
|
|
</sect3>
|
|
|
|
|
|
<sect3 id="menc-feat-telecine-ident-telecined">
|
|
<title>Telecine-lt</title>
|
|
|
|
<para>
|
|
A telecine-lt videót eredetileg 24000/1001 fps-sel vették fel, de
|
|
telecine-lve lett a DVD-re írás <emphasis>előtt</emphasis>.
|
|
</para>
|
|
|
|
<para>
|
|
Az <application>MPlayer</application> nem ír semmilyen
|
|
frameráta változást, ha telecine-lt videót játszik le.
|
|
</para>
|
|
|
|
<para>
|
|
Egy telecine-lt videó nézésekor átlapolási hibákat láthatsz, amik
|
|
miatt "villoghat" a kép: ismétlődően megjelennek majd eltűnnek.
|
|
Ezt jobban megfigyelheted így:
|
|
<orderedlist>
|
|
<listitem><screen>mplayer dvd://1</screen></listitem>
|
|
<listitem><para>
|
|
Menj egy mozgást ábrázoló részhez.
|
|
</para></listitem>
|
|
<listitem><para>
|
|
Használd a <keycap>.</keycap> gombot az egy képkockával történő előreléptetéshez.
|
|
</para></listitem>
|
|
<listitem><para>
|
|
Nézd meg az átlapoltnak látszó és a progresszívnak látszó képkockák
|
|
mintáját. Ha a minta, amit látsz PPPII, PPPII, PPPII,... akkor a
|
|
videó telecine-lt. Ha valami más mintát látsz, akkor a videót lehet,
|
|
hogy egy másik, nem szabványos módszerrel telecine-lték;
|
|
a <application>MEncoder</application> nem tudja veszteségmentesen
|
|
átkonvertálni a nem-sabványos telecine-t progresszívba. Ha egyáltalán
|
|
nem látsz semmilyen mintát, akkor valószínűleg átlapolt.
|
|
</para></listitem>
|
|
</orderedlist>
|
|
</para>
|
|
|
|
<para>
|
|
Néha a DVD-ken lévő telecine-lt videót "hard-telecine"-nek
|
|
is hívják. Mivel a hard-telecine már 60000/1001 mező per másodperces,
|
|
a DVD lejátszó mindenféle manipulálás nélkül játsza le a videót.
|
|
</para>
|
|
|
|
<para>
|
|
A másik módszer a telecine-lt forrás felismerésére a forrás megtekintése
|
|
a <option>-vf pullup</option> és <option>-v</option> kapcsolók
|
|
parancssorhoz történő hozzáadásával. Így megnézheted, hogy a
|
|
<option>pullup</option> hogyan illeszkedik a képkockákhoz. Ha a forrás
|
|
telecine-s, a konzolon egy 3:2-es mintát kell látnod, melyben
|
|
<systemitem>0+.1.+2</systemitem> és <systemitem>0++1</systemitem> váltakozik.
|
|
Ennek a technikának megvan az az előnye, hogy nem kell a forrást
|
|
nézned az azonosításhoz, ami akkor jó, ha automatizálni szeretnéd a
|
|
kódolási folyamatot vagy távolról, lassú kapcsolaton keresztül
|
|
szeretnéd megcsinálni.
|
|
</para>
|
|
</sect3>
|
|
|
|
|
|
<sect3 id="menc-feat-telecine-ident-interlaced">
|
|
<title>Átlapolt</title>
|
|
|
|
<para>
|
|
Az átlapolt videót eredetileg 60000/1001 mező per másodperc sebességgel
|
|
filmezték és 30000/1001 képkocka per másodperccel került fel a DVD-re. Az
|
|
átlapolási effektus (gyakran "combing"-nak hívják) a mező párok
|
|
képkockává történő egyesítésének eredménye. Minden mezőnek 1/(60000/1001)
|
|
másodpercnyire kellene lennie egymástól, megjelenítésnél a különbség
|
|
szemmel látható.
|
|
</para>
|
|
|
|
<para>
|
|
Akár csak a telecine-s videóknál, az <application>MPlayer</application>nek
|
|
a nem kell semmiféle frameráta változásról értesítenie átlapolt videók
|
|
lejátszásakor.
|
|
</para>
|
|
|
|
<para>
|
|
Ha egy átlapolt videót közelebbről megnézel képkocka-léptetéssel a
|
|
<keycap>.</keycap> gombot nyomogatva, megláthatod, hogy minden egyes
|
|
képkocka átlapolt.
|
|
</para>
|
|
</sect3>
|
|
|
|
|
|
<sect3 id="menc-feat-telecine-ident-mixedpt">
|
|
<title>Kevert progresszív és telecine</title>
|
|
|
|
<para>
|
|
Az összes "kevert progresszív és telecine" videót eredetileg 24000/1001
|
|
képkocka per másodperccel rögzítették, de egyes részei utólag
|
|
telecine-lve lettek.
|
|
</para>
|
|
|
|
<para>
|
|
Ha az <application>MPlayer</application> ilyen videót játszik le,
|
|
(sokszor ismétlődően) oda-vissza vált "30000/1001 fps NTSC" és
|
|
"24000/1001 fps progresszív NTSC" között. Figyeld az
|
|
<application>MPlayer</application> kimenetének alját, ott megláthatod
|
|
az üzeneteket.
|
|
</para>
|
|
|
|
<para>
|
|
Nézd meg a "30000/1001 fps NTSC" részeket, és meggyőződhetsz róla,
|
|
hogy telecine-ltek, nem csak átlapoltak.
|
|
</para>
|
|
</sect3>
|
|
|
|
|
|
<sect3 id="menc-feat-telecine-ident-mixedpi">
|
|
<title>Kevert progresszív és átlapolt</title>
|
|
|
|
<para>
|
|
"Kevert progresszív és átlapolt" tartalomnál a progresszív
|
|
és az átlapolt videót összeillesztették.
|
|
</para>
|
|
|
|
<para>
|
|
Ez a kategória ugyan úgy viselkedik, mint a "kevert progresszív és telecine",
|
|
egészen addig, amíg meg nem vizsgálod a 30000/1001 fps-es részeket
|
|
és észre nem veszed, hogy nincs bennük telecine minta.
|
|
</para>
|
|
</sect3>
|
|
</sect2>
|
|
|
|
<!-- ********** -->
|
|
|
|
<sect2 id="menc-feat-telecine-encode">
|
|
<title>Hogyan lehet elkódolni ezen kategóriákat</title>
|
|
<para>
|
|
Ahogy említettem az elején, például a <application>MEncoder</application>
|
|
alábbi parancssorai <emphasis role="bold">nem</emphasis> igazán használhatóak;
|
|
csak demonstrálják a minimum paramétereket az egyes kategóriák megfelelő kódolásához.
|
|
</para>
|
|
|
|
|
|
<sect3 id="menc-feat-telecine-encode-progressive">
|
|
<title>Progresszív</title>
|
|
<para>
|
|
A progresszív videóhoz nem kell semmilyen különleges szűrés. Az egyetlen
|
|
paraméterm, amit biztosan használnod kell, az a
|
|
<option>-ofps 24000/1001</option>. Egyébként a <application>MEncoder</application>
|
|
30000/1001 fps-sel és duplikált képkockákkal próbál kódolni.
|
|
</para>
|
|
|
|
<para>
|
|
<screen>mencoder dvd://1 -oac copy -ovc lavc -ofps 24000/1001</screen>
|
|
</para>
|
|
|
|
<para>
|
|
Gyakran az az eset áll fenn, hogy a videó progresszívnek tűnik, de valójában
|
|
nagyon rövid telecine-s részek vannak belekeverve. Ha nem vagy biztos
|
|
a dolgodban, a legbiztonságosabb, ha
|
|
<link linkend="menc-feat-telecine-encode-mixedpt">kevert progresszív és telecine-lt</link>
|
|
videóként kezeled. A teljesítményvesztés kicsi
|
|
<link linkend="menc-feat-telecine-footnotes">[3]</link>.
|
|
</para>
|
|
</sect3>
|
|
|
|
|
|
<sect3 id="menc-feat-telecine-encode-telecined">
|
|
<title>Telecine-lt</title>
|
|
|
|
<para>
|
|
A telecine visszafordítható, hogy megkapd az eredeti 24000/1001-es
|
|
tartalmat, egy inverz-telecine-nek nevezett eljárással.
|
|
Az <application>MPlayer</application> számos szűrővel rendelkezik ennek
|
|
az elvégzéséhez; a legjobb szűrő a <option>pullup</option> le van írva
|
|
a <link linkend="menc-feat-telecine-encode-mixedpt">kevert progresszív és telecine</link>
|
|
részben.
|
|
</para>
|
|
</sect3>
|
|
|
|
|
|
<sect3 id="menc-feat-telecine-encode-interlaced">
|
|
<title>Átlapolt</title>
|
|
|
|
<para>
|
|
A legtöbb gyakorlati esetben nem lehetséges a teljes progresszív videó
|
|
visszanyerése az átlapolt tartalomból. Az egyetlen út ehhez a függőleges
|
|
felbontás felének elvesztése nélkül a frameráta megduplázása és
|
|
"megtippelni", hogy mi kellene minden egyes mező megfelelő sorainak
|
|
felépítéséhez (ennek vannak hátrányai - lásd a 3. módszert).
|
|
</para>
|
|
|
|
<orderedlist>
|
|
<listitem><para>
|
|
Kódold el a videót átlapolt formában. Normális esetben az átlapolás
|
|
eléggé odavág a kódoló tömörítési képességeinek, de a
|
|
<systemitem class="library">libavcodec</systemitem>nek van két
|
|
paramétere speciálisan az átlapolt videó tárolásának egy kicsit jobb
|
|
kezeléséhez: <option>ildct</option> és <option>ilme</option>. Az
|
|
<option>mbd=2</option> használata is javasolt
|
|
<link linkend="menc-feat-telecine-footnotes">[2] </link>, mert ez a
|
|
makroblokkokat nem-átlapoltként fogja elkódolni azokon a helyeken, ahol
|
|
nincs mozgás. Ügyelj rá, hogy itt a <option>-ofps</option> NEM kell.
|
|
<screen>mencoder dvd://1 -oac copy -ovc lavc -lavcopts ildct:ilme:mbd=2</screen>
|
|
</para></listitem>
|
|
<listitem><para>
|
|
Használj deinterlacing szűrőt a kódolás előtt. Számos közül
|
|
választhatsz, mindegyiknek megvan a maga előnye és hátránya.
|
|
Lásd az <option>mplayer -pphelp</option> és az
|
|
<option>mplayer -vf help</option> kimenetét, hogy megtudd, mit
|
|
használhatsz (grep-pelj a "deint"-re), olvasd el Michael Niedermayer
|
|
<ulink url="http://guru.multimedia.cx/deinterlacing-filters/">Deinterlacing szűrő összehasonlítását</ulink>,
|
|
és keress az
|
|
<ulink url="http://www.mplayerhq.hu/design7/mailing_lists.html">
|
|
MPlayer levelezési listáin</ulink> a sok beszélgetés között, ami a
|
|
különböző szűrőkről szól.
|
|
A frameráta itt sem változik, így nem kell a
|
|
<option>-ofps</option>. A deinterlacing-et a vágás után
|
|
<link linkend="menc-feat-telecine-footnotes">[1]</link> és a méretezés
|
|
előtt kell elvégezni.
|
|
<screen>mencoder dvd://1 -oac copy -vf yadif -ovc lavc</screen>
|
|
</para></listitem>
|
|
<listitem><para>
|
|
Sajnos ez a kapcsoló hibás a <application>MEncoder</application>ben;
|
|
talán a <application>MEncoder G2</application>-vel működni fog,
|
|
de itt most még nem. Fagyásokat tapasztalhatsz. Egyébként a <option> -vf
|
|
tfields</option> célja az lenne, hogy teljes képkockát készít
|
|
mindegyik mezőből, ami miatt a frameráta 60000/1001 lesz. Ennek a
|
|
megközelítésnek az az előnye, hogy soha nincs adatvesztés; habár
|
|
mivel minden egyes kocka csak egy mezőből keletkezik, a hiányzó
|
|
sorokat valahogy interpolálni kell. Igazából nincs jó módszer a
|
|
hiányzó adat összegyűjtésére és így az eredmény kicsit úgy fog
|
|
kinézni, mint amikor valamilyen deinterlacing szűrőt használsz. A
|
|
hiányzó sorok generálása egyéb dolgokat idéz elő, egyszerűen mivel
|
|
az adat mennyisége megduplázódik. Így, nagyobb kódolási bitráták
|
|
szükségesek a minőség megtartásához, és nagyobb CPU teljesítmény
|
|
mind a kódoláshoz, mind a dekódoláshoz. A tfield-eknek számos különböző
|
|
opciójuk van az egyes képkockákban hiányzó sorok előállításához. Ha
|
|
ezt a módszert használod, akkor nézd meg a manual-t és válassz, hogy
|
|
melyik opcióval néz ki legjobban az anyagod. Figyelj rá, hogy ha
|
|
<option>tfield</option>-eket használsz,
|
|
mind a <option>-fps</option>-nek, mind a <option>-ofps</option>-nek
|
|
az eredeti forrásod framerátájának kétszeresét
|
|
<emphasis role="bold">kell megadnod</emphasis>.
|
|
<screen>
|
|
mencoder dvd://1 -oac copy -vf tfields=2 -ovc lavc \
|
|
-fps 60000/1001 -ofps 60000/1001<!--
|
|
--></screen>
|
|
</para></listitem>
|
|
<listitem><para>
|
|
Ha drasztikus downscaling-et tervezel, kiszedhetsz és elkódolhatsz
|
|
egy mezőt is a kettő helyett. Természetesen így elveszíted a
|
|
függőleges felbontás felét, de ha downscaling-et tervezel legfeljebb
|
|
az eredeti 1/2-ével, a veszteség nem számottevő. Az eredmény egy
|
|
progresszív 30000/1001 képkocka per másodperces fájl lesz. A
|
|
helyes eljárás a <option>-vf field</option> használata, majd vágás
|
|
<link linkend="menc-feat-telecine-footnotes">[1]</link> és
|
|
megfelelő méretezés. Emlékezz, hogy be kell állítanod a méretarányt a
|
|
felezett függőleges felbontásnak megfelelően.
|
|
<screen>mencoder dvd://1 -oac copy -vf field=0 -ovc lavc</screen>
|
|
</para></listitem>
|
|
</orderedlist>
|
|
</sect3>
|
|
|
|
|
|
<sect3 id="menc-feat-telecine-encode-mixedpt">
|
|
<title>Kevert progresszív és telecine</title>
|
|
|
|
<para>
|
|
Ahhoz, hogy egy kevert, progresszív és telecine-s videót teljesen
|
|
progresszív videóvá konvertálj, a telecine-lt részeket
|
|
inverz-telecine-elni kell. Ez háromféle képpen végezhető el,
|
|
mint ahogy az lejjebb látható. Figyelj rá, hogy
|
|
<emphasis role="bold">mindig</emphasis> az inverse-telecine legyen
|
|
meg bármilyen átméretezés előtt; hacsak nem vagy teljesen biztos a
|
|
dolgodban, és az inverse-telecine legyen a vágás előtt is
|
|
<link linkend="menc-feat-telecine-footnotes">[1]</link>.
|
|
A <option>-ofps 24000/1001</option> kell ide, mert a kimeneti videó 24000/1001
|
|
képkocka per másodperc sebességű lesz.
|
|
</para>
|
|
|
|
<itemizedlist>
|
|
<listitem><para>
|
|
A <option>-vf pullup</option> a telecine-s részek inverz-telecine-léséhez
|
|
lett tervezve úgy, hogy a progresszív adatokat érintetlenül hagyja.
|
|
A helyes működéshez a <option>pullup</option>-ot
|
|
a <option>softskip</option> szűrőnek <emphasis role="bold">kell</emphasis>
|
|
követnie, különben a <application>MEncoder</application> összeomlik.
|
|
Ennek ellenére a <option>pullup</option> a legtisztább és legjobb
|
|
módszer mind a telecine-s, mind a "kevert progresszív és telecine-s"
|
|
videók elkódolásához.
|
|
<screen>
|
|
mencoder dvd://1 -oac copy -vf pullup,softskip
|
|
-ovc lavc -ofps 24000/1001<!--
|
|
--></screen>
|
|
</para></listitem>
|
|
<listitem><para>
|
|
A <option>-vf filmdint</option> hasonló a
|
|
<option>-vf pullup</option>-hoz: mindkét szűrő megpróbálja egyeztetni a
|
|
mezőpárokat, hogy azok egy komplett képkockát adjanak. A <option>filmdint</option>
|
|
deinterlace-lni fogja az egyedi mezőket, amelyeket nem tud egyeztetni,
|
|
míg a <option>pullup</option> egyszerűen csak eldobja őket. A két szűrő
|
|
különböző detektáló kódot alkalmaz és a filmdint néha túl kevés mezőt
|
|
egyeztet. Az, hogy melyik szűrő a jobb, a bemeneti videótól és az egyéni
|
|
ízléstől függ; kísérletezz szabadon a szűrők opcióinak finomhangolásával,
|
|
ha valamelyikkel problémád van (lásd a man oldalt a részletekért).
|
|
A legtöbb jól elkészített bemeneti videónál mindkettő eléggé jól működik,
|
|
így bármelyik jó választás lehet a kezdéshez.
|
|
<screen>
|
|
mencoder dvd://1 -oac copy -vf filmdint -ovc lavc -ofps 24000/1001<!--
|
|
--></screen>
|
|
</para></listitem>
|
|
<listitem><para>
|
|
A régebbi módszer, a telecine-s részek inverz-telecine-lése
|
|
helyett a nem-telecine-s részek telecine-lése majd a teljes
|
|
videó inverz-telecine-lése. Zavarosan hangzik? A softpulldown
|
|
egy olyan szűrő, ami végigmegy a videón és a teljes fájlt
|
|
telecine-li. Ha a softpulldown-t vagy <option>detc</option>
|
|
vagy <option>ivtc</option> követi, a végső eredmény teljesen
|
|
progresszív lesz. A <option>-ofps 24000/1001</option>
|
|
kapcsolót meg kell adni.
|
|
<screen>
|
|
mencoder dvd://1 -oac copy -vf softpulldown,ivtc=1 -ovc lavc -ofps 24000/1001
|
|
</screen>
|
|
</para></listitem>
|
|
|
|
</itemizedlist>
|
|
</sect3>
|
|
|
|
|
|
<sect3 id="menc-feat-telecine-encode-mixedpi">
|
|
<title>Kevert progresszív és átlapolt</title>
|
|
|
|
<para>
|
|
Két módon kezelheted ezt a kategóriát, mindkettő kompromisszum.
|
|
Az időtartam/hely alapján kell döntened.
|
|
</para>
|
|
|
|
<itemizedlist>
|
|
<listitem><para>
|
|
Kezeld úgy, mintha progresszív lenne. Az átlapolt részek átlapoltnak
|
|
látszanak és néhány átlapolt mezőt el kell dobni, ami egyenletlen
|
|
ugrásokat eredményez. Használhatsz utófeldolgozó szűrőt, ha akarsz,
|
|
de ez kissé rontja a progresszív részeket.
|
|
</para>
|
|
|
|
<para>
|
|
Ez az opció használhatatlan akkor, ha a videót egy átlapolt eszközön
|
|
akarod megjeleníteni (TV kártyával például). Ha átlapolt képkockáid
|
|
vannak 24000/1001 képkocka per másodperces videóban, telecine-lve
|
|
lesznek a progresszív képkockákkal együtt. Az átlapolt "képkockák"
|
|
fele három mező hosszon lesz látható (3/(60000/1001) másodperc), ami
|
|
ugráló "visszaugrás az időben" effektust hoz létre, ami
|
|
nagyon rosszul néz ki. Ha mégis kísérletezel ezzel, használnod
|
|
<emphasis role="bold">kell</emphasis> egy deinterlacing szűrőt, mint
|
|
pl. az <option>lb</option> vagy az <option>l5</option>.
|
|
</para>
|
|
|
|
<para>
|
|
Rossz ötlet a progresszív megjelenítéshez is. Eldobja az egymást
|
|
követő átlapolt mezőpárokat, megszakítva ezzel a folyamatosságot,
|
|
ami sokkal szembetűnőbb, mint a második módszer, ami néhány
|
|
progresszív képkockát duplán mutat. A 30000/1001 képkocka per
|
|
másodperces átlapolt videó amúgy is egy kicsit fodrozódó mert
|
|
igazából 60000/1001 mező per másodperc sebességgel kellene
|
|
megjeleníteni, így a duplikált képkockák nem látszanak annyira.
|
|
</para>
|
|
|
|
<para>
|
|
Mindkét esetben érdemes megnézni a tartalmat és eldönteni, hogy
|
|
hogyan szeretnéd megjeleníteni. Ha a videó 90%-ban progresszív és
|
|
soha nem akarod TV-n lejátszani, akkor a progresszív megközelítést
|
|
fogod előnyben részesíteni. Ha csak félig progresszív, akkor
|
|
valószínűleg átlapoltként akarod elkódolni az egészet.
|
|
</para>
|
|
</listitem>
|
|
|
|
<listitem><para>
|
|
Kezeld teljesen átlapoltként. A progresszív részekben néhány
|
|
képkockát meg kell duplázni, ami egyenlőtlen ugrásokat eredményez.
|
|
De hangsúlyozom, a deinterlacing szűrők rontják a progresszív részeket.
|
|
</para></listitem>
|
|
</itemizedlist>
|
|
</sect3>
|
|
</sect2>
|
|
|
|
<!-- ********** -->
|
|
|
|
<sect2 id="menc-feat-telecine-footnotes">
|
|
<title>Lábjegyzet</title>
|
|
|
|
<orderedlist>
|
|
<listitem>
|
|
<formalpara>
|
|
<title>A vágásról:</title>
|
|
<para>
|
|
A videó adatot a DVD-ken egy úgynevezett YUV 4:2:0 formátumban tárolják.
|
|
A YUV videóban a luma ("fényerő") és a chroma ("szín")
|
|
külön tárolódik. Mivel az emberi szem valamivel érzéketlenebb a színre,
|
|
mint a fényerőre, a YUV 4:2:0 képen csak egy chroma pixel jut minden
|
|
négy luma pixelre. Egy progresszív képen minden négy luma pixel által
|
|
alkotott négyzetben (kettő mindkét oldalon) egy közös chroma pixel van.
|
|
A progresszív YUV 4:2:0-t le kell vágnod páros felbontásúra és páros
|
|
offszetet kell használnod. Például a
|
|
<option>crop=716:380:2:26</option> jó de a
|
|
<option>crop=716:380:3:26 </option> nem.
|
|
</para>
|
|
</formalpara>
|
|
|
|
<para>
|
|
Ha átlapolt YUV 4:2:0-lal van dolgod, a szituáció egy kicsit bonyolódik.
|
|
Ahelyett, hogy az egy <emphasis>képkockában</emphasis> lévő mind a
|
|
négy luma pixel osztozna egy chroma pixelen, a <emphasis>mezőben</emphasis>
|
|
lévő négy luma osztozik egy chroma pixelen. Ha a mezők át vannak
|
|
lapolva egy képkocka felépítéséhez, minden egyes scanline egy pixel
|
|
magas. Nos, ahelyett, hogy a négy luma pixel egy négyszögben lenne,
|
|
két pixel van egymás mellett, a másik kettő két scanline-nal lejjebb
|
|
van egymás mellett. A két luma pixel a közbeeső scanline-on a másik
|
|
mezőből van és így egy másik chroma pixel tartozik hozzájuk és két
|
|
darab, két scanline távolságra lévő luma pixel. Mindezen keverés teszi
|
|
szükségessé azt, hogy a függőleges vágási dimenzióknak és az offszeteknek
|
|
néggyel oszthatóaknak kell lenniük. A vízszintes maradhat páros.
|
|
</para>
|
|
|
|
<para>
|
|
A telecine-lt videóknál javaslom, hogy a vágást az inverz telecine
|
|
után ejtsd meg. Ha a videó már progresszív, csak páros számokkal el
|
|
kell vágnod. Ha ki akarod használni azt a sebességnövekedést, amit a
|
|
vágás rejteget magában, akkor függőlegesen négy többszörösével kell
|
|
vágnod, különben az inverz-telecine szűrő nem kap megfelelő adatokat.
|
|
</para>
|
|
|
|
<para>
|
|
Az átlapolt (nem telecine-lt) videónál függőlegesen mindig négy
|
|
többszörösével kell vágnod, hacsak nem használod a <option>-vf
|
|
field</option>-et a vágás előtt.
|
|
</para>
|
|
</listitem>
|
|
|
|
<listitem><formalpara>
|
|
<title>A kódolási paraméterekről és a minőségről:</title>
|
|
<para>
|
|
Csak mert itt javasoltam az <option>mbd=2</option>-t, nem jelenti
|
|
azt, hogy máshol ne lehetne használni. A <option>trell</option>-lel
|
|
együtt az <option>mbd=2</option> egyike a két <systemitem
|
|
class="library">libavcodec</systemitem> kapcsolóknak, amik legjobban
|
|
növelik a minőséget és igazából mindig ajánlott ezt a kettőt
|
|
használni, kivéve ha tilos a kódolási sebesség rontása (pl. valós
|
|
idejű kódolás). Még számos egyéb opciója van a <systemitem
|
|
class="library">libavcodec</systemitem>-nek, ami növeli a kódolás
|
|
minőségét (és csökkenti a kódolás sebességét) de az már túlmutat ezen
|
|
dokumentum célkitűzésein.
|
|
</para>
|
|
</formalpara></listitem>
|
|
|
|
<listitem><formalpara>
|
|
<title>A pullup teljesítményéről:</title>
|
|
<para>
|
|
Bátran használhatod a <option>pullup</option>-ot (a <option>softskip</option>pel
|
|
együtt) a progresszív videókon és ez általában jó ötlet, hacsak a forrás
|
|
nem egyértelműen teljesen progresszív. A teljesítményveszteség kicsi az
|
|
esetek többségében. Nagyon ritka kódolási esetekben a <option>pullup</option>
|
|
a <application>MEncoder</application> 50%-os lassulását okozhatja.
|
|
A zenefeldolgozás hozzáadása és a fejlett <option>lavcopts</option>
|
|
háttérbe szorítja ezt a különbséget, a <option>pullup</option> miatti
|
|
teljesítményromlást 2%-ra csökkentve.
|
|
</para>
|
|
</formalpara></listitem>
|
|
</orderedlist>
|
|
</sect2>
|
|
</sect1>
|
|
|
|
|
|
<!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -->
|
|
|
|
|
|
<sect1 id="menc-feat-enc-libavcodec">
|
|
<title>Kódolás a <systemitem class="library">libavcodec</systemitem>
|
|
codec családdal</title>
|
|
|
|
<para>
|
|
A <link linkend="ffmpeg"><systemitem class="library">libavcodec</systemitem></link>
|
|
számos érdekes videó és audió formátumba történő egyszerű kódolást biztosít.
|
|
A következő codec-ekbe kódolhatsz (többé-kevésbé friss lista):
|
|
</para>
|
|
|
|
<!-- ********** -->
|
|
|
|
<sect2 id="menc-feat-enc-libavcodec-video-codecs">
|
|
<title>A <systemitem class="library">libavcodec</systemitem>
|
|
videó codec-jei</title>
|
|
|
|
<para>
|
|
<informaltable frame="all">
|
|
<tgroup cols="2">
|
|
<thead>
|
|
<row><entry>Videó codec neve</entry><entry>Leírás</entry></row>
|
|
</thead>
|
|
<tbody>
|
|
<row>
|
|
<entry>mjpeg</entry>
|
|
<entry>Motion JPEG</entry>
|
|
</row>
|
|
<row>
|
|
<entry>ljpeg</entry>
|
|
<entry>veszteségmentes JPEG</entry>
|
|
</row>
|
|
<row>
|
|
<entry>jpegls</entry>
|
|
<entry>JPEG LS</entry>
|
|
</row>
|
|
<row>
|
|
<entry>targa</entry>
|
|
<entry>Targa kép</entry>
|
|
</row>
|
|
<row>
|
|
<entry>gif</entry>
|
|
<entry>GIF kép</entry>
|
|
</row>
|
|
<row>
|
|
<entry>bmp</entry>
|
|
<entry>BMP kép</entry>
|
|
</row>
|
|
<row>
|
|
<entry>png</entry>
|
|
<entry>PNG kép</entry>
|
|
</row>
|
|
<row>
|
|
<entry>h261</entry>
|
|
<entry>H.261</entry>
|
|
</row>
|
|
<row>
|
|
<entry>h263</entry>
|
|
<entry>H.263</entry>
|
|
</row>
|
|
<row>
|
|
<entry>h263p</entry>
|
|
<entry>H.263+</entry>
|
|
</row>
|
|
<row>
|
|
<entry>mpeg4</entry>
|
|
<entry>ISO szabvány MPEG-4 (DivX, Xvid kompatibilis)</entry>
|
|
</row>
|
|
<row>
|
|
<entry>msmpeg4</entry>
|
|
<entry>szabvány előtti MPEG-4 variáns az MS-től, v3 (AKA DivX3)</entry>
|
|
</row>
|
|
<row>
|
|
<entry>msmpeg4v2</entry>
|
|
<entry>szabvány előtti MPEG-4 az MS-től, v2 (régi ASF fájlokban használják)</entry>
|
|
</row>
|
|
<row>
|
|
<entry>wmv1</entry>
|
|
<entry>Windows Media Video, 1-es verzió (AKA WMV7)</entry>
|
|
</row>
|
|
<row>
|
|
<entry>wmv2</entry>
|
|
<entry>Windows Media Video, 2-es verzió (AKA WMV8)</entry>
|
|
</row>
|
|
<row>
|
|
<entry>rv10</entry>
|
|
<entry>RealVideo 1.0</entry>
|
|
</row>
|
|
<row>
|
|
<entry>rv20</entry>
|
|
<entry>RealVideo 2.0</entry>
|
|
</row>
|
|
<row>
|
|
<entry>mpeg1video</entry>
|
|
<entry>MPEG-1 videó</entry>
|
|
</row>
|
|
<row>
|
|
<entry>mpeg2video</entry>
|
|
<entry>MPEG-2 videó</entry>
|
|
</row>
|
|
<row>
|
|
<entry>huffyuv</entry>
|
|
<entry>veszteségmentes tömörítés</entry>
|
|
</row>
|
|
<row>
|
|
<entry>ffvhuff</entry>
|
|
<entry>FFmpeg által módosított veszteségmentes huffyuv</entry>
|
|
</row>
|
|
<row>
|
|
<entry>asv1</entry>
|
|
<entry>ASUS Video v1</entry>
|
|
</row>
|
|
<row>
|
|
<entry>asv2</entry>
|
|
<entry>ASUS Video v2</entry>
|
|
</row>
|
|
<row>
|
|
<entry>ffv1</entry>
|
|
<entry>az FFmpeg veszteségmentes videó codec-je</entry>
|
|
</row>
|
|
<row>
|
|
<entry>svq1</entry>
|
|
<entry>Sorenson video 1</entry>
|
|
</row>
|
|
<row>
|
|
<entry>flv</entry>
|
|
<entry>Flash Videókban használt Sorenson H.263</entry>
|
|
</row>
|
|
<row>
|
|
<entry>flashsv</entry>
|
|
<entry>Flash Screen Video</entry>
|
|
</row>
|
|
<row>
|
|
<entry>dvvideo</entry>
|
|
<entry>Sony Digital Video</entry>
|
|
</row>
|
|
<row>
|
|
<entry>snow</entry>
|
|
<entry>az FFmpeg kísérleti wavelet-alapú codecja</entry>
|
|
</row>
|
|
<row>
|
|
<entry>zmbv</entry>
|
|
<entry>Zip Motion Blocks Video</entry>
|
|
</row>
|
|
<row>
|
|
<entry>dnxhd</entry>
|
|
<entry>AVID DNxHD</entry>
|
|
</row>
|
|
</tbody>
|
|
</tgroup>
|
|
</informaltable>
|
|
|
|
Az első oszlop a codec neveket tartalmazza, amit a
|
|
<literal>vcodec</literal> opció után kell megadni, például:
|
|
<option>-lavcopts vcodec=msmpeg4</option>
|
|
</para>
|
|
|
|
<informalexample><para>
|
|
Egy példa MJPEG tömörítéssel:
|
|
<screen>
|
|
mencoder dvd://2 -o <replaceable>title2.avi</replaceable> -ovc lavc -lavcopts vcodec=mjpeg -oac copy
|
|
</screen>
|
|
</para></informalexample>
|
|
</sect2>
|
|
|
|
<!-- ********** -->
|
|
|
|
<sect2 id="menc-feat-enc-libavcodec-audio-codecs">
|
|
<title>A <systemitem class="library">libavcodec</systemitem>
|
|
audió codec-jei</title>
|
|
|
|
<para>
|
|
<informaltable frame="all">
|
|
<tgroup cols="2">
|
|
<thead>
|
|
<row><entry>Audió codec neve</entry><entry>Leírás</entry></row>
|
|
</thead>
|
|
<tbody>
|
|
<row>
|
|
<entry>ac3</entry>
|
|
<entry>Dolby Digital (AC-3)</entry>
|
|
</row>
|
|
<row>
|
|
<entry>adpcm_*</entry>
|
|
<entry>Adaptív PCM formátumok - lásd a mellékelt táblázatot</entry>
|
|
</row>
|
|
<row>
|
|
<entry>flac</entry>
|
|
<entry>Free Lossless Audio Codec (FLAC)</entry>
|
|
</row>
|
|
<row>
|
|
<entry>g726</entry>
|
|
<entry>G.726 ADPCM</entry>
|
|
</row>
|
|
<row>
|
|
<entry>libamr_nb</entry>
|
|
<entry>3GPP Adaptive Multi-Rate (AMR) narrow-band</entry>
|
|
</row>
|
|
<row>
|
|
<entry>libamr_wb</entry>
|
|
<entry>3GPP Adaptive Multi-Rate (AMR) wide-band</entry>
|
|
</row>
|
|
<row>
|
|
<entry>libfaac</entry>
|
|
<entry>Advanced Audio Coding (AAC) - FAAC használatával</entry>
|
|
</row>
|
|
<row>
|
|
<entry>libgsm</entry>
|
|
<entry>ETSI GSM 06.10 full rate</entry>
|
|
</row>
|
|
<row>
|
|
<entry>libgsm_ms</entry>
|
|
<entry>Microsoft GSM</entry>
|
|
</row>
|
|
<row>
|
|
<entry>libmp3lame</entry>
|
|
<entry>MPEG-1 audio layer 3 (MP3) - LAME használatával</entry>
|
|
</row>
|
|
<row>
|
|
<entry>mp2</entry>
|
|
<entry>MPEG-1 audio layer 2 (MP2)</entry>
|
|
</row>
|
|
<row>
|
|
<entry>pcm_*</entry>
|
|
<entry>PCM formats - lásd a mellékelt táblázatot</entry>
|
|
</row>
|
|
<row>
|
|
<entry>roq_dpcm</entry>
|
|
<entry>Id Software RoQ DPCM</entry>
|
|
</row>
|
|
<row>
|
|
<entry>sonic</entry>
|
|
<entry>kísérleti FFmpeg veszteséges codec</entry>
|
|
</row>
|
|
<row>
|
|
<entry>sonicls</entry>
|
|
<entry>kísérleti FFmpeg veszteségmentes codec</entry>
|
|
</row>
|
|
<row>
|
|
<entry>vorbis</entry>
|
|
<entry>Xiph Ogg Vorbis codec</entry>
|
|
</row>
|
|
<row>
|
|
<entry>wmav1</entry>
|
|
<entry>Windows Media Audio v1</entry>
|
|
</row>
|
|
<row>
|
|
<entry>wmav2</entry>
|
|
<entry>Windows Media Audio v2</entry>
|
|
</row>
|
|
</tbody>
|
|
</tgroup>
|
|
</informaltable>
|
|
|
|
Az első oszlop a codec neveket tartalmazza, amit az <literal>acodec</literal>
|
|
opció után kell megadni, például: <option>-lavcopts acodec=ac3</option>
|
|
</para>
|
|
|
|
<informalexample><para>
|
|
Egy példa AC-3 tömörítéssel:
|
|
<screen>
|
|
mencoder dvd://2 -o <replaceable>title2.avi</replaceable> -oac lavc -lavcopts acodec=ac3 -ovc copy
|
|
</screen>
|
|
</para></informalexample>
|
|
|
|
<para>
|
|
Ellentétben a <systemitem class="library">libavcodec</systemitem> videó
|
|
codec-jeivel, az audió codec-jei nem használnak el annyi bit-et, amennyit
|
|
szánsz nekik, mivel hiányzik belőlük némi minimális pszichoakusztikus modell
|
|
(ha van egyáltalán), ami a legtöbb egyéb codec implementációban benne van.
|
|
Azonban vedd figyelembe, hogy ezek az audió codec-ek nagyon gyorsak és
|
|
azonnal használhatóak bárhol, ahol a <application>MEncoder</application>t
|
|
a <systemitem class="library">libavcodec</systemitem>-kel együtt fordították
|
|
le (ami a legtöbb esetben így van), és nem függ külső függvénykönyvtáraktól.
|
|
</para>
|
|
|
|
<sect3 id="menc-feat-enc-libavcodec-audio-codecs-pcmadpcm">
|
|
<title>PCM/ADPCM formátum kiegészítő táblázat</title>
|
|
|
|
<para>
|
|
<informaltable frame="all">
|
|
<tgroup cols="2">
|
|
<thead>
|
|
<row><entry>PCM/ADPCM codec neve</entry><entry>Leírás</entry></row>
|
|
</thead>
|
|
<tbody>
|
|
<row>
|
|
<entry>pcm_s32le</entry>
|
|
<entry>előjeles 32-bit-es little-endian</entry>
|
|
</row>
|
|
<row>
|
|
<entry>pcm_s32be</entry>
|
|
<entry>előjeles 32-bit-es big-endian</entry>
|
|
</row>
|
|
<row>
|
|
<entry>pcm_u32le</entry>
|
|
<entry>előjel nélküli 32-bit-es little-endian</entry>
|
|
</row>
|
|
<row>
|
|
<entry>pcm_u32be</entry>
|
|
<entry>előjel nélküli 32-bit-es big-endian</entry>
|
|
</row>
|
|
<row>
|
|
<entry>pcm_s24le</entry>
|
|
<entry>előjeles 24-bit-es little-endian</entry>
|
|
</row>
|
|
<row>
|
|
<entry>pcm_s24be</entry>
|
|
<entry>előjeles 24-bit-es big-endian</entry>
|
|
</row>
|
|
<row>
|
|
<entry>pcm_u24le</entry>
|
|
<entry>előjel nélküli 24-bit-es little-endian</entry>
|
|
</row>
|
|
<row>
|
|
<entry>pcm_u24be</entry>
|
|
<entry>előjel nélküli 24-bit-es big-endian</entry>
|
|
</row>
|
|
<row>
|
|
<entry>pcm_s16le</entry>
|
|
<entry>előjeles 16-bit-es little-endian</entry>
|
|
</row>
|
|
<row>
|
|
<entry>pcm_s16be</entry>
|
|
<entry>előjeles 16-bit-es big-endian</entry>
|
|
</row>
|
|
<row>
|
|
<entry>pcm_u16le</entry>
|
|
<entry>előjel nélküli 16-bit-es little-endian</entry>
|
|
</row>
|
|
<row>
|
|
<entry>pcm_u16be</entry>
|
|
<entry>előjel nélküli 16-bit-es big-endian</entry>
|
|
</row>
|
|
<row>
|
|
<entry>pcm_s8</entry>
|
|
<entry>előjeles 8-bit-es</entry>
|
|
</row>
|
|
<row>
|
|
<entry>pcm_u8</entry>
|
|
<entry>előjel nélküli 8-bit-es</entry>
|
|
</row>
|
|
<row>
|
|
<entry>pcm_alaw</entry>
|
|
<entry>G.711 A-LAW </entry>
|
|
</row>
|
|
<row>
|
|
<entry>pcm_mulaw</entry>
|
|
<entry>G.711 μ-LAW</entry>
|
|
</row>
|
|
<row>
|
|
<entry>pcm_s24daud</entry>
|
|
<entry>előjeles 24-bit-es D-Cinema Audio formátum</entry>
|
|
</row>
|
|
<row>
|
|
<entry>pcm_zork</entry>
|
|
<entry>Activision Zork Nemesis</entry>
|
|
</row>
|
|
<row>
|
|
<entry>adpcm_ima_qt</entry>
|
|
<entry>Apple QuickTime</entry>
|
|
</row>
|
|
<row>
|
|
<entry>adpcm_ima_wav</entry>
|
|
<entry>Microsoft/IBM WAVE</entry>
|
|
</row>
|
|
<row>
|
|
<entry>adpcm_ima_dk3</entry>
|
|
<entry>Duck DK3</entry>
|
|
</row>
|
|
<row>
|
|
<entry>adpcm_ima_dk4</entry>
|
|
<entry>Duck DK4</entry>
|
|
</row>
|
|
<row>
|
|
<entry>adpcm_ima_ws</entry>
|
|
<entry>Westwood Studios</entry>
|
|
</row>
|
|
<row>
|
|
<entry>adpcm_ima_smjpeg</entry>
|
|
<entry>SDL Motion JPEG</entry>
|
|
</row>
|
|
<row>
|
|
<entry>adpcm_ms</entry>
|
|
<entry>Microsoft</entry>
|
|
</row>
|
|
<row>
|
|
<entry>adpcm_4xm</entry>
|
|
<entry>4X Technologies</entry>
|
|
</row>
|
|
<row>
|
|
<entry>adpcm_xa</entry>
|
|
<entry>Phillips Yellow Book CD-ROM eXtended Architecture</entry>
|
|
</row>
|
|
<row>
|
|
<entry>adpcm_ea</entry>
|
|
<entry>Electronic Arts</entry>
|
|
</row>
|
|
<row>
|
|
<entry>adpcm_ct</entry>
|
|
<entry>Creative 16->4-bit</entry>
|
|
</row>
|
|
<row>
|
|
<entry>adpcm_swf</entry>
|
|
<entry>Adobe Shockwave Flash</entry>
|
|
</row>
|
|
<row>
|
|
<entry>adpcm_yamaha</entry>
|
|
<entry>Yamaha</entry>
|
|
</row>
|
|
<row>
|
|
<entry>adpcm_sbpro_4</entry>
|
|
<entry>Creative VOC SoundBlaster Pro 8->4-bit</entry>
|
|
</row>
|
|
<row>
|
|
<entry>adpcm_sbpro_3</entry>
|
|
<entry>Creative VOC SoundBlaster Pro 8->2.6-bit</entry>
|
|
</row>
|
|
<row>
|
|
<entry>adpcm_sbpro_2</entry>
|
|
<entry>Creative VOC SoundBlaster Pro 8->2-bit</entry>
|
|
</row>
|
|
<row>
|
|
<entry>adpcm_thp</entry>
|
|
<entry>Nintendo GameCube FMV THP</entry>
|
|
</row>
|
|
<row>
|
|
<entry>adpcm_adx</entry>
|
|
<entry>Sega/CRI ADX</entry>
|
|
</row>
|
|
</tbody>
|
|
</tgroup>
|
|
</informaltable>
|
|
</para>
|
|
</sect3>
|
|
|
|
</sect2>
|
|
|
|
<!-- ********** -->
|
|
|
|
<sect2 id="menc-feat-dvd-mpeg4-lavc-encoding-options">
|
|
<title>A libavcodec kódolási opciói</title>
|
|
|
|
<para>
|
|
Ideális esetben szeretnéd, ha csak azt kellene mondani a kódolónak,
|
|
hogy váltson "jobb minőségre" és kész.
|
|
Ez szép is lenne, de sajnos nehezen megvalósítható, mert a különböző
|
|
kódolási opciók különböző minőséget eredményeznek, mely függ a forrás
|
|
anyagtól is.
|
|
Ez azért van, mert a tömörítés függ a szóbanforgó videó vizuális tulajdonságaitól.
|
|
Például az anime és az élő felvétel két nagyon különböző anyag és
|
|
így különböző opciókat követelnek meg az optimális kódoláshoz.
|
|
A jó hír, hogy néhány opciót soha sem lehet elhagyni, mint például az
|
|
<option>mbd=2</option>, <option>trell</option> és <option>v4mv</option>.
|
|
Olvass tovább a gyakori kódolási opciók leírásához.
|
|
</para>
|
|
|
|
<itemizedlist>
|
|
<title>Állítható opciók:</title>
|
|
<listitem><para>
|
|
<emphasis role="bold">vmax_b_frames</emphasis>: 1 vagy 2 a jó, a filmtől
|
|
függően.
|
|
Figyelj rá, hogy úgy kell kódolnod, hogy DivX5-tel dekódolható legyen az
|
|
eredmény, aktiválnod kell a zárt GOP támogatást a
|
|
<systemitem class="library">libavcodec</systemitem> <option>cgop</option>
|
|
opciójával, de ki kell kapcsolnod a jelenet detektálást, ami
|
|
nem túl jó ötlet, mivel rontja a kódolási hatékonyságot egy kicsit.
|
|
</para></listitem>
|
|
<listitem><para>
|
|
<emphasis role="bold">vb_strategy=1</emphasis>: segít a gyors mozgású jeleneteknél.
|
|
Néhány videónál a vmax_b_frames rontja a minőséget, de a vmax_b_frames=2 a
|
|
vb_strategy=1-gyel együtt segít.
|
|
</para></listitem>
|
|
<listitem><para>
|
|
<emphasis role="bold">dia</emphasis>: mozgás kereső tartomány. A nagyobb a
|
|
jobb és a lassabb.
|
|
Negatív értékek teljesen más skálát adnak.
|
|
A jó értékek -1 a gyors kódoláshoz vagy 2-4 a lassabbhoz.
|
|
</para></listitem>
|
|
<listitem><para>
|
|
<emphasis role="bold">predia</emphasis>: mozgás kereső előre-lépés.
|
|
Nem olyan fontos, mint a dia. Jó értékek 1-től (alapértelmezett) 4-ig.
|
|
preme=2 kell hozzá, hogy igazán hasznos legyen.
|
|
</para></listitem>
|
|
<listitem><para>
|
|
<emphasis role="bold">cmp, subcmp, precmp</emphasis>: Összehasonlító funkciók
|
|
a mozgás becsléshez.
|
|
Kísérletezz a 0 (alapértelmezett), 2 (hadamard), 3 (dct) és 6 (ráta
|
|
torzítás) értékekkel!
|
|
0 a leggyorsabb és és elegendő a precmp-hez.
|
|
A cmp-hez és subcmp-hez 2 jó, ha anime és 3 ha élő akció.
|
|
A 6 vagy jobb vagy nem, de mindenképpen lassabb.
|
|
</para></listitem>
|
|
<listitem><para>
|
|
<emphasis role="bold">last_pred</emphasis>: Az előző képkockából megjósolandó
|
|
mozgások száma.
|
|
1-3 vagy hasonló segít egy kis sebességcsökkenés árán.
|
|
A magasabb értékek lassúak, de igazi hasznuk nincs.
|
|
</para></listitem>
|
|
<listitem><para>
|
|
<emphasis role="bold">cbp, mv0</emphasis>: A makroblokkok kiválasztását
|
|
irányítja. Egy kis sebességcsökkenés egy kis minőségjavulásért.
|
|
</para></listitem>
|
|
<listitem><para>
|
|
<emphasis role="bold">qprd</emphasis>: adaptív kvantálás, mely a makroblokk
|
|
komplexitásán alapul.
|
|
Vagy segít vagy nem, a videó és egyéb opciók függvényében.
|
|
Ennek lehetnek mellékhatásai, hacsak nem állítod be a vqmax-ot valami
|
|
ésszerűen alacsony értékre (a 6 jó, talán minimum 4); a vqmin=1 is segíthet.
|
|
</para></listitem>
|
|
<listitem><para>
|
|
<emphasis role="bold">qns</emphasis>: nagyon lassú, különösen ha a
|
|
qprd-vel kombinálod.
|
|
Ezen opció hatására a kódoló minimalizálja a zajt tömörítési mellékhatásokkal,
|
|
ahelyett, hogy a szigorúan a forráshoz próbálna igazodni.
|
|
Ne használd ezt, csak ha már minden mást kipróbáltál és az eredmény még
|
|
mindig nem elég jó.
|
|
</para></listitem>
|
|
<listitem><para>
|
|
<emphasis role="bold">vqcomp</emphasis>: Rátaírányítás beállítása.
|
|
Hogy milyen értékek jók, az a filmtől függ.
|
|
Nyugodtan elhagyhatod ezt, ha akarod.
|
|
A vqcomp csökkentése több bitet engedélyez az alacsony komplexitású részeknél,
|
|
a növelése a nagy komplexitású részekre teszi őket (alapértelmezés: 0.5,
|
|
tartomány: 0-1, javasolt tartomány: 0.5-0.7).
|
|
</para></listitem>
|
|
<listitem><para>
|
|
<emphasis role="bold">vlelim, vcelim</emphasis>: Beállítja a szimpla együttható
|
|
eliminációs küszöböt a fényerősséghez és a chroma plane-khez.
|
|
Ezt elkülönítve kódolja le minden MPEG-szerű algorítmus.
|
|
Az ötlet emögött az opció mögött az, hogy egy jó heurisztikát használnak
|
|
annak megállapítására, hogy a blokkban történt változás kisebb-e, mint az
|
|
általad megadott küszöb és ebben az esetben egyszerűen "változtatás nélkül"
|
|
kerül elkódolásra a blokk.
|
|
Ez biteket ment meg és talán gyorsít is a kódoláson. A vlelim=-4 és
|
|
vcelim=9 látszólag jók az élő filmekhez, de nem segítenek az anime-nál;
|
|
ha animációt kódolsz, inkább hagyd őket változatlanul.
|
|
</para></listitem>
|
|
<listitem><para>
|
|
<emphasis role="bold">qpel</emphasis>: Negyed pixel mozgás becslés.
|
|
Az MPEG-4 fél pixeles precíziót használ a mozgáskereséshez alapértelmezésként,
|
|
ezért ez az opció plusz terhelést hoz, mivel több információ tárolódik az
|
|
elkódolt fájlban. A tömörítési nyereség/veszteség a filmtől függ, de
|
|
általában nem hatékony anime-oknál.
|
|
A qpel mindig jelentős dekódolási CPU idő igénnyel jár (+25% a gyakorlatban).
|
|
</para></listitem>
|
|
<listitem><para>
|
|
<emphasis role="bold">psnr</emphasis>: nem érinti az aktuális kódolást,
|
|
de készít egy log fájlt, mely megadja minden képkocka típusát/méretét/minőségét
|
|
és a végére odaírja a PSNR-t (Peak Signal to Noise Ratio, Zajarány csúcspontja).
|
|
</para></listitem>
|
|
</itemizedlist>
|
|
|
|
<itemizedlist>
|
|
<title>Opciók, melyekkel nem javasolt játszadozni:</title>
|
|
<listitem><para>
|
|
<emphasis role="bold">vme</emphasis>: Az alapértelmezett a legjobb.
|
|
</para></listitem>
|
|
<listitem><para>
|
|
<emphasis role="bold">lumi_mask, dark_mask</emphasis>: Pszichovizuális
|
|
adaptív kvantálás.
|
|
Ne játszadozz ezekkel az opciókkal, ha számít a minőség.
|
|
Az ésszerű értékek jók lehetnek a te esetedben, de vigyázz, ez nagyon
|
|
szubjektív.
|
|
</para></listitem>
|
|
<listitem><para>
|
|
<emphasis role="bold">scplx_mask</emphasis>: Megpróbálja megelőzni a
|
|
blokkos mellékhatásokat, de az utófeldolgozás jobb.
|
|
</para></listitem>
|
|
</itemizedlist>
|
|
</sect2>
|
|
|
|
<!-- ********** -->
|
|
|
|
<sect2 id="menc-feat-mpeg4-lavc-example-settings">
|
|
<title>Kódolás beállítási példák</title>
|
|
|
|
<para>
|
|
A következő beállítások példák különböző kódolási opciók
|
|
kombinációjára, amik a sebesség vs minőség kérdést döntően
|
|
befolyásolják ugyanazon cél bitráta mellett.
|
|
</para>
|
|
|
|
<para>
|
|
Az összes kódolási beállítást egy 720x448 @30000/1001 fps-es példa
|
|
videón teszteltük, a cél bitráta 900kbps volt, a gép pedig egy
|
|
AMD-64 3400+ 2400 MHz-en 64 bites módban.
|
|
Mindegyik kódolási beállítás tartalmazza a kódolási sebességet
|
|
(képkocka per másodpercben) és a PSNR veszteséget (dB-ben) a
|
|
"nagyon jó minőséghez" viszonyítva.
|
|
Kérlek vedd figyelembe, hogy a forrásanyagodtól, a géped típusától
|
|
és a fejlesztésektől függően különböző eredményeket kaphatsz.
|
|
</para>
|
|
|
|
<para>
|
|
<informaltable frame="all">
|
|
<tgroup cols="4">
|
|
<thead>
|
|
<row>
|
|
<entry>Leírás</entry>
|
|
<entry>Kódolási opciók</entry>
|
|
<entry>sebesség (fps-ben)</entry>
|
|
<entry>Relatív PSNR veszteség (dB-ben)</entry>
|
|
</row>
|
|
</thead>
|
|
<tbody>
|
|
<row>
|
|
<entry>Nagyon jó minőség</entry>
|
|
<entry><option>vcodec=mpeg4:mbd=2:mv0:trell:v4mv:cbp:last_pred=3:predia=2:dia=2:vmax_b_frames=2:vb_strategy=1:precmp=2:cmp=2:subcmp=2:preme=2:qns=2</option></entry>
|
|
<entry>6fps</entry>
|
|
<entry>0dB</entry>
|
|
</row>
|
|
<row>
|
|
<entry>Jó minőség</entry>
|
|
<entry><option>vcodec=mpeg4:mbd=2:trell:v4mv:last_pred=2:dia=-1:vmax_b_frames=2:vb_strategy=1:cmp=3:subcmp=3:precmp=0:vqcomp=0.6:turbo</option></entry>
|
|
<entry>15fps</entry>
|
|
<entry>-0.5dB</entry>
|
|
</row>
|
|
<row>
|
|
<entry>Gyors</entry>
|
|
<entry><option>vcodec=mpeg4:mbd=2:trell:v4mv:turbo</option></entry>
|
|
<entry>42fps</entry>
|
|
<entry>-0.74dB</entry>
|
|
</row>
|
|
<row>
|
|
<entry>Valós idejű</entry>
|
|
<entry><option>vcodec=mpeg4:mbd=2:turbo</option></entry>
|
|
<entry>54fps</entry>
|
|
<entry>-1.21dB</entry>
|
|
</row>
|
|
</tbody>
|
|
</tgroup>
|
|
</informaltable>
|
|
</para>
|
|
</sect2>
|
|
|
|
<!-- ********** -->
|
|
|
|
<sect2 id="custommatrices">
|
|
<title>Egyedi inter/intra matricák</title>
|
|
|
|
<para>
|
|
A <link linkend="ffmpeg"><systemitem class="library">libavcodec</systemitem></link>
|
|
ezen képességével egyedi inter (I-frame/kulcs frame) és intra
|
|
(P-frame/jósolt frame) matricákat állíthatsz be. Több codec támogatja ezt:
|
|
az <systemitem>mpeg1video</systemitem> és <systemitem>mpeg2video</systemitem>
|
|
a jelentések szerint működik.
|
|
</para>
|
|
|
|
<para>
|
|
Ennek egy tipikus felhasználása a <ulink url="http://www.kvcd.net/">KVCD</ulink>
|
|
által javasolt matricák beállítása.
|
|
</para>
|
|
|
|
<para>
|
|
Egy <emphasis role="bold">KVCD "Notch" Kvantálási Mátrix:</emphasis>
|
|
</para>
|
|
|
|
<para>
|
|
Intra:
|
|
<screen>
|
|
8 9 12 22 26 27 29 34
|
|
9 10 14 26 27 29 34 37
|
|
12 14 18 27 29 34 37 38
|
|
22 26 27 31 36 37 38 40
|
|
26 27 29 36 39 38 40 48
|
|
27 29 34 37 38 40 48 58
|
|
29 34 37 38 40 48 58 69
|
|
34 37 38 40 48 58 69 79
|
|
</screen>
|
|
|
|
Inter:
|
|
<screen>
|
|
16 18 20 22 24 26 28 30
|
|
18 20 22 24 26 28 30 32
|
|
20 22 24 26 28 30 32 34
|
|
22 24 26 30 32 32 34 36
|
|
24 26 28 32 34 34 36 38
|
|
26 28 30 32 34 36 38 40
|
|
28 30 32 34 36 38 42 42
|
|
30 32 34 36 38 40 42 44
|
|
</screen>
|
|
</para>
|
|
|
|
<para>
|
|
Használat:
|
|
<screen>
|
|
mencoder <replaceable>input.avi</replaceable> -o <replaceable>output.avi</replaceable> -oac copy -ovc lavc \
|
|
-lavcopts inter_matrix=...:intra_matrix=...
|
|
</screen>
|
|
</para>
|
|
|
|
<para>
|
|
<screen>
|
|
mencoder <replaceable>input.avi</replaceable> -ovc lavc -lavcopts \
|
|
vcodec=mpeg2video:intra_matrix=8,9,12,22,26,27,29,34,9,10,14,26,27,29,34,37,\
|
|
12,14,18,27,29,34,37,38,22,26,27,31,36,37,38,40,26,27,29,36,39,38,40,48,27,\
|
|
29,34,37,38,40,48,58,29,34,37,38,40,48,58,69,34,37,38,40,48,58,69,79\
|
|
:inter_matrix=16,18,20,22,24,26,28,30,18,20,22,24,26,28,30,32,20,22,24,26,\
|
|
28,30,32,34,22,24,26,30,32,32,34,36,24,26,28,32,34,34,36,38,26,28,30,32,34,\
|
|
36,38,40,28,30,32,34,36,38,42,42,30,32,34,36,38,40,42,44 -oac copy -o svcd.mpg
|
|
</screen>
|
|
</para>
|
|
</sect2>
|
|
|
|
<!-- ********** -->
|
|
|
|
<sect2 id="menc-feat-dvd-mpeg4-example">
|
|
<title>Példa</title>
|
|
|
|
<para>
|
|
Nos hát, éppen most vetted meg a Harry Potter és a titkok kamrája gyönyörű
|
|
új példányát (widescreen edition természetesen) és le akarod rip-pelni
|
|
ezt a DVD-t, hogy hozzáadhasd a PC-s házimozidhoz. Ez egy régió 1-es
|
|
DVD, így NTSC-s. Az alábbi példa egyszerűen alkalmazható PAL-ra is, a
|
|
<option>-ofps 24000/1001</option> kapcsoló elhagyásával (mert a kimeneti
|
|
frameráta ugyan annyi, mint a bemeneti) és természetesen a vágás méretei
|
|
is mások lesznek.
|
|
</para>
|
|
|
|
<para>
|
|
Miután lefuttattad az <option>mplayer dvd://1</option> parancsot, kövesd
|
|
a <link linkend="menc-feat-telecine">mit kezdjünk a telecine-nel és az
|
|
átlapolással NTSC DVD-ken</link> részben leírt utasításokat és fedezd
|
|
fel, hogy ez egy 24000/1001 fps-es progresszív videó, ami azt jelenti,
|
|
hogy nem kell inverz telecine szűrőt használnod, mint pl. a
|
|
<option>pullup</option> vagy a <option>filmdint</option>.
|
|
</para>
|
|
|
|
<para id="menc-feat-dvd-mpeg4-example-crop">
|
|
Következőnek megállapítjuk a megfelelő vágási téglalapot, így használjuk a
|
|
cropdetect szűrőt:
|
|
<screen>mplayer dvd://1 -vf cropdetect</screen>
|
|
Győződj meg róla, hogy egy teljesen kitöltött képkockán állsz (pl. egy világos
|
|
jelenet a nyitó képek és logók után), ezt fogod látni az
|
|
<application>MPlayer</application> konzol kimenetén:
|
|
<screen>crop area: X: 0..719 Y: 57..419 (-vf crop=720:362:0:58)</screen>
|
|
Ezután lejátszuk a filmet ezzel a szűrővel a számok ellenérzéséhez:
|
|
<screen>mplayer dvd://1 -vf crop=720:362:0:58</screen>
|
|
És azt látjuk, hogy tökéletesen megfelel. Majd meggyőződünk, hogy a
|
|
szélesség és a magasság osztható 16-tal. A szélesség jó, de a magasság
|
|
nem. Mivel nem buktunk hetedik osztályban matekból, tudjuk, hogy a 16
|
|
legközelebbi többszöröse, ami kisebb, mint 362, a 352.
|
|
</para>
|
|
|
|
<para>
|
|
Így egyszerűen használhatjuk a <option>crop=720:352:0:58</option> opciót,
|
|
de jó lenne egy kicsit lecsípni a telejéből és az aljából, hogy középen
|
|
maradjunk. Összehúzzuk a magasságot 10 pixellel, de nem akarjuk növelni
|
|
az y-offszetet 5 pixellel, mert az páratlan szám és rontja a minőséget.
|
|
Helyette inkább 4 pixellel növeljük az y-offszetet:
|
|
<screen>mplayer dvd://1 -vf crop=720:352:0:62</screen>
|
|
A másik ok, hogy lecsípjünk pixeleket mid fent, mint lent, hogy biztosak
|
|
legyünk, hogy a fél-fekete pixeleket is levágtuk, amennyiben vannak.
|
|
Figyelj rá, hogy ha a videó telecine-lt, a <option>pullup</option> szűrő
|
|
(vagy bármelyik inverz telecine szűrő, amit használsz) a vágás előtt
|
|
szerepeljen a szűrők láncában. Ha átlapolt, végezz deinterlace-t a vágás
|
|
előtt. (Ha úgy döntesz, hogy megtartod az átlapolt videót, győződj meg
|
|
róla, hogy a függőleges vágási offszet 4 többszöröse.)
|
|
</para>
|
|
|
|
<para>
|
|
Ha érdekel annak a 10 pixelnek az elvesztése, inkább a méretek 16
|
|
legközelebbi többszörösére való kicsinyítése érdekelhet. A szűrő lánc
|
|
ez esetben:
|
|
<screen>-vf crop=720:362:0:58,scale=720:352</screen>
|
|
A videó ilyen módon történő lekicsinyítése azt jelenti, hogy néhány
|
|
apró részlet elveszik, de ez valószínűleg nem lesz észrevehető. A
|
|
nagyítás rosszabb minőséget eredményez (hacsak nem növeled a bitrátát).
|
|
A vágás az összes ilyen pixeltől megszabadít. Ez egy üzlet, amit minden
|
|
esetben meg kell fontolnod. például ha a DVD videó televízióra készült,
|
|
ajánlott elkerülni a függőleges méretezést, mert a sor mintázás az
|
|
eredeti felvételhez igazodik.
|
|
</para>
|
|
|
|
<para>
|
|
Megtekintés után azt látjuk, hogy a filmünk eléggé eseménydús és
|
|
nagyon részletes, így 2400Kbit-et választunk bitrátának.
|
|
</para>
|
|
|
|
<para>
|
|
Most már készen vagyunk a két lépéses kódoláshoz. Első lépés:
|
|
<screen>
|
|
mencoder dvd://1 -ofps 24000/1001 -oac copy -o <replaceable>Harry_Potter_2.avi</replaceable> -ovc lavc \
|
|
-lavcopts vcodec=mpeg4:vbitrate=2400:v4mv:mbd=2:trell:cmp=3:subcmp=3:autoaspect:vpass=1 \
|
|
-vf pullup,softskip,crop=720:352:0:62,hqdn3d=2:1:2
|
|
</screen>
|
|
A második lépés ugyan ez, csak megadjuk a <option>vpass=2</option>-t:
|
|
<screen>
|
|
mencoder dvd://1 -ofps 24000/1001 -oac copy -o <replaceable>Harry_Potter_2.avi</replaceable> -ovc lavc \
|
|
-lavcopts vcodec=mpeg4:vbitrate=2400:v4mv:mbd=2:trell:cmp=3:subcmp=3:autoaspect:vpass=2 \
|
|
-vf pullup,softskip,crop=720:352:0:62,hqdn3d=2:1:2
|
|
</screen>
|
|
</para>
|
|
|
|
<para>
|
|
A <option>v4mv:mbd=2:trell</option> kapcsolók nagyban javítják a minőséget
|
|
a kódolási idő rovására. Nem ajánlott ezen opciók elhagyása, ha a fő cél
|
|
a jó minőség. A <option>cmp=3:subcmp=3</option> opciók egy
|
|
összehasonlító függvényt választanak ki, ami jobb minőséget biztosít,
|
|
mint az alapértelmezettek. Ezzel a paraméterrel is kísérletezhetsz (lásd
|
|
a man oldalt a lehetséges értékekért), mivel a különböző függvények
|
|
nagyban befolyásolják a minőséget a forrás anyagtól függően. Például ha
|
|
úgy találod, hogy a <systemitem class="library">libavcodec</systemitem>
|
|
túl kockás eredményt ad, megpróbálhatod a kísérleti NSSE összehasonlító
|
|
függvény használatát a <option>*cmp=10</option> opcióval.
|
|
</para>
|
|
|
|
<para>
|
|
Ennél a filmnél a keletkező AVI 138 perc hosszú lesz és közel 3 GB-os.
|
|
És mivel azt mondtuk, hogy a fájl méret nem számít, ez egy tökéletesen
|
|
megfelelő méret. De ha kisebbet szeretnél, próbálj ki egy alacsonyabb
|
|
bitrátát. A bitráták növelése csökkenő mértékű javulást hoz, így pl.
|
|
tisztán kivehető a különbség az 1800Kbit és a 2000Kbit között, szinte
|
|
észrevehetetlen 2000Kbit felett.
|
|
Nyugodtan kísérletezz, amíg csak kedved tartja.
|
|
</para>
|
|
|
|
<para>
|
|
Mivel a forrás videót áteresztettük a zajeltávolító szűrőn, talán egy picit
|
|
vissza akarsz tenni a lejátszás közben. Ez, az <option>spp</option>
|
|
utófeldolgozó szűrővel drasztikusan javítja a felfogható minőséget és
|
|
segít a segít a videó kockásodásának megszüntetésében. Az
|
|
<application>MPlayer</application> <option>autoq</option> opciójával
|
|
szabályozhatod az spp szűrő utófeldolgozásának mértékét a CPU-tól függően.
|
|
Emellett valószínűleg gamma és/vagy szín korrekciót is szeretnél csinálni,
|
|
hogy jobban illeszkedjen a monitorodhoz. Például:
|
|
<screen>
|
|
mplayer <replaceable>Harry_Potter_2.avi</replaceable> -vf spp,noise=9ah:5ah,eq2=1.2 -autoq 3
|
|
</screen>
|
|
</para>
|
|
</sect2>
|
|
</sect1>
|
|
|
|
|
|
<!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -->
|
|
|
|
|
|
<sect1 id="menc-feat-xvid">
|
|
<title>Kódolás az <systemitem class="library">Xvid</systemitem>
|
|
codec-kal</title>
|
|
|
|
<para>
|
|
Az <systemitem class="library">Xvid</systemitem> egy szabad függvénykönyvtár
|
|
MPEG-4 ASP videó stream-ek elkódolásához.
|
|
A kódolás megkezdése előtt <link linkend="xvid">be kell állítanod
|
|
a <application>MEncoder</application>ben a támogatását</link>.
|
|
</para>
|
|
|
|
<para>
|
|
Ez a leírás főként hasonló információkat szeretne nyújtani, mint az
|
|
x264 kódolási leírás.
|
|
Ezért, kérlek kezdd azzal, hogy elolvasod azon leírásnak az
|
|
<link linkend="menc-feat-x264-encoding-options-intro">első részét</link>.
|
|
</para>
|
|
|
|
<!-- ********** -->
|
|
|
|
<sect2 id="menc-feat-xvid-intro">
|
|
<title>Milyen opciókat kell használnom, ha a legjobb eredményt akarom?</title>
|
|
|
|
<para>
|
|
Kezdésként nézd át az
|
|
<application>MPlayer</application> man oldalának
|
|
<systemitem class="library">Xvid</systemitem> részét!
|
|
Ez a rész csak a man oldal kiegészítéseként használható.
|
|
</para>
|
|
|
|
<para>
|
|
Az Xvid alapértelmezett beállításai egyensúlyt teremtenek a
|
|
sebesség és a minőség között, így nyugodtan használhatod azokat,
|
|
ha a következő rész túl zavarosnak tűnik.
|
|
</para>
|
|
</sect2>
|
|
|
|
<!-- ********** -->
|
|
|
|
<sect2 id="menc-feat-xvid-encoding-options">
|
|
<title>Az <systemitem class="library">Xvid</systemitem> kódolási opciói</title>
|
|
|
|
<itemizedlist>
|
|
<listitem><para>
|
|
<emphasis role="bold">vhq</emphasis>
|
|
Ez a beállítás a makroblokk döntési algoritmust érinti, minél
|
|
nagyobb a beállítás, annál okosabb a döntés.
|
|
Az alapértelmezett érték bátran használható minden kódoláshoz,
|
|
míg a nagyobb értékek segítik a PSNR-t de jelentősen lassabbak.
|
|
Kérlek vedd figyelembe, hogy a jobb PSNR nem feltétlenül jelenti
|
|
azt, hogy a kép jobban fog kinézni, de közelebb lesz az eredetihez.
|
|
A kikapcsolása észrevehetően felgyorsítja a kódolást; ha a sebesség
|
|
kritikus számodra, megéri a cserét.
|
|
</para></listitem>
|
|
<listitem><para>
|
|
<emphasis role="bold">bvhq</emphasis>
|
|
Ez ugyan azt csinálja, mint a vhq, de a B-kockákon.
|
|
Elhanyagolható a hatása a sebességre és kismértékben javít a minőségen
|
|
(+0.1dB PSNR körül).
|
|
</para></listitem>
|
|
<listitem><para>
|
|
<emphasis role="bold">max_bframes</emphasis>
|
|
Az egymás után engedélyezett több B-kocka általában javítja a
|
|
tömöríthetőséget, de több blokkosodási mellékhatást okoz.
|
|
Az alapértelmezett beállítás jó kompromisszum a tömöríthetőség és a
|
|
minőség között, de növelheted 3-ig ha ki vagy éhezve a bitrátára.
|
|
Csökkentheted 1-re vagy 0-ra ha a tökéletes minőséget céloztad meg,
|
|
de ekkor biztosan tudnod kell, hogy a forrásod bitrátája elég nagy
|
|
ahhoz, hogy a kódolónak nem kell növelni a kvantálást, hogy elére ezt.
|
|
</para></listitem>
|
|
<listitem><para>
|
|
<emphasis role="bold">bf_threshold</emphasis>
|
|
Ez a kódoló B-kocka érzékenységét szabályozza, a nagyobb érték hatására
|
|
több B-kockát használ (és fordítva).
|
|
Ez a beállítás a <option>max_bframes</option>-szel együtt használható;
|
|
ha bitráta éhségben szenvedsz, növelned kell mind a
|
|
<option>max_bframes</option>, mind a <option>bf_threshold</option>
|
|
értékét, míg ha növeled a <option>max_bframes</option>-t és csökkented
|
|
a <option>bf_threshold</option>-ot, akkor a kódoló több B-kockát fog
|
|
használni, de csak azokon a helyeken, ahol
|
|
<emphasis role="bold">tényleg</emphasis> szükséges.
|
|
A <option>max_bframes</option> alacsony értéke és a
|
|
<option>bf_threshold</option> magas értéke nem túl bölcs döntés,
|
|
mert ez arra kényszeríti a kódolót, hogy olyan helyekre is tegyen
|
|
B-kockát, ahol nincs rájuk szükség, így csökkenti a vizuális
|
|
minőséget. De ha kompatibilis akarsz maradni az egyedi lejátszókkal,
|
|
amik csak a régi DivX profilokat támogatják (amik csak legfeljebb
|
|
1 B-kockát támogatnak sorban), ez az egyetlen lehetőséged a
|
|
tömöríthetőség növelésére a B-kockák használatával.
|
|
</para></listitem>
|
|
<listitem><para>
|
|
<emphasis role="bold">trellis</emphasis>
|
|
Optimalizálja a kvantálási eljárást, hogy optimális arányt találjon
|
|
a PSNR és a bitráta között, ami jelentős bitmegtakarítást engedélyez.
|
|
Cserébe ezek a bitek a videóban máshol kerülnek felhasználásra,
|
|
növelve az össz minőséget.
|
|
Mindig ajánlott bekapcsolva hagyni, mert jelentősen befolyásolja a
|
|
minőséget. Még ha neked a sebesség számít, akkor is ne kapcsold ki,
|
|
amíg nem kapcsoltad ki a <option>vhq</option>-t és a többi CPU-éhes
|
|
opciót nem állítottad a minimumra.
|
|
</para></listitem>
|
|
<listitem><para>
|
|
<emphasis role="bold">hq_ac</emphasis>
|
|
Bekapcsol egy jobb együttható kölcségbecslő módszert, ami kissé
|
|
csökkenti a fájlméretet, kb. 0,15-0,19% között (ami kevesebb, mint
|
|
0,01dB-es PSNR növekedésnek felel meg), miközben jelentéktelen
|
|
hatása van a sebességre. Ezért ajánlott mindig bekapcsolva hagyni.
|
|
</para></listitem>
|
|
<listitem><para>
|
|
<emphasis role="bold">cartoon</emphasis>
|
|
A rajzfilm tartalom jobb kódolására lett kitalálva és nincs
|
|
hatása a sebességre, mivel csak a döntési heurisztikát tuningolja
|
|
az ilyen típusú tartalomnál.
|
|
</para></listitem>
|
|
<listitem>
|
|
<para>
|
|
<emphasis role="bold">me_quality</emphasis>
|
|
Ez a beállítás a mozgás előrejelzés pontosságát vezérli.
|
|
Minél nagyobb a <option>me_quality</option> érték, annál
|
|
pontosabb lesz az eredeti mozgás előrejelzése és minél pontosabb
|
|
ez, annál jobban közelíti majd az eredmény az eredeti mozgást.
|
|
</para>
|
|
<para>
|
|
Az alapértelmezett érték jó a legtöbb esetben; így nem javasolt
|
|
a változtatása, csak ha tényleg a sebesség számít, mivel minden
|
|
a mozgás becslésével megmentett bit másra lesz felhasználva,
|
|
növelve az össz minőséget. Ezért ne menj 5 alá és ezt is csak
|
|
végszükség esetén állítsd be.
|
|
</para>
|
|
</listitem>
|
|
<listitem><para>
|
|
<emphasis role="bold">chroma_me</emphasis>
|
|
Javítja a mozgás előrejelzést úgy, hogy a számításba beleveszi
|
|
a chroma (szín) információkat is, míg a <option>me_quality</option>
|
|
csak a luma-t (grayscale) használja.
|
|
Ez 5-10%-kal lassítja a kódolást, de eléggé javítja a vizuális
|
|
minőséget a blokkosodási effektusok csökkentésével és csökkenti
|
|
a fájlméretet kb. 1,3%-kal.
|
|
Ha a sebesség érdekel, kapcsold ki ezt az opciót, mielőtt
|
|
elkezdenél töprengeni a <option>me_quality</option> csökkentésén.
|
|
</para></listitem>
|
|
<listitem><para>
|
|
<emphasis role="bold">chroma_opt</emphasis>
|
|
A chroma képek minőségének javítása a célja az egyszerű
|
|
fehér/fekete sarkoknál a tömörítés javítása helyett.
|
|
Ezzel csökkentheted a "red stairs" effektust.
|
|
</para></listitem>
|
|
<listitem><para>
|
|
<emphasis role="bold">lumi_mask</emphasis>
|
|
Megpróbál kevesebb bitrátát adni a kép azon részeinek, amiket az
|
|
emberi szem nem lát olyan jól, így a kódolónak lehetősége van a
|
|
megspórolt biteket a kép sokkal fontosabb részeinél felhasználni.
|
|
Ezen opció nyeresége a kódolás minőségének szempontjából erősen
|
|
függ az egyéni beállításoktól és a megtekintéshez használt monitor
|
|
típusától és beállításaitól (tipikusan egy világosabb vagy TFT
|
|
monitoron nem fog olyan jól kinézni).
|
|
</para></listitem>
|
|
<listitem>
|
|
<para>
|
|
<emphasis role="bold">qpel</emphasis>
|
|
Növeli a várható mozgásvektorok számát a mozgás előrejelzés
|
|
pontosságának növelésével halfpel-ről quarterpel-re.
|
|
Az ötlet annyi, hogy a jobb mozgásvektorokért cserébe csökken a
|
|
bitráta (ezért nő a minőség).
|
|
Habár a quarterpel pontosságú mozgásvektorok kódolásához egy kicsivel
|
|
több bit kell, a várható vektorok nem mindig adnak (sokkal) jobb
|
|
minőséget.
|
|
Elég gyakran a codec még mindig biteket biztosít az extra
|
|
pontossághoz, de csak kicsi vagy semmilyen minőségi nyereség nincs
|
|
cserében.
|
|
Sajnos, nem lehet előre megmondani a <option>qpel</option> lehetséges
|
|
nyereségeit, így kódolnod kell vele is és nélküle is, hogy biztosan
|
|
tudd.
|
|
</para>
|
|
<para>
|
|
A <option>qpel</option> majdnem dupla kódolási időt jelent és 25%-kal
|
|
több feldolgozási erőforrást igényel a dekódolása. Nem minden
|
|
asztali lejátszó támogatja.
|
|
</para>
|
|
</listitem>
|
|
<listitem><para>
|
|
<emphasis role="bold">gmc</emphasis>
|
|
Biteket próbál megspórolni bizonyos jeleneteknél úgy, hogy
|
|
egy mozgásvektort használ az egész kockához.
|
|
Ez majdnem mindig növeli a PSNR-t, de jelentősen lelassítja
|
|
a kódolást (és a dekódolást is).
|
|
Ezért csak akkor ajánlott használnod, ha a <option>vhq</option>
|
|
a maximumra állítottad.
|
|
Az <systemitem class="library">Xvid</systemitem> GMC-je sokkal
|
|
kifinomultabb, mint a DivX-é, de csak kevés lejátszó támogatja.
|
|
</para></listitem>
|
|
</itemizedlist>
|
|
</sect2>
|
|
|
|
<!-- ********** -->
|
|
|
|
<sect2 id="menc-feat-xvid-encoding-profiles">
|
|
<title>Kódolási profilok</title>
|
|
|
|
<para>
|
|
Az Xvid támogatja a kódolási profilokat a <option>profile</option> opción
|
|
keresztül, amivel az XVid videó folyam tulajdonságaiban olyan
|
|
megszorításokat lehet előírni, amikkel az lejátszható marad az összes
|
|
eszközön, ami támogatja a választott profilt.
|
|
A megkötések a felbontásra, a bitrátára és bizonyos MPEG-4-es funkciókra
|
|
vonatkoznak.
|
|
A következő táblázat megmutatja, hogy melyik profil mit támogat.
|
|
</para>
|
|
|
|
<informaltable>
|
|
<tgroup cols="16" align="center">
|
|
<colspec colnum="1" colname="col1"/>
|
|
<colspec colnum="2" colname="col2"/>
|
|
<colspec colnum="3" colname="col3"/>
|
|
<colspec colnum="4" colname="col4"/>
|
|
<colspec colnum="5" colname="col5"/>
|
|
<colspec colnum="6" colname="col6"/>
|
|
<colspec colnum="7" colname="col7"/>
|
|
<colspec colnum="8" colname="col8"/>
|
|
<colspec colnum="9" colname="col9"/>
|
|
<colspec colnum="10" colname="col10"/>
|
|
<colspec colnum="11" colname="col11"/>
|
|
<colspec colnum="12" colname="col12"/>
|
|
<colspec colnum="13" colname="col13"/>
|
|
<colspec colnum="14" colname="col14"/>
|
|
<colspec colnum="15" colname="col15"/>
|
|
<colspec colnum="16" colname="col16"/>
|
|
<colspec colnum="17" colname="col17"/>
|
|
<spanspec spanname="spa2-5" namest="col2" nameend="col5"/>
|
|
<spanspec spanname="spa6-11" namest="col6" nameend="col11"/>
|
|
<spanspec spanname="spa12-17" namest="col12" nameend="col17"/>
|
|
<tbody>
|
|
<row>
|
|
<entry></entry>
|
|
<entry spanname="spa2-5">Szimpla</entry>
|
|
<entry spanname="spa6-11">Fejlett szimpla</entry>
|
|
<entry spanname="spa12-17">DivX</entry>
|
|
</row>
|
|
<row>
|
|
<entry>Profil neve</entry>
|
|
<entry>0</entry>
|
|
<entry>1</entry>
|
|
<entry>2</entry>
|
|
<entry>3</entry>
|
|
<entry>0</entry>
|
|
<entry>1</entry>
|
|
<entry>2</entry>
|
|
<entry>3</entry>
|
|
<entry>4</entry>
|
|
<entry>5</entry>
|
|
<entry>Handheld</entry>
|
|
<entry>Hordozható NTSC</entry>
|
|
<entry>Hordozható PAL</entry>
|
|
<entry>NTSC házimozi</entry>
|
|
<entry>PAL házimozi</entry>
|
|
<entry>HDTV</entry>
|
|
</row>
|
|
<row>
|
|
<entry>Szélesség [pixelben]</entry>
|
|
<entry>176</entry>
|
|
<entry>176</entry>
|
|
<entry>352</entry>
|
|
<entry>352</entry>
|
|
<entry>176</entry>
|
|
<entry>176</entry>
|
|
<entry>352</entry>
|
|
<entry>352</entry>
|
|
<entry>352</entry>
|
|
<entry>720</entry>
|
|
<entry>176</entry>
|
|
<entry>352</entry>
|
|
<entry>352</entry>
|
|
<entry>720</entry>
|
|
<entry>720</entry>
|
|
<entry>1280</entry>
|
|
</row>
|
|
<row>
|
|
<entry>Magasság [pixelben]</entry>
|
|
<entry>144</entry>
|
|
<entry>144</entry>
|
|
<entry>288</entry>
|
|
<entry>288</entry>
|
|
<entry>144</entry>
|
|
<entry>144</entry>
|
|
<entry>288</entry>
|
|
<entry>288</entry>
|
|
<entry>576</entry>
|
|
<entry>576</entry>
|
|
<entry>144</entry>
|
|
<entry>240</entry>
|
|
<entry>288</entry>
|
|
<entry>480</entry>
|
|
<entry>576</entry>
|
|
<entry>720</entry>
|
|
</row>
|
|
<row>
|
|
<entry>Frame ráta [fps]</entry>
|
|
<entry>15</entry>
|
|
<entry>15</entry>
|
|
<entry>15</entry>
|
|
<entry>15</entry>
|
|
<entry>30</entry>
|
|
<entry>30</entry>
|
|
<entry>15</entry>
|
|
<entry>30</entry>
|
|
<entry>30</entry>
|
|
<entry>30</entry>
|
|
<entry>15</entry>
|
|
<entry>30</entry>
|
|
<entry>25</entry>
|
|
<entry>30</entry>
|
|
<entry>25</entry>
|
|
<entry>30</entry>
|
|
</row>
|
|
<row>
|
|
<entry>Max átlagos bitráta [kbps]</entry>
|
|
<entry>64</entry>
|
|
<entry>64</entry>
|
|
<entry>128</entry>
|
|
<entry>384</entry>
|
|
<entry>128</entry>
|
|
<entry>128</entry>
|
|
<entry>384</entry>
|
|
<entry>768</entry>
|
|
<entry>3000</entry>
|
|
<entry>8000</entry>
|
|
<entry>537.6</entry>
|
|
<entry>4854</entry>
|
|
<entry>4854</entry>
|
|
<entry>4854</entry>
|
|
<entry>4854</entry>
|
|
<entry>9708.4</entry>
|
|
</row>
|
|
<row>
|
|
<entry>Átlagos csúcs bitráta 3 mp-n keresztül [kbps]</entry>
|
|
<entry></entry>
|
|
<entry></entry>
|
|
<entry></entry>
|
|
<entry></entry>
|
|
<entry></entry>
|
|
<entry></entry>
|
|
<entry></entry>
|
|
<entry></entry>
|
|
<entry></entry>
|
|
<entry></entry>
|
|
<entry>800</entry>
|
|
<entry>8000</entry>
|
|
<entry>8000</entry>
|
|
<entry>8000</entry>
|
|
<entry>8000</entry>
|
|
<entry>16000</entry>
|
|
</row>
|
|
<row>
|
|
<entry>Max. B-frame</entry>
|
|
<entry>0</entry>
|
|
<entry>0</entry>
|
|
<entry>0</entry>
|
|
<entry>0</entry>
|
|
<entry></entry>
|
|
<entry></entry>
|
|
<entry></entry>
|
|
<entry></entry>
|
|
<entry></entry>
|
|
<entry></entry>
|
|
<entry>0</entry>
|
|
<entry>1</entry>
|
|
<entry>1</entry>
|
|
<entry>1</entry>
|
|
<entry>1</entry>
|
|
<entry>2</entry>
|
|
</row>
|
|
<row>
|
|
<entry>MPEG kvantálás</entry>
|
|
<entry></entry>
|
|
<entry></entry>
|
|
<entry></entry>
|
|
<entry></entry>
|
|
<entry>X</entry>
|
|
<entry>X</entry>
|
|
<entry>X</entry>
|
|
<entry>X</entry>
|
|
<entry>X</entry>
|
|
<entry>X</entry>
|
|
<entry></entry>
|
|
<entry></entry>
|
|
<entry></entry>
|
|
<entry></entry>
|
|
<entry></entry>
|
|
<entry></entry>
|
|
</row>
|
|
<row>
|
|
<entry>Adaptív kvantálás</entry>
|
|
<entry></entry>
|
|
<entry></entry>
|
|
<entry></entry>
|
|
<entry></entry>
|
|
<entry>X</entry>
|
|
<entry>X</entry>
|
|
<entry>X</entry>
|
|
<entry>X</entry>
|
|
<entry>X</entry>
|
|
<entry>X</entry>
|
|
<entry>X</entry>
|
|
<entry>X</entry>
|
|
<entry>X</entry>
|
|
<entry>X</entry>
|
|
<entry>X</entry>
|
|
<entry>X</entry>
|
|
</row>
|
|
<row>
|
|
<entry>Átlapolt kódolás</entry>
|
|
<entry></entry>
|
|
<entry></entry>
|
|
<entry></entry>
|
|
<entry></entry>
|
|
<entry>X</entry>
|
|
<entry>X</entry>
|
|
<entry>X</entry>
|
|
<entry>X</entry>
|
|
<entry>X</entry>
|
|
<entry>X</entry>
|
|
<entry></entry>
|
|
<entry></entry>
|
|
<entry></entry>
|
|
<entry>X</entry>
|
|
<entry>X</entry>
|
|
<entry>X</entry>
|
|
</row>
|
|
<row>
|
|
<entry>Quaterpixel</entry>
|
|
<entry></entry>
|
|
<entry></entry>
|
|
<entry></entry>
|
|
<entry></entry>
|
|
<entry>X</entry>
|
|
<entry>X</entry>
|
|
<entry>X</entry>
|
|
<entry>X</entry>
|
|
<entry>X</entry>
|
|
<entry>X</entry>
|
|
<entry></entry>
|
|
<entry></entry>
|
|
<entry></entry>
|
|
<entry></entry>
|
|
<entry></entry>
|
|
<entry></entry>
|
|
</row>
|
|
<row>
|
|
<entry>Globális mozgás-kompenzáció</entry>
|
|
<entry></entry>
|
|
<entry></entry>
|
|
<entry></entry>
|
|
<entry></entry>
|
|
<entry>X</entry>
|
|
<entry>X</entry>
|
|
<entry>X</entry>
|
|
<entry>X</entry>
|
|
<entry>X</entry>
|
|
<entry>X</entry>
|
|
<entry></entry>
|
|
<entry></entry>
|
|
<entry></entry>
|
|
<entry></entry>
|
|
<entry></entry>
|
|
<entry></entry>
|
|
</row>
|
|
</tbody>
|
|
</tgroup>
|
|
</informaltable>
|
|
</sect2>
|
|
|
|
<!-- ********** -->
|
|
|
|
<sect2 id="menc-feat-xvid-example-settings">
|
|
<title>Kódolás beállítási példák</title>
|
|
|
|
<para>
|
|
A következő beállítások példák különböző kódolási opciók
|
|
kombinációjára, amik a sebesség vs minőség kérdést döntően
|
|
befolyásolják ugyanazon cél bitráta mellett.
|
|
</para>
|
|
|
|
<para>
|
|
Az összes kódolási beállítást egy 720x448 @30000/1001 fps-es példa
|
|
videón teszteltük, a cél bitráta 900kbps volt, a gép pedig egy
|
|
AMD-64 3400+ 2400 MHz-en 64 bites módban.
|
|
Mindegyik kódolási beállítás tartalmazza a kódolási sebességet
|
|
(képkocka per másodpercben) és a PSNR veszteséget (dB-ben) a
|
|
"nagyon jó minőséghez" viszonyítva.
|
|
Kérlek vedd figyelembe, hogy a forrásanyagodtól, a géped típusától
|
|
és a fejlesztésektől függően különböző eredményeket kaphatsz.
|
|
</para>
|
|
|
|
<para>
|
|
<informaltable frame="all">
|
|
<tgroup cols="4">
|
|
<thead>
|
|
<row><entry>Leírás</entry><entry>Kódolási opciók</entry><entry>sebesség (fps-ben)</entry><entry>Relatív PSNR veszteség (dB-ben)</entry></row>
|
|
</thead>
|
|
<tbody>
|
|
<row>
|
|
<entry>Nagyon jó minőség</entry>
|
|
<entry><option>chroma_opt:vhq=4:bvhq=1:quant_type=mpeg</option></entry>
|
|
<entry>16fps</entry>
|
|
<entry>0dB</entry>
|
|
</row>
|
|
<row>
|
|
<entry>Jó minőség</entry>
|
|
<entry><option>vhq=2:bvhq=1:chroma_opt:quant_type=mpeg</option></entry>
|
|
<entry>18fps</entry>
|
|
<entry>-0.1dB</entry>
|
|
</row>
|
|
<row>
|
|
<entry>Gyors</entry>
|
|
<entry><option>turbo:vhq=0</option></entry>
|
|
<entry>28fps</entry>
|
|
<entry>-0.69dB</entry>
|
|
</row>
|
|
<row>
|
|
<entry>Valós idejű</entry>
|
|
<entry><option>turbo:nochroma_me:notrellis:max_bframes=0:vhq=0</option></entry>
|
|
<entry>38fps</entry>
|
|
<entry>-1.48dB</entry>
|
|
</row>
|
|
</tbody>
|
|
</tgroup>
|
|
</informaltable>
|
|
</para>
|
|
</sect2>
|
|
</sect1>
|
|
|
|
|
|
<!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -->
|
|
|
|
|
|
<sect1 id="menc-feat-x264">
|
|
<title>Kódolás az
|
|
<systemitem class="library">x264</systemitem> codec-kel</title>
|
|
|
|
<para>
|
|
Az <systemitem class="library">x264</systemitem> egy szabad függvénykönyvtár
|
|
a H.264/AVC videó folyamok kódolásához.
|
|
Mielőtt elkezdenél kódolni, <link linkend="codec-x264-encode">be kell
|
|
állítanod a <application>MEncoder</application>ben a támogatását</link>.
|
|
</para>
|
|
|
|
<!-- ********** -->
|
|
|
|
<sect2 id="menc-feat-x264-encoding-options">
|
|
<title>Az x264 kódolási opciói</title>
|
|
|
|
<para>
|
|
Kérlek kezd az olvasást az <application>MPlayer</application>
|
|
man oldalának <systemitem class="library">x264</systemitem>
|
|
részével.
|
|
Ez a rész a man oldal kiegészítésének lett szánva.
|
|
Itt csak rövid tanácsokat találhatsz, hogy mely opciók
|
|
érdekelhetik a letöbb embert. A man oldal tömörebb, de
|
|
ugyanakkor kimerítőbb is és esetenként több technikai
|
|
információval szolgál.
|
|
</para>
|
|
|
|
|
|
<sect3 id="menc-feat-x264-encoding-options-intro">
|
|
<title>Bevezetés</title>
|
|
|
|
<para>
|
|
Ez a leírás a kódolási opciók két fő kategóriáját tárgyalja:
|
|
</para>
|
|
|
|
<orderedlist>
|
|
<listitem><para>
|
|
Opciók, melyekkel a kódolási idő vs. minőség arány szabályozható
|
|
</para></listitem>
|
|
<listitem><para>
|
|
Opciók, melyek a különböző egyéni érdekeknek és speciális igényeknek
|
|
próbálnak eleget tenni
|
|
</para></listitem>
|
|
</orderedlist>
|
|
|
|
<para>
|
|
Igazából csak te tudod, hogy mely opciók a legjobbak neked. Az első
|
|
csoportba tartozó opcióknál könnyű dönteni: csak azt kell megfontolnod,
|
|
hogy a minőségi különbség megéri-e a sebességbeli különbséget. A másik
|
|
csoport már sokkal szubjektívebb és több szempontot kell figyelembe
|
|
venni. Tartsd észben, hogy az "egyéni érdekek és speciális igényeknek"
|
|
eleget tevő opciók jelentősen befolyásolják a sebességet vagy a
|
|
minőséget, de elsősorban nem ezért használják őket. Az "egyéni érdekek"
|
|
opciói közül több olyan változásokat idézhet elő, ami néhány embernek
|
|
tetszhet, míg másoknak nem.
|
|
</para>
|
|
|
|
<para>
|
|
Mielőtt folytatnád, meg kell értened, hogy ez a leírás csak egy
|
|
minőségi mércét használ: a globális PSNR-t.
|
|
A PSNR rövid leírása megtalálható
|
|
<ulink url="http://en.wikipedia.org/wiki/PSNR">a Wikipedia PSNR-ről szóló cikkében</ulink>.
|
|
A globális PSNR az utolsó PSNR szám, amit kiír az <option>x264encopts</option>,
|
|
ha megadod neki a <option>psnr</option> opciót.
|
|
Bármikor, amikor egy kijelentést olvasol a PSNR-ről, él az a
|
|
feltételezés, hogy azonos bitrátát használsz.
|
|
</para>
|
|
|
|
<para>
|
|
Ezen leírás majdnem teljesen egészében feltételezi, hogy két lépéses
|
|
kódolást használsz.
|
|
Az opciók összehasonlításánál két fő érv szól a kétlépéses
|
|
kódolás mellett.
|
|
Az egyik, hogy a két lépés alkalmazása kb. 1dB PSNR-t jelent pluszban,
|
|
ami nagyon nagy különbség.
|
|
A másik, hogy az opciók tesztelésénél a direkt minőség-összehasonlítás
|
|
az egy lépéses kódolásokkal behoz egy zavaró tényezőt: a bitráta
|
|
gyakran jelentősen változik a kódolások között.
|
|
Nem minden esetben könnyű megmondani, hogy a minőségi változás a
|
|
megváltozott opciók miatt következett-e be vagy a főként véletlenül
|
|
elért bitráta különbségből adódik.
|
|
</para>
|
|
</sect3>
|
|
|
|
|
|
<sect3 id="menc-feat-x264-encoding-options-speedvquality">
|
|
<title>Elsősorban a sebességet és a minőséget érintő opciók</title>
|
|
|
|
<itemizedlist>
|
|
<listitem>
|
|
<para>
|
|
<emphasis role="bold">subq</emphasis>:
|
|
Azon opciók közül, amik segítségével a sebesség és minőség közötti arányt
|
|
befolyásolhatod, a <option>subq</option> és a <option>frameref</option>
|
|
(lásd lejjebb) a legfontosabbak általában.
|
|
Ha érdekel akár a sebesség, akár a minőség tuningolása, akkor ezt a
|
|
két opciót kell először megvizsgálnod.
|
|
Sebesség szempontjából a <option>frameref</option> és a
|
|
<option>subq</option> opciók elég erőteljes kölcsönhatásban
|
|
vannak.
|
|
A tapasztalatok szerint egy referencia kockával a
|
|
<option>subq=5</option> (alapértelmezett érték) kb. 35%-kal több időt
|
|
kíván, mint a <option>subq=1</option>.
|
|
6 referencia kockával az igény 60% fölé megy.
|
|
A <option>subq</option> hatása a PSNR-re elég egyenletes,
|
|
a referencia kockák számától függetlenül.
|
|
Általában a <option>subq=5</option> 0.2-0.5 dB-vel magasabb
|
|
globális PSNR-t biztosít a <option>subq=1</option>-gyel összehasonlítva.
|
|
Általában ez már látható különbség.
|
|
</para>
|
|
<para>
|
|
A <option>subq=6</option> lassabb, de jobb minőséget ad elfogadható áron.
|
|
A <option>subq=5</option>-tel összehasonlítva általában 0.1-0.4 dB nyereséget
|
|
jelent a globális PSNR-ben, 25%-100% között változó sebességveszteség árán.
|
|
A <option>subq</option> egyéb értékeitől eltérően a <option>subq=6</option>
|
|
viselkedése nem függ olyan nagy mértékben a <option>frameref</option> és
|
|
a <option>me</option> opcióktól. A <option>subq=6</option> hatékonysága
|
|
inkább a használt B-kockák számától függ. Normális használat esetén ez
|
|
azt jelenti, hogy a <option>subq=6</option>-nak nagy hatása van mind a
|
|
sebességre, mint a minőségre az összetett, sok mozgást tartalmazó jelenetek
|
|
esetében, de sokkal kevesebb a kevés mozgást rögzítő részeknél. Jegyezd
|
|
meg, hogy még mindig javasoljuk a <option>bframes</option> értékének
|
|
valamilyen nullától különböző értékre történő állítását (lásd lejjebb).
|
|
</para>
|
|
<para>
|
|
<option>subq=7</option> a leglassabb, legjobb minőséget nyújtó mód.
|
|
A <option>subq=6</option>-tal összehasonlítva általában 0.01-0.05 dB
|
|
globális PSNR növelést jelent, változó 15%-33%-os sebességveszteség árán.
|
|
Mivel a kódolási idő vs. minőség arány eléggé rossz, csak akkor ajánlott
|
|
használni, ha minden egyes bit fontos és a kódolási idő nem számít.
|
|
</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para>
|
|
<emphasis role="bold">frameref</emphasis>:
|
|
A <option>frameref</option> alapértéke 1, de ez nem jelenti
|
|
azt, hogy jó dolog 1-re állítani.
|
|
Pusztán a <option>frameref</option> növelése 2-re kb.
|
|
0.15dB PSNR nyereséget jelent 5-10%-os sebességcsökkenéssel; ez így
|
|
még jó üzletnek tűnik.
|
|
A <option>frameref=3</option> 0.25dB PSNR-t hoz a
|
|
<option>frameref=1</option>-hez képest, ami látható különbség.
|
|
A <option>frameref=3</option> kb. 15%-kal lassabb a
|
|
<option>frameref=1</option>-nél.
|
|
Ezután sajnos gyorsan jön a csökkenés.
|
|
A <option>frameref=6</option> valószínűleg csak
|
|
0.05-0.1 dB pluszt jelent a <option>frameref=3</option>-hoz képest,
|
|
további 15% sebességveszteség mellett.
|
|
<option>frameref=6</option> felett a minőségjavulás általában nagyon
|
|
kicsi (bár vedd figyelembe az egész rész olvasása közben, hogy ez
|
|
nagymértékben változhat a forrásodtól függően).
|
|
Egy átlagos esetben a <option>frameref=12</option>
|
|
a globális PSNR-t csekély 0.02dB-vel javítja a
|
|
<option>frameref=6</option>-hoz képest, 15%-20% sebességveszteség árán.
|
|
Az ilyen magas <option>frameref</option> értékeknél az egyedüli
|
|
igazán jó dolog, amit mondhatunk, hogy a további növelés szinte
|
|
soha sem <emphasis role="bold">árt</emphasis> a PSNR-nek, de a minőségi
|
|
javulás szinte alig mérhető és nem is észrevehető.
|
|
</para>
|
|
<note><title>Megjegyzés:</title>
|
|
<para>
|
|
A <option>frameref</option> növelése szükségtelenül magas értékekre
|
|
<emphasis role="bold">ronthatja</emphasis> és
|
|
<emphasis role="bold">általában rontja is</emphasis>
|
|
a kódolási hatékonyságot, ha kikapcsolod a CABAC-ot.
|
|
Bekapcsolt CABAC-kal (alapértelmezett), a <option>frameref</option>
|
|
"túl magas" értékre történő beállítása jelenleg nagyon távolinak
|
|
tűnik ahhoz, hogy aggódjunk miatta és a jövőben az optimalizációk
|
|
lehet, hogy meg is szüntetik ennek lehetőségét.
|
|
</para></note>
|
|
<para>
|
|
Ha számít a sebesség, akkor megfontolandó, hogy alacsony
|
|
<option>subq</option> és <option>frameref</option> értékeket
|
|
használj az első lépésben és majd a második lépésben emeld.
|
|
Általában ez jelentéktelen negatív hatással van a végső minőségre:
|
|
valószínűleg jóval kevesebb, mint 0.1dB PSNR-t veszítesz, ami
|
|
túl kicsi különbség ahhoz, hogy észrevedd.
|
|
Bár a <option>frameref</option> különböző értékei alkalmanként
|
|
befolyásolhatják a frametype döntéseket.
|
|
Ezek legtöbbször ritka, szélsőséges esetek, de ha teljesen biztos
|
|
akarsz lenni, gondolkozz el rajta, hogy van-e a videódban teljes
|
|
képernyős ismétlődő, csillogó minta vagy nagyon nagy ideiglenes
|
|
elzáródás, ami kikényszeríthet egy I-kockát.
|
|
Az első lépés <option>frameref</option>-jét úgy állítsd be, hogy
|
|
elég nagy legyen ahhoz, hogy tartalmazza a villódzási ciklust
|
|
(vagy az elzárást). Például ha a jelenet oda-vissza ugrál két kép
|
|
között három keret idejéig, állítsd be az első lépés
|
|
<option>frameref</option>-jét 3-ra vagy magasabbra.
|
|
Ez a dolog eléggé ritka az élő akciót tartalmazó videóanyagokban,
|
|
de néha előjön videójátékok képének mentésekor.
|
|
</para></listitem>
|
|
<listitem>
|
|
<para>
|
|
<emphasis role="bold">me</emphasis>:
|
|
Ez az opció a mozgásbecsléshez használt keresés módszerét választja ki.
|
|
Ezen opció megváltoztatása természetesen magával hozza a
|
|
minőség-vs-sebesség arány változását. A <option>me=dia</option> csak kis
|
|
mértékben gyorsabb, mint az alapértelmezett keresés, kevesebb, mint
|
|
0.1dB globális PSNR árán. Az alapértelmezett beállítás (<option>me=hex</option>)
|
|
egy ésszerű kompromisszum a sebesség és a minőség között. A <option>me=umh</option>
|
|
kicsivel kevesebb, mint 0.1dB globális PSNR-t jelent, amiért változó
|
|
árat kell fizetni a sebességben a <option>frameref</option>-től függően.
|
|
Ha a <option>frameref</option> értéke nagy (pl. 12 vagy hasonló), a
|
|
<option>me=umh</option> kb. 40%-kal lassabb, mint az alapértelmezett
|
|
<option> me=hex</option>. <option>frameref=3</option>-mal a sebességbeli
|
|
veszteség visszaesik 25%-30%-ra.
|
|
</para>
|
|
<para>
|
|
A <option>me=esa</option> egy nagyon alapos keresést használ, ami túl
|
|
lassú a gyakorlati alkalmazáshoz.
|
|
</para>
|
|
</listitem>
|
|
<listitem><para>
|
|
<emphasis role="bold">partitions=all</emphasis>:
|
|
Ez az opció engedélyezi a 8x4-es, 4x8-as és 4x4-es alpartíciók
|
|
használatát a megjósolt makroblokkokban (az alapértelmezett
|
|
partíciók mellett).
|
|
A bekapcsolása viszonylag egyenletes 10%-15%-os sebességveszteséget
|
|
jelent. Ez az opció eléggé hasztalan a kevés mozgást tartalmazó
|
|
videókban, bár néhány gyors mozgású forrás, tipikusan a sok apró
|
|
mozgó objektumot tartalmazó, várhatóan kb. 0.1dB-t javul.
|
|
</para></listitem>
|
|
<listitem>
|
|
<para>
|
|
<emphasis role="bold">bframes</emphasis>:
|
|
Ha kódoltál már más codec-kel, rájöhettél, hogy a B-kockák nem mindig
|
|
hasznosak.
|
|
A H.264-nél ez megváltozott: új technikák és blokk típusok lehetnek a
|
|
B-kockákban.
|
|
Általában még a naív B-kocka választó algoritmus is jelentős
|
|
PSNR hasznot hozhat.
|
|
Azt is érdemes megjegyezni, hogy a B-kockák használata általában
|
|
egy kicsit gyorsít a második lépésen és talán az egy lépéses kódolást
|
|
is gyorsítja kicsit, ha az adaptív B-kocka döntés ki van kapcsolva.
|
|
</para>
|
|
<para>
|
|
Az adaptív B-kocka döntés kikapcsolásával
|
|
(<option>x264encopts</option> <option>nob_adapt</option> opciója)
|
|
ezen beállítás optimális értéke általában nem több, mint
|
|
<option>bframes=1</option>, különben a gyors mozgású részek romolhatnak.
|
|
Bekapcsolt adaptív B-kocka döntéssel (alapértelmezett tulajdonság)
|
|
nyugodtan használhatsz magasabb értéket; a kódoló csökkenti a
|
|
B-kockák használatát azokban a részekben, ahol amiatt sérülne a
|
|
tömörítés. A kódoló ritkán választ 3 vagy 4 B-kockánál többet;
|
|
ezen opció magasabb értékre állítása nagyon kicsi különbséget eredményez.
|
|
</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para>
|
|
<emphasis role="bold">b_adapt</emphasis>:
|
|
Megjegyzés: Ez alapértelmezetten be van kapcsolva.
|
|
</para>
|
|
<para>
|
|
Ezzel az opcióval a kódoló egy eléggé gyors döntési eljárást
|
|
fog használni a B-kockák számának csökkentésére az olyan
|
|
jelenetekben, amelyek nem profitálnak belőlük.
|
|
Használhatod a <option>b_bias</option>-t a kódoló
|
|
B-kocka-használatának nyomonkövetésére.
|
|
Az adaptív B-kockák sebességbeli hátránya jelenleg elég
|
|
szerény, de ilyen a potenciális minőségbeli javulás is.
|
|
De általában nem árt.
|
|
Jegyezd meg, hogy ez csak az első lépésben érinti a
|
|
sebességet és a képkocka típus döntéseket.
|
|
A <option>b_adapt</option>-nak és a <option>b_bias</option>-nak
|
|
nincs hatása a következő lépésekre.
|
|
</para>
|
|
</listitem>
|
|
<listitem><para>
|
|
<emphasis role="bold">b_pyramid</emphasis>:
|
|
Jó ha engedélyezed ezt az opciót, ha >=2 B-kockát használsz;
|
|
ahogy a man oldal is írja, egy kicsi minőségi javulást
|
|
kapsz sebességcsökkenés nélkül.
|
|
Jegyezd meg, hogy ezen videók nem olvashatóak a 2005.
|
|
március 5-nél korábbi libavcodec-alapú dekódolókkal.
|
|
</para></listitem>
|
|
<listitem>
|
|
<para>
|
|
<emphasis role="bold">weight_b</emphasis>:
|
|
Általános esetekben ez az opció nem hoz sokat a konyhára.
|
|
Bár az át- és az elsötétülő jeleneteknél, a súlyozott
|
|
jóslás jelentős bitráta spórolást hoz.
|
|
Az MPEG-4 ASP-ben az elsötétülés általában drága I-kockák
|
|
sorozatával kerül legjobban elkódolásra; a B-kockákban
|
|
használt súlyozott jóslással lehetséges ezek legalább
|
|
részben a sokkal kisebb B-kockákkal történő lecserélése.
|
|
A kódolási időben jelentkező plusz ráfordítás minimális, mivel
|
|
nem kell külön döntéseket hozni.
|
|
Ellentétben azzal, amire pár ember gondol, a dekódoló CPU
|
|
igényét nem érinti jelentősen a súlyozott jóslás.
|
|
</para>
|
|
<para>
|
|
Sajnos a jelenlegi adaptív B-kocka döntési algoritmusnak
|
|
van egy olayn érdekes tulajdonsága, hogy kerüli a B-kockákat
|
|
az elsötétedéseknél. Amíg ez nem változik meg, jó ötlet
|
|
lehet a <option>nob_adapt</option> opció hozzáadása az
|
|
x264encopts-hoz, ha arra számítasz, hogy sötétedések jelentősen
|
|
befolyásolják a videódat.
|
|
</para>
|
|
</listitem>
|
|
<listitem id="menc-feat-x264-encoding-options-speedvquality-threads">
|
|
<para>
|
|
<emphasis role="bold">threads</emphasis>:
|
|
Ez az opció szálak segítségével párhuzamos kódolást tesz lehetővé több
|
|
CPU-n. A létrejövő szálak száma kézzel is beállítható, de jobb a
|
|
<option>threads=auto</option> és rábízni az
|
|
<systemitem class="library">x264</systemitem>-re a használható CPU-k
|
|
felderítését és a szálak optimális számának megállapítását.
|
|
Ha több processzoros géped van, nem árt fontolóra venni ennek a használatát,
|
|
mivel a CPU magokkal arányosan megnövelheti a kódolási sebességet
|
|
(kb. 94% CPU magonként), nagyon kicsi minőségromlással (kb. 0.005dB
|
|
dual processzornál, 0.01dB quad processzoros gépnél).
|
|
</para>
|
|
</listitem>
|
|
</itemizedlist>
|
|
</sect3>
|
|
|
|
|
|
<sect3 id="menc-feat-x264-encoding-options-misc-preferences">
|
|
<title>Különböző igényekhez tartozó opciók</title>
|
|
|
|
<itemizedlist>
|
|
<listitem>
|
|
<para>
|
|
<emphasis role="bold">Két lépéses kódolás</emphasis>:
|
|
Fentebb azt javasoltuk, hogy mindig használj két lépéses kódolást,
|
|
azonban vannak indokok az elkerülése mellett is. Például ha élő TV
|
|
adást mentesz és kódolsz valós időben, kénytelen vagy egy lépést
|
|
használni. Az egy lépés nyilvánvalóan gyorsabb, mint a két lépéses;
|
|
ha teljesen ugyan azokkal az opciókat használod mind a két lépésben,
|
|
a két lépéses kódolás majdnem kétszer olyan lassú.
|
|
</para>
|
|
<para>
|
|
Mégis van pár nagyon jó indok a két lépéses kódolás használatára. Az
|
|
egyik, hogy az egy lépés rátakontollja nem pszichikai, így gyakran
|
|
ésszerűtlen döntéseket hoz, mert nem látja a nagy képet. Például tegyük
|
|
fel, hogy van egy két perces videód, mely két eltérő félből áll. Az
|
|
első fele nagyon gyors mozgású, 60 másodperces jelenet, ami magában
|
|
kb. 2500kbps-t igényel, hogy megfelelően nézzen ki. Majd rögtön ez
|
|
után egy sokkal kisebb igényű 60 másodperces jelenet jön, ami 300
|
|
kbps-sel is jól néz ki. Tegyük fel, hogy 1400kbps-t kérsz, ami elméletileg
|
|
elég mind a két jelenethez. Az egy lépéses rátakontroll rengeteg "hibát"
|
|
ejt egy ilyen esetben. Mindenek előtt az 1400kbps-t célozza meg mind a
|
|
két szegmensben. Az első rész erőteljesen túl lesz kvantálva, emiatt
|
|
elfogadhatatlan és túlzottan blokkos képet kapsz. A második szegmens
|
|
pedig erőteljesen alul lesz kvantálva; tökéletesen néz ki, de az
|
|
ezzel járó bitráta többlet teljesen ésszerűtlen. Amit még nehezebb
|
|
elkerülni, az a két jelenet közötti átmenet problémája. A lassú mozgású
|
|
rész első pár másodperce túlságosan túl lesz kvantálva, mert a
|
|
rátakontroll még a videó első feléből származó bitráta igényre számít.
|
|
Ez a túlkvantálási "hiba periódus" a kevés mozgást tartalmazó részt
|
|
szörnyen rosszá teszi, tulajdonképpen kevesebb, mint 300kbps-t fog
|
|
használni, ami a megfelelő kinézethez kellene. Több lehetőség is van
|
|
az egy lépéses kódolás buktatóiból származó hibák csökkentésére, de
|
|
összességében mégis növelik a bitráta félrebecslésének esélyét.
|
|
</para>
|
|
<para>
|
|
A többlépéses rátakontrollnak több előnye is van az egylépésessel
|
|
szemben. Az első lépésből nyert statisztikai adatokból a kódoló egész
|
|
jó pontossággal meg tudja jósolni egy bármilyen adott kocka bármilyen
|
|
adott kvantálás melletti kódolásának "költségét" (bitekben). Ez a bitek
|
|
sokkal ésszerűbb, jobban megtervezett elosztását eredményezi a drága
|
|
(sok mozgású) és az olcsó (kevés mozgású) jelenetek között. Lásd a
|
|
<option>qcomp</option> opciót lejjebb néhány ötletért, hogy hogyan
|
|
tudod ezt a felosztást kedvedre változtatni.
|
|
</para>
|
|
<para>
|
|
Továbbá a két lépés nem tart kétszer annyi ideig, mint az egy. Az első
|
|
lépés opcióit rá lehet hangolni a nagyobb sebességre és a gyengébb
|
|
minőségre. Ha jól választod meg az opciókat, egy nagyon gyors első
|
|
lépésed lehet. Az eredmény minősége a második lépésben kicsit alacsonyabb
|
|
lesz mert a méret becslés kevésbé pontos, de a minőségi különbség
|
|
normális esetben túl kicsi ahhoz, hogy észrevedd. Például próbáld meg a
|
|
<option>subq=1:frameref=1</option> opció hozzáadását a
|
|
<option>x264encopts</option> első lépéséhez. Majd, a második lépésben
|
|
használj lassabb, jobb minőséget biztosító opciókat:
|
|
<option>subq=6:frameref=15:partitions=all:me=umh</option>
|
|
</para>
|
|
</listitem>
|
|
<listitem><para>
|
|
<emphasis role="bold">Három lépéses kódolás</emphasis>?
|
|
Az x264 lehetőséget nyújt tetszőleges számú egymás utáni lépések
|
|
elvégzésére. Ha megadod a <option>pass=1</option> opciót az első
|
|
lépésben, majd <option>pass=3</option>-at használsz az egyik
|
|
következő lépésben, a következő lépés beolvassa az előző statisztikáját
|
|
és megírja a sajátját. Egy ezt követő lépésnek már nagyon jó alapjai
|
|
lesznek, nagyon pontos döntéseket tud hozni a képkocka méretre
|
|
vonatkozóan a választott kvantálás mellett. A gyakorlatban az össz
|
|
minőségi nyereség ebből közel van a nullához és lehetséges, hogy egy
|
|
harmadik lépés kissé még rontja is a globális PSNR-t az előző lépéshez
|
|
képest. Az átlagos felhasználásban a három lépés akkor segít, ha két
|
|
lépéssel rossz bitráta jóslást kaptál vagy ronda átmeneteket a
|
|
jelenetek között. Ilyen dolog csak a nagyon rövid klippeknél fordulhat
|
|
elő. Van még pár speciális eset is, amikor a három (vagy több) lépés
|
|
jól jöhet a haladó felhasználóknak, de a rövidítés végett ezeket az
|
|
eseteket nem tárgyaljuk ebben a leírásban.
|
|
</para></listitem>
|
|
<listitem><para>
|
|
<emphasis role="bold">qcomp</emphasis>:
|
|
A <option>qcomp</option> a "drága", sok mozgást és az "olcsó", kevés
|
|
mozgást tartalmazó jelenetekhez használt bitek arányát szabályozza.
|
|
Extrém esetben a <option>qcomp=0</option> az igazi konstans bitrátát
|
|
célozza meg. Ezzel a sok mozgású részek borzasztóan fognak kinézni, míg
|
|
a kevés mozgást tartalmazó részek valószínűleg tökéletesen fognak kinézni,
|
|
de a hasonló kinézethez szükséges bitráta többszörösét fogják felhasználni.
|
|
A másik extrém véglet a <option>qcomp=1</option> majdnem konstans
|
|
kvantálási paramétert ér el (QP). A konstans QP nem néz ki rosszul, de a
|
|
legtöbb ember úgy gondolja, hogy ésszerűbb egy kis bitrátát feláldozni a
|
|
roppant drága jeleneteknél (ahol a minőségromlás nem olyan észrevehető)
|
|
és felhasználni őket a kitűnő minőségben is könnyebben kódolható
|
|
jeleneteknél. A <option>qcomp</option> alapértelmezett értéke 0.6, ami
|
|
eléggé alacsony sok ember ízléséhez képest (0.7-0.8 a leggyakrabban
|
|
használt).
|
|
</para></listitem>
|
|
<listitem><para>
|
|
<emphasis role="bold">keyint</emphasis>:
|
|
A <option>keyint</option> kizárólag a a fájlon belüli keresést rontja a
|
|
kódolási hatékonyság javára. Alapértelmezésként a <option>keyint</option>
|
|
250-re van állítva. Egy 25fps-es anyagnál ez garantálja a 10 másodpercen
|
|
belüli pontossággal történő ugrást. Ha úgy gondolod, hogy fontos és hasznos
|
|
lenne az 5 másodperces pontosság, állítsd be a <option>keyint=125</option>
|
|
értéket; ez egy kissé rontja a minőséget/bitrátát. Ha csak a minőség
|
|
érdekel és a kereshetőség nem, beállíthatod magasabb értékre (észben tartva
|
|
azt, hogy egyre csökkenő hasznot hoz, mely végül szinte észrevehetetlenül
|
|
kicsi vagy akár nulla lesz). A videó folyam még így is fog tartalmazni
|
|
kereshető pontokat, amíg van benne jelenet váltás.
|
|
</para></listitem>
|
|
<listitem>
|
|
<para>
|
|
<emphasis role="bold">deblock</emphasis>:
|
|
Ez a rész egy kicsit vitatható lesz.
|
|
</para>
|
|
<para>
|
|
A H.264 egy egyszerű deblocking eljárást definiál az I-blokkokra,
|
|
ami előre beállított erősséget és áteresztést használ a szóbanforgó
|
|
blokk QP-je alapján.
|
|
Alapértelmezettként a nagy QP blokkok erős szűrön mennek át, az
|
|
alacsony QP blokkok nem kerülnek deblock-olásra semennyire sem.
|
|
Az alapértelmezett értékek szerint előre beállított erősség jól
|
|
megválasztott és jó eséllyel PSNR-optimális bármilyen videóhoz,
|
|
amit csak próbálsz elkódolni.
|
|
A <option>deblock</option> paraméterrel megadhatod az előre beállított
|
|
deblocking áteresztés eltolását.
|
|
</para>
|
|
<para>
|
|
Sokan úgy gondolják, hogy jó ötlet nagy mértékben csökkenteni a
|
|
deblocking szűrő erősségét (mondjuk -3-ra).
|
|
Ez valójában szinte soha sem jó ötlet és a legtöbb esetben
|
|
azok az emberek, akik ezt csinálják, nem is értik igazán,
|
|
hogy hogyan működik a deblocking alapból.
|
|
</para>
|
|
<para>
|
|
Az első és legfontosabb dolog azt tudni a beépített deblocking
|
|
szűrőről, hogy az alapértelmezett áteresztés majdnem mindig
|
|
PSNR-optimális.
|
|
Ritkább esetben nem optimális, az ideális eltolás plusz vagy
|
|
mínusz 1.
|
|
A deblocking paramétereinek nagy mértékben történő megváltoztatása
|
|
majdnem garantáltan rontja a PSNR-t.
|
|
A szűrő erősítése elmaszatol néhány részletet; a szűrő gyengítése
|
|
a kockásodás láthatóságát növeli.
|
|
</para>
|
|
<para>
|
|
Tipikusan rossz ötlet a deblocking áteresztés csökkentése, ha a
|
|
forrásod térbeli komplexitása alacsony (pl. nem túl részletes vagy
|
|
zajos).
|
|
A beépített szűrő remek munkát végez a felbukkanó mellékhatások
|
|
elrejtése érdekében.
|
|
Ha a forrásban térbeli komplexitása nagy, a mellékhatások még
|
|
kevésbé láthatóak.
|
|
Ez azért van, mert a gyűrűs haladás részletnek vagy zajnak látszik.
|
|
Az emberi szem könnyen meglátja, ha egy részlet elmozdul, de nem
|
|
olyan könnyű észrevenni, ha a zaj rosszul van reprezentálva.
|
|
Ha szubjektív minőséghez ér, a zaj és a részletesség valamennyire
|
|
felcserélhető.
|
|
A deblocking szűrő erősségének csökkentésével a legvalószínűbb,
|
|
hogy növeled a hibákat a gyűrűs mellékhatások hozzáadásával, de
|
|
a szem nem veszi észre, mert összekeveri a mellékhatásokat és a
|
|
részleteket.
|
|
</para>
|
|
<para>
|
|
Ez <emphasis role="bold">még</emphasis> nem igazolja a deblocking
|
|
szűrő erősségének csökkentését.
|
|
Általában jobb zajminőséget érhetsz el az utófeldolgozással.
|
|
Ha a H.264 kódolásod túl foltos vagy maszatos, próbáld meg
|
|
lejátszani a <option>-vf noise</option> kapcsolóval.
|
|
A <option>-vf noise=8a:4a</option>-nak a gyenge mellékhatásokat
|
|
el kell tüntetnie.
|
|
Majdnem biztos, hogy jobb eredményt kapsz, mint a deblocking
|
|
szűrővel való pepecseléssel.
|
|
</para>
|
|
</listitem>
|
|
</itemizedlist>
|
|
</sect3>
|
|
</sect2>
|
|
|
|
<!-- ********** -->
|
|
|
|
<sect2 id="menc-feat-x264-example-settings">
|
|
<title>Kódolás beállítási példák</title>
|
|
|
|
<para>
|
|
A következő beállítások példák a különböző kódolási opciók
|
|
kombinációjára, amik érintik a sebességet vagy a minőséget
|
|
ugyan annál a cél bitrátánál.
|
|
</para>
|
|
|
|
<para>
|
|
Az összes kódolási beállítást egy 720x448 @30000/1001 fps-es minta
|
|
videón teszteltük, a cél bitráta 900kbps volt, a gép pedig egy
|
|
AMD-64 3400+ 2400 MHz-en, 64 bit-es módban.
|
|
Mindegyik kódolási beállítás tartalmazza a kódolási sebességet
|
|
(képkocka per másodpercben) és a PSNR veszteséget (dB-ben) a
|
|
"nagyon jó minőséghez" viszonyítva.
|
|
Kérlek vedd figyelembe, hogy a forrásanyagodtól, a géped típusától
|
|
és a fejlesztésektől függően különböző eredményeket kaphatsz.
|
|
</para>
|
|
|
|
<informaltable frame="all">
|
|
<tgroup cols="4">
|
|
<thead>
|
|
<row>
|
|
<entry>Leírás</entry>
|
|
<entry>Kódolási opciók</entry>
|
|
<entry>sebesség (fps-ben)</entry>
|
|
<entry>relatív PSNR veszteség (dB-ben)</entry>
|
|
</row>
|
|
</thead>
|
|
<tbody>
|
|
<row>
|
|
<entry>Nagyon jó minőség</entry>
|
|
<entry><option>subq=6:partitions=all:8x8dct:me=umh:frameref=5:bframes=3:b_pyramid:weight_b</option></entry>
|
|
<entry>6fps</entry>
|
|
<entry>0dB</entry>
|
|
</row>
|
|
<row>
|
|
<entry>Jó minőség</entry>
|
|
<entry><option>subq=5:partitions=all:8x8dct:frameref=2:bframes=3:b_pyramid:weight_b</option></entry>
|
|
<entry>13fps</entry>
|
|
<entry>-0.89dB</entry>
|
|
</row>
|
|
<row>
|
|
<entry>Gyors</entry>
|
|
<entry><option>subq=4:bframes=2:b_pyramid:weight_b</option></entry>
|
|
<entry>17fps</entry>
|
|
<entry>-1.48dB</entry>
|
|
</row>
|
|
</tbody>
|
|
</tgroup>
|
|
</informaltable>
|
|
</sect2>
|
|
</sect1>
|
|
|
|
|
|
<!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -->
|
|
|
|
|
|
<sect1 id="menc-feat-video-for-windows">
|
|
<title>
|
|
Kódolás a <systemitem class="library">Video For Windows</systemitem>
|
|
codec családdal
|
|
</title>
|
|
|
|
<para>
|
|
A Video for Windows egyszerű kódolást biztosít bináris videó codec-ekkel.
|
|
A következő codec-ekkel kódolhatsz (ha több is van, kérjük áruld el!)
|
|
</para>
|
|
|
|
<para>
|
|
Tartsd észben, hogy ez nagyon kísérleti támogatás és néhány codec hibásan
|
|
működhet. Néhány codec csak bizonyos színterekben működik jól, próbáld ki
|
|
a <option>-vf format=bgr24</option> és <option>-vf format=yuy2</option>
|
|
opciókat, ha a codec hibázik vagy rossz kimenetet ad.
|
|
</para>
|
|
|
|
<!-- ********** -->
|
|
|
|
<sect2 id="menc-feat-enc-vfw-video-codecs">
|
|
<title>Video for Windows által támogatott codec-ek</title>
|
|
|
|
<para>
|
|
<informaltable frame="all">
|
|
<tgroup cols="4">
|
|
<thead>
|
|
<row>
|
|
<entry>Videó codec fájl név</entry>
|
|
<entry>Leírás</entry>
|
|
<entry>md5sum</entry>
|
|
<entry>Megjegyzés</entry>
|
|
</row>
|
|
</thead>
|
|
<tbody>
|
|
<row>
|
|
<entry>aslcodec_vfw.dll</entry>
|
|
<entry>Alparysoft veszteségmentes codec vfw (ASLC)</entry>
|
|
<entry>608af234a6ea4d90cdc7246af5f3f29a</entry>
|
|
<entry></entry>
|
|
</row>
|
|
<row>
|
|
<entry>avimszh.dll</entry>
|
|
<entry>AVImszh (MSZH)</entry>
|
|
<entry>253118fe1eedea04a95ed6e5f4c28878</entry>
|
|
<entry><option>-vf format</option> kell hozzá</entry>
|
|
</row>
|
|
<row>
|
|
<entry>avizlib.dll</entry>
|
|
<entry>AVIzlib (ZLIB)</entry>
|
|
<entry>2f1cc76bbcf6d77d40d0e23392fa8eda</entry>
|
|
<entry></entry>
|
|
</row>
|
|
<row>
|
|
<entry>divx.dll</entry>
|
|
<entry>DivX4Windows-VFW</entry>
|
|
<entry>acf35b2fc004a89c829531555d73f1e6</entry>
|
|
<entry></entry>
|
|
</row>
|
|
<row>
|
|
<entry>huffyuv.dll</entry>
|
|
<entry>HuffYUV (veszteségmentes) (HFYU)</entry>
|
|
<entry>b74695b50230be4a6ef2c4293a58ac3b</entry>
|
|
<entry></entry>
|
|
</row>
|
|
<row>
|
|
<entry>iccvid.dll</entry>
|
|
<entry>Cinepak Video (cvid)</entry>
|
|
<entry>cb3b7ee47ba7dbb3d23d34e274895133</entry>
|
|
<entry></entry>
|
|
</row>
|
|
<row>
|
|
<entry>icmw_32.dll</entry>
|
|
<entry>Motion Wavelets (MWV1)</entry>
|
|
<entry>c9618a8fc73ce219ba918e3e09e227f2</entry>
|
|
<entry></entry>
|
|
</row>
|
|
<row>
|
|
<entry>jp2avi.dll</entry>
|
|
<entry>ImagePower MJPEG2000 (IPJ2)</entry>
|
|
<entry>d860a11766da0d0ea064672c6833768b</entry>
|
|
<entry><option>-vf flip</option></entry>
|
|
</row>
|
|
<row>
|
|
<entry>m3jp2k32.dll</entry>
|
|
<entry>Morgan MJPEG2000 (MJ2C)</entry>
|
|
<entry>f3c174edcbaef7cb947d6357cdfde7ff</entry>
|
|
<entry></entry>
|
|
</row>
|
|
<row>
|
|
<entry>m3jpeg32.dll</entry>
|
|
<entry>Morgan Motion JPEG Codec (MJPG)</entry>
|
|
<entry>1cd13fff5960aa2aae43790242c323b1</entry>
|
|
<entry></entry>
|
|
</row>
|
|
<row>
|
|
<entry>mpg4c32.dll</entry>
|
|
<entry>Microsoft MPEG-4 v1/v2</entry>
|
|
<entry>b5791ea23f33010d37ab8314681f1256</entry>
|
|
<entry></entry>
|
|
</row>
|
|
<row>
|
|
<entry>tsccvid.dll</entry>
|
|
<entry>TechSmith Camtasia Screen Codec (TSCC)</entry>
|
|
<entry>8230d8560c41d444f249802a2700d1d5</entry>
|
|
<entry>shareware hiba windows-on</entry>
|
|
</row>
|
|
<row>
|
|
<entry>vp31vfw.dll</entry>
|
|
<entry>On2 Open Source VP3 Codec (VP31)</entry>
|
|
<entry>845f3590ea489e2e45e876ab107ee7d2</entry>
|
|
<entry></entry>
|
|
</row>
|
|
<row>
|
|
<entry>vp4vfw.dll</entry>
|
|
<entry>On2 VP4 Personal Codec (VP40)</entry>
|
|
<entry>fc5480a482ccc594c2898dcc4188b58f</entry>
|
|
<entry></entry>
|
|
</row>
|
|
<row>
|
|
<entry>vp6vfw.dll</entry>
|
|
<entry>On2 VP6 Personal Codec (VP60)</entry>
|
|
<entry>04d635a364243013898fd09484f913fb</entry>
|
|
<entry></entry>
|
|
</row>
|
|
<row>
|
|
<entry>vp7vfw.dll</entry>
|
|
<entry>On2 VP7 Personal Codec (VP70)</entry>
|
|
<entry>cb4cc3d4ea7c94a35f1d81c3d750bc8d</entry>
|
|
<entry><option>-ffourcc VP70</option></entry>
|
|
</row>
|
|
<row>
|
|
<entry>ViVD2.dll</entry>
|
|
<entry>SoftMedia ViVD V2 codec VfW (GXVE)</entry>
|
|
<entry>a7b4bf5cac630bb9262c3f80d8a773a1</entry>
|
|
<entry></entry>
|
|
</row>
|
|
<row>
|
|
<entry>msulvc06.DLL</entry>
|
|
<entry>MSU Lossless codec (MSUD)</entry>
|
|
<entry>294bf9288f2f127bb86f00bfcc9ccdda</entry>
|
|
<entry>
|
|
Dekódolható a <application>Window Media Player</application>rel,
|
|
de az <application>MPlayer</application>rel nem (még).
|
|
</entry>
|
|
</row>
|
|
<row>
|
|
<entry>camcodec.dll</entry>
|
|
<entry>CamStudio veszteségmentes videó codec (CSCD)</entry>
|
|
<entry>0efe97ce08bb0e40162ab15ef3b45615</entry>
|
|
<entry>sf.net/projects/camstudio</entry>
|
|
</row>
|
|
</tbody>
|
|
</tgroup>
|
|
</informaltable>
|
|
|
|
Az első oszlop a codec nevét tartalmazza, amit a <literal>codec</literal>
|
|
paraméter után kell megadni, így:
|
|
<option>-xvfcopts codec=divx.dll</option>
|
|
Az egyes codec-ek által használt FourCC kód zárójelben látható.
|
|
</para>
|
|
|
|
<informalexample>
|
|
<para>
|
|
Egy példa egy ISO DVD ajánló VP6 flash videó fájlba történő átalakítására
|
|
a compdata bitráta beállításaival:
|
|
<screen>
|
|
mencoder -dvd-device <replaceable>zeiram.iso</replaceable> dvd://7 -o <replaceable>trailer.flv</replaceable> \
|
|
-ovc vfw -xvfwopts codec=vp6vfw.dll:compdata=onepass.mcf -oac mp3lame \
|
|
-lameopts cbr:br=64 -af lavcresample=22050 -vf yadif,scale=320:240,flip \
|
|
-of lavf
|
|
</screen>
|
|
</para>
|
|
</informalexample>
|
|
</sect2>
|
|
|
|
<sect2 id="menc-feat-video-for-windows-bitrate-settings">
|
|
<title>A vfw2menc használata a codec beállításokat tartalmazó fájl elkészítéséhez.</title>
|
|
|
|
<para>
|
|
A Video for Windows codec-ekkel történő kódoláshoz be kell állítanod a
|
|
bitrátát és egyéb opciókat. x86-on ez működik mind *NIX, mind Windows alatt.
|
|
</para>
|
|
<para>
|
|
Először is le kell fordítanod a <application>vfw2menc</application> programot.
|
|
A <filename class="directory">TOOLS</filename> alkönyvtárban található
|
|
az MPlayer forrásában.
|
|
A Linux alatti elkészítéséhez a <application>Wine</application>-t kell használni:
|
|
<screen>winegcc vfw2menc.c -o vfw2menc -lwinmm -lole32</screen>
|
|
|
|
Windows alatt <application>MinGW</application> vagy
|
|
<application>Cygwin</application> használatával:
|
|
<screen>gcc vfw2menc.c -o vfw2menc.exe -lwinmm -lole32</screen>
|
|
|
|
Az <application>MSVC</application>-vel történő fordításhoz szükséges a getopt.
|
|
A getopt megtalálható az eredeti <application>vfw2menc</application>
|
|
archivban itt:
|
|
The <ulink url="http://oss.netfarm.it/mplayer-win32.php">MPlayer win32 alatt</ulink> projekt.
|
|
</para>
|
|
<informalexample>
|
|
<para>
|
|
Az alábbi példa VP6 codec-kel működik.
|
|
<screen>
|
|
vfw2menc -f VP62 -d vp6vfw.dll -s firstpass.mcf
|
|
</screen>
|
|
Ez megnyitja a VP6 codec dialógus ablakot.
|
|
Ismételd meg ezt a második lépéshez is
|
|
és használd a <option>-s <replaceable>secondpass.mcf</replaceable></option> kapcsolót.
|
|
</para>
|
|
</informalexample>
|
|
<para>
|
|
A Windows használók a
|
|
<option>-xvfwopts codec=vp6vfw.dll:compdata=dialog</option>
|
|
kapcsolóval a kódolás megkezdése előtt jeleníthetik meg a codec dialógust.
|
|
</para>
|
|
</sect2>
|
|
</sect1>
|
|
|
|
|
|
<!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -->
|
|
|
|
|
|
<sect1 id="menc-feat-quicktime-7">
|
|
<title><application>QuickTime</application>-kompatibilis fájlok
|
|
készítése a <application>MEncoder</application> használatával</title>
|
|
|
|
|
|
<sect2 id="menc-feat-quicktime-7-why-use-it">
|
|
<title>Miért akarna bárki is <application>QuickTime</application>-kompatibilis fájlokat készíteni?</title>
|
|
|
|
<para>
|
|
Több oka is van annak, hogy kívánatos lehet
|
|
<application>QuickTime</application>-kompatibilis fájlok készítése.
|
|
</para>
|
|
<itemizedlist>
|
|
<listitem><para>
|
|
Azt szertnéd, hogy minden gép le tudja játszani a kódolásod bármelyik
|
|
fő platformon (Windows, Mac OS X, Unices …).
|
|
</para></listitem>
|
|
<listitem><para>
|
|
A <application>QuickTime</application> több hardveres és szoftveres
|
|
gyorsítást ki tud használni Mac OS X-en, mint a platform-független
|
|
lejátszók, mint például az <application>MPlayer</application>
|
|
vagy a <application>VLC</application>.
|
|
Ez azt jelenti, hogy a kódolásaid jó eséllyel szebben mennek majd egy
|
|
régi G4-alapú gépen.
|
|
</para></listitem>
|
|
<listitem><para>
|
|
A <application>QuickTime</application> 7 támogatja a következő
|
|
generációs H.264 codec-et, ami sokkal jobb képminőséget biztosít,
|
|
mint az előző codec generációk (MPEG-2, MPEG-4 …).
|
|
</para></listitem>
|
|
</itemizedlist>
|
|
</sect2>
|
|
|
|
<sect2 id="menc-feat-quicktime-7-constraints">
|
|
<title><application>QuickTime</application> 7 korlátok</title>
|
|
|
|
<para>
|
|
A <application>QuickTime</application> 7 támogatja a H.264 videót
|
|
és az AAC audiót, de nem támogatja ezek AVI konténer formátumba
|
|
történő keverését. Mindamellett használhatod a
|
|
<application>MEncoder</application>t a videó és az audió kódolásához,
|
|
és utána egy külső programmal, mint pl. az
|
|
<application>mp4creator</application> (az
|
|
<ulink url="http://mpeg4ip.sourceforge.net/">MPEG4IP suite</ulink> része)
|
|
újrakevered a videó és audió sávokat egy MP4 konténerbe.
|
|
</para>
|
|
|
|
<para>
|
|
A <application>QuickTime</application> H.264 támogatása korlátolt,
|
|
így néhány fejlett funkció nem lesz elérhető.
|
|
Ha olyan funkciókkal kódolod el a videódat, amiket a
|
|
<application>QuickTime</application> 7 nem támogat, a
|
|
<application>QuickTime</application>-alapú lejátszók egy csodás
|
|
fehér képet fognak mutatni neked a várt videó helyett.
|
|
</para>
|
|
|
|
<itemizedlist>
|
|
<listitem><para>
|
|
<emphasis role="bold">B-frame-k</emphasis>:
|
|
A <application>QuickTime</application> 7 maximum 1 B-frame-t támogat, pl.
|
|
<option>-x264encopts bframes=1</option>. Ez azt jelenti, hogy a
|
|
<option>b_pyramid</option>-nek és a <option>weight_b</option>-nek nem
|
|
lesz hatása, mivel 1-nél több <option>bframe</option> kell nekik.
|
|
</para></listitem>
|
|
<listitem><para>
|
|
<emphasis role="bold">Makroblokkok</emphasis>:
|
|
A <application>QuickTime</application> 7 nem támogatja a 8x8 DCT makroblokkokat.
|
|
Ez az opció (<option>8x8dct</option>) ki van kapcsolva alapértelmezésben,
|
|
ezért győződj meg, hogy még véletlenül sem engedélyezed. Ez azt is jelenti,
|
|
hogy a <option>i8x8</option>-nak nem lesz hatása, mivel ahhoz a
|
|
<option>8x8dct</option> szükséges.
|
|
</para></listitem>
|
|
<listitem><para>
|
|
<emphasis role="bold">Méret arány</emphasis>:
|
|
A <application>QuickTime</application> 7 nem támogatja a SAR (sample
|
|
aspect ratio) információkat az MPEG-4 fájlokban; feltételezi, hogy a SAR=1.
|
|
Olvasd el a
|
|
<link linkend="menc-feat-quicktime-7-scale">méretezés részt</link>
|
|
a tüneti kezeléshez.
|
|
</para></listitem>
|
|
</itemizedlist>
|
|
|
|
</sect2>
|
|
|
|
<sect2 id="menc-feat-quicktime-7-crop">
|
|
<title>Vágás</title>
|
|
<para>
|
|
Tegyük fel, hogy rip-pelni szeretnéd a "Narnia krónikái" frissen vásárolt
|
|
másolatát. A DVD-d régió 1-es,
|
|
ami azt jelenti, hogy NTSC. Az alábbi példa működik PAL-ra is,
|
|
feltéve, hogy elhagyod a <option>-ofps 24000/1001</option>-et és kicsit más
|
|
<option>crop</option> és <option>scale</option> méreteket adsz meg.
|
|
</para>
|
|
|
|
<para>
|
|
Miután lefuttattad az <option>mplayer dvd://1</option>-et, kövesd a
|
|
<link linkend="menc-feat-telecine">Mit kezdjünk a telecine-nel és az átlapolással
|
|
NTSC DVD-ken</link> részben leírtakat, és rájössz, hogy ez egy
|
|
24000/1001 fps-es progresszív videó. Ez kicsit leegyszerűsíti a folyamatot,
|
|
mivel nem kell inverz telecine szűrőt használnod, mint a
|
|
<option>pullup</option> vagy deinterlacing szűrőt, mint a
|
|
<option>yadif</option>.
|
|
</para>
|
|
|
|
<para>
|
|
Ezután le kell vágnod a fekete sávokat a videó tetején és alján,
|
|
ahogy az <link linkend="menc-feat-dvd-mpeg4-example-crop">ebben</link>
|
|
az előző részben le van írva.
|
|
</para>
|
|
|
|
</sect2>
|
|
|
|
<sect2 id="menc-feat-quicktime-7-scale">
|
|
<title>Méretezés</title>
|
|
|
|
<para>
|
|
A következő lépés szívszaggató.
|
|
A <application>QuickTime</application> 7 nem támogatja azon MPEG-4 videókat,
|
|
melyekben a sample aspect ratio 1-től különböző, így vagy fel kell méretezned
|
|
(ami rengeteg lemezterületet elvisz) vagy le kell méretezned (ami miatt elveszik
|
|
a forrás pár részlete) a videót négyzetes pixelekre.
|
|
Bárhogy is csinálod, ez nagyon nem jó, de nem kerülheted ki, ha
|
|
<application>QuickTime</application> 7 által lejátszható videót akarsz.
|
|
A <application>MEncoder</application> végre tudja hajtani a megfelelő fel-
|
|
illetve leméretezést megfelelően a <option>-vf scale=-10:-1</option> vagy
|
|
a <option>-vf scale=-1:-10</option> megadásával.
|
|
Ez a videódat a vágott magasságnak megfelelő szélességűre méretezi,
|
|
16 legközelebbi többszörösére kerekítve az optimális tömörítéshez.
|
|
Emlékezz rá, hogy ha vágsz, először vágnod kell, utána méretezni:
|
|
|
|
<screen>-vf crop=720:352:0:62,scale=-10:-1</screen>
|
|
</para>
|
|
|
|
</sect2>
|
|
|
|
<sect2 id="menc-feat-quicktime-7-avsync">
|
|
<title>A/V szinkron</title>
|
|
|
|
<para>
|
|
Mivel egy másik konténerbe keversz, mindig ajánlott a <option>harddup</option>
|
|
opció használata annak biztosítására, hogy a duplikált kockák a kimeneti
|
|
videóban is duplikálva lesznek. Ezen opció nélkül a
|
|
<application>MEncoder</application> egyszerűen csak egy jelet tesz a videó
|
|
folyamba a képkocka duplikálásának helyére és innentől a kliens szoftveren
|
|
műlik, hogy kétszer mutatja-e az adott kockát. Sajnos ez a "szoft duplikálás"
|
|
nem éli túl az újrakeverést, így az audió lassan elveszíti a szinkront a videóval.
|
|
</para>
|
|
|
|
<para>
|
|
A végleges szűrőlánc így néz ki:
|
|
<screen>-vf crop=720:352:0:62,scale=-10:-1,harddup</screen>
|
|
</para>
|
|
|
|
</sect2>
|
|
|
|
<sect2 id="menc-feat-quicktime-7-bitrate">
|
|
<title>Bitráta</title>
|
|
|
|
<para>
|
|
Mint mindig, a bitráta megválasztása a forrás technikai tulajdonságaitól függ,
|
|
ahogy az
|
|
<link linkend="menc-feat-dvd-mpeg4-resolution-bitrate">itt</link> le van írva,
|
|
valamint az egyéni ízlésedttől is.
|
|
Ebben a filmben sok akció van nagy részletességgel, de a H.264 videó sokkal
|
|
kisebb bitrátán is jobban néz ki, mint az XviD vagy más MPEG-4 codec-ek.
|
|
Hosszas kísérletezés után ezen leírás szerzője úgy döntött, hogy 900kbps-en
|
|
kódolja el ezt a filmet és úgy hiszi, hogy nagyon jól néz ki.
|
|
Csökkentheted a bitrátát, ha több helyet kell megspórolnod vagy növelheted,
|
|
ha javítanod kell a minőséget.
|
|
</para>
|
|
|
|
</sect2>
|
|
|
|
<sect2 id="menc-feat-quicktime-7-example">
|
|
<title>Kódolási példa</title>
|
|
|
|
<para>
|
|
Készen állsz a videó elkódolására. Mivel érdekel a minőség, természetesen
|
|
két-lépéses kódolást futtatsz le. Hogy megspóroljunk némi kódolási időt,
|
|
megadhatod a <option>turbo</option> opciót az első lépésben; ez lecsökkenti
|
|
a <option>subq</option>-t és a <option>frameref</option>-et 1-re. Némi
|
|
lemezterület megspórolása érdekében használhatod az
|
|
<option>ss</option> opciót a videó első pár másodpercének levágásához.
|
|
(Úgy tűnik, hogy a konkrét film 32 másodpercnyi stáblistát és logót
|
|
tartalmaz.) A <option>bframes</option> lehet 0 vagy 1.
|
|
A többi opció a <link
|
|
linkend="menc-feat-x264-encoding-options-speedvquality">Kódolás az
|
|
<systemitem class="library">x264</systemitem> codec-kel</link> részben
|
|
és a man oldalon van leírva.
|
|
|
|
<screen>mencoder dvd://1 -o /dev/null -ss 32 -ovc x264 \
|
|
-x264encopts pass=1:turbo:bitrate=900:bframes=1:\
|
|
me=umh:partitions=all:trellis=1:qp_step=4:qcomp=0.7:direct_pred=auto:keyint=300 \
|
|
-vf crop=720:352:0:62,scale=-10:-1,harddup \
|
|
-oac faac -faacopts br=192:mpeg=4:object=2 -channels 2 -srate 48000 \
|
|
-ofps 24000/1001</screen>
|
|
|
|
Ha több processzoros géped van, ne hagy ki a kódolás drasztikus módon történő
|
|
gyorsításának a lehetőségét, melyet az
|
|
<link linkend="menc-feat-x264-encoding-options-speedvquality-threads">
|
|
<systemitem class="library">x264</systemitem> több-processzoros módja</link>
|
|
nyújt a <option>threads=auto</option> <option>x264encopts</option>-ban
|
|
történő megadásával a parancssorban.
|
|
</para>
|
|
|
|
<para>
|
|
A második lépés ugyan ez, kivéve, hogy meg kell adni a kimeneti fájlt és
|
|
a <option>pass=2</option>-őt.
|
|
|
|
<screen>mencoder dvd://1 <emphasis role="bold">-o narnia.avi</emphasis> -ss 32 -ovc x264 \
|
|
-x264encopts <emphasis role="bold">pass=2</emphasis>:turbo:bitrate=900:frameref=5:bframes=1:\
|
|
me=umh:partitions=all:trellis=1:qp_step=4:qcomp=0.7:direct_pred=auto:keyint=300 \
|
|
-vf crop=720:352:0:62,scale=-10:-1,harddup \
|
|
-oac faac -faacopts br=192:mpeg=4:object=2 -channels 2 -srate 48000 \
|
|
-ofps 24000/1001</screen>
|
|
</para>
|
|
|
|
<para>
|
|
Az eredmény AVI tökéletesen lejátszható az
|
|
<application>MPlayer</application>-rel, de természetesen a
|
|
<application>QuickTime</application> nem játsza le, mivel nem támogatja
|
|
az AVI-ba kevert H.264-et.
|
|
Ezért a következő lépés a videó MP4 konténerbe történő keverése.
|
|
</para>
|
|
</sect2>
|
|
|
|
<sect2 id="menc-feat-quicktime-7-remux">
|
|
<title>Újrakeverés MP4-ként</title>
|
|
|
|
<para>
|
|
Több mód is van az AVI MP4-be történő újrakeverésére. Használhatod az
|
|
<application>mp4creator</application>-t, ami az
|
|
<ulink url="http://mpeg4ip.sourceforge.net/">MPEG4IP suite</ulink> része.
|
|
</para>
|
|
|
|
<para>
|
|
Először az AVI-ból különálló audió és videó folyamokat kell készíteni az
|
|
<application>MPlayer</application>rel.
|
|
|
|
<screen>mplayer narnia.avi -dumpaudio -dumpfile narnia.aac
|
|
mplayer narnia.avi -dumpvideo -dumpfile narnia.h264</screen>
|
|
|
|
A fájlnevek fontosak; az <application>mp4creator</application>
|
|
<systemitem>.aac</systemitem> kiterjesztésű AAC audió folyamot és
|
|
<systemitem>.h264</systemitem> kiterjesztésű H.264 videó folyamot vár.
|
|
</para>
|
|
|
|
<para>
|
|
Ezután használd az <application>mp4creator</application>-t egy új MP4
|
|
fájl létrehozásához az audió és videó folyamból.
|
|
|
|
<screen>mp4creator -create=narnia.aac narnia.mp4
|
|
mp4creator -create=narnia.h264 -rate=23.976 narnia.mp4</screen>
|
|
|
|
A kódolási lépéstől eltérően itt a framerátát decimálisként
|
|
(23.976) kell megadni, nem törtként (24000/1001).
|
|
</para>
|
|
|
|
<para>
|
|
Ennek a <systemitem>narnia.mp4</systemitem> fájlnak már bármilyen
|
|
<application>QuickTime</application> 7 alkalmazással lejátszhatónak kell
|
|
lennie, mint például a <application>QuickTime Player</application> vagy
|
|
az <application>iTunes</application>. Ha a videót böngészőben szeretnéd
|
|
megnézni a <application>QuickTime</application> plugin-nel, utasítanod kell
|
|
a <application>QuickTime</application> plugin-t, hogy kezdje meg a lejátszást,
|
|
miközben még tart a letöltés. Az <application>mp4creator</application>
|
|
bele tudja tenni a videóba az ehhez szükséges utasító sávokat:
|
|
|
|
<screen>mp4creator -hint=1 narnia.mp4
|
|
mp4creator -hint=2 narnia.mp4
|
|
mp4creator -optimize narnia.mp4</screen>
|
|
|
|
Ellenőrizheted a végső eredményt, hogy meggyőződj róla, hogy az utasító
|
|
sávok rendben elkészültek:
|
|
|
|
<screen>mp4creator -list narnia.mp4</screen>
|
|
|
|
Látnod kell a sávok listáját: 1 audió, 1 videó és 2 hint sáv.
|
|
|
|
<screen>Track Type Info
|
|
1 audio MPEG-4 AAC LC, 8548.714 secs, 190 kbps, 48000 Hz
|
|
2 video H264 Main@5.1, 8549.132 secs, 899 kbps, 848x352 @ 23.976001 fps
|
|
3 hint Payload mpeg4-generic for track 1
|
|
4 hint Payload H264 for track 2
|
|
</screen>
|
|
</para>
|
|
|
|
</sect2>
|
|
|
|
<sect2 id="menc-feat-quicktime-7-metadata">
|
|
<title>Metadata tag-ek hozzáadása</title>
|
|
|
|
<para>
|
|
Ha tag-eket akarsz hozzáfűzni a videódhoz, amiket az iTunes megjelnít, használhatod az
|
|
<ulink url="http://atomicparsley.sourceforge.net/">AtomicParsley</ulink>-t.
|
|
|
|
<screen>AtomicParsley narnia.mp4 --metaEnema --title "The Chronicles of Narnia" --year 2005 --stik Movie --freefree --overWrite</screen>
|
|
|
|
A <option>--metaEnema</option> opció eltávolít minden meglévő metadata-t
|
|
(<application>mp4creator</application> beszúrja a saját nevét az
|
|
"encoding tool" tag-be), a <option>--freefree</option> pedig visszaszerzi
|
|
a törölt metadata által elfoglalt helyet.
|
|
A <option>--stik</option> opció beállítja a videó típusát (mint pl. Movie
|
|
vagy TV Show), aminek a segítségével az iTunes csoportosítani tudja a fájlokat.
|
|
A <option>--overWrite</option> opció felülírja az eredeti fájlt;
|
|
ennélkül az <application>AtomicParsley</application> egy új, automatikusan
|
|
elnevezett fájlt hoz létre ugyan abban a könyvtárban és érintetlenül hagyja
|
|
az eredeti fájlt.
|
|
</para>
|
|
|
|
</sect2>
|
|
|
|
</sect1>
|
|
|
|
|
|
<!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -->
|
|
|
|
|
|
<sect1 id="menc-feat-vcd-dvd">
|
|
<title>A <application>MEncoder</application>
|
|
használata VCD/SVCD/DVD-kompatibilis fájlok készítéséhez.</title>
|
|
|
|
<sect2 id="menc-feat-vcd-dvd-constraints">
|
|
<title>Formátum korlátok</title>
|
|
|
|
<para>
|
|
A <application>MEncoder</application> képes VCD, SCVD és DVD formátumú
|
|
MPEG fájlok létrehozására a
|
|
<systemitem class="library">libavcodec</systemitem> könyvtár segítségével.
|
|
Ezek a fájlok a
|
|
<ulink url="http://www.gnu.org/software/vcdimager/vcdimager.html">vcdimager</ulink>-rel
|
|
vagy a
|
|
<ulink url="http://dvdauthor.sourceforge.net/">dvdauthor</ulink>-ral
|
|
együttműködve felhasználhatók szabványos lejátszókban lejátszható
|
|
lemezek készítéséhez.
|
|
</para>
|
|
|
|
<para>
|
|
A DVD, SVCD és VCD formátumok súlyos korlátokkal rendelkeznek.
|
|
A kódolt képméretekből és a képarányokból csak nagyon kevés áll
|
|
rendelkezésre.
|
|
Ha a filmed nem felel meg ezeknek a követelményeknek, méretezned,
|
|
vágnod vagy fekete keretet kell hozzáadnod a képhez, hogy kompatibilis
|
|
legyen.
|
|
</para>
|
|
|
|
|
|
<sect3 id="menc-feat-vcd-dvd-constraints-resolution">
|
|
<title>Formátum korlátok</title>
|
|
|
|
<informaltable frame="all">
|
|
<tgroup cols="9">
|
|
<thead>
|
|
<row>
|
|
<entry>Formátum</entry>
|
|
<entry>Felbontás</entry>
|
|
<entry>V. Codec</entry>
|
|
<entry>V. Bitráta</entry>
|
|
<entry>Mintavételi ráta</entry>
|
|
<entry>A. Codec</entry>
|
|
<entry>A. Bitráta</entry>
|
|
<entry>FPS</entry>
|
|
<entry>Arány</entry>
|
|
</row>
|
|
</thead>
|
|
<tbody>
|
|
<row>
|
|
<entry>NTSC DVD</entry>
|
|
<entry>720x480, 704x480, 352x480, 352x240</entry>
|
|
<entry>MPEG-2</entry>
|
|
<entry>9800 kbps</entry>
|
|
<entry>48000 Hz</entry>
|
|
<entry>AC-3,PCM</entry>
|
|
<entry>1536 kbps (max)</entry>
|
|
<entry>30000/1001, 24000/1001</entry>
|
|
<entry>4:3, 16:9 (csak 720x480-nál)</entry>
|
|
</row>
|
|
<row>
|
|
<entry>NTSC DVD</entry>
|
|
<entry>352x240<footnote id='fn-rare-resolutions'><para>
|
|
Ezek a felbontások ritkán használatosak a DVD-ken, mert elég
|
|
alacsony minőségűek.</para></footnote></entry>
|
|
<entry>MPEG-1</entry>
|
|
<entry>1856 kbps</entry>
|
|
<entry>48000 Hz</entry>
|
|
<entry>AC-3,PCM</entry>
|
|
<entry>1536 kbps (max)</entry>
|
|
<entry>30000/1001, 24000/1001</entry>
|
|
<entry>4:3, 16:9</entry>
|
|
</row>
|
|
<row>
|
|
<entry>NTSC SVCD</entry>
|
|
<entry>480x480</entry>
|
|
<entry>MPEG-2</entry>
|
|
<entry>2600 kbps</entry>
|
|
<entry>44100 Hz</entry>
|
|
<entry>MP2</entry>
|
|
<entry>384 kbps (max)</entry>
|
|
<entry>30000/1001</entry>
|
|
<entry>4:3</entry>
|
|
</row>
|
|
<row>
|
|
<entry>NTSC VCD</entry>
|
|
<entry>352x240</entry>
|
|
<entry>MPEG-1</entry>
|
|
<entry>1150 kbps</entry>
|
|
<entry>44100 Hz</entry>
|
|
<entry>MP2</entry>
|
|
<entry>224 kbps</entry>
|
|
<entry>24000/1001, 30000/1001</entry>
|
|
<entry>4:3</entry>
|
|
</row>
|
|
<row>
|
|
<entry>PAL DVD</entry>
|
|
<entry>720x576, 704x576, 352x576, 352x288</entry>
|
|
<entry>MPEG-2</entry>
|
|
<entry>9800 kbps</entry>
|
|
<entry>48000 Hz</entry>
|
|
<entry>MP2,AC-3,PCM</entry>
|
|
<entry>1536 kbps (max)</entry>
|
|
<entry>25</entry>
|
|
<entry>4:3, 16:9 (csak 720x576-nál)</entry>
|
|
</row>
|
|
<row>
|
|
<entry>PAL DVD</entry>
|
|
<entry>352x288<footnoteref linkend='fn-rare-resolutions'/></entry>
|
|
<entry>MPEG-1</entry>
|
|
<entry>1856 kbps</entry>
|
|
<entry>48000 Hz</entry>
|
|
<entry>MP2,AC-3,PCM</entry>
|
|
<entry>1536 kbps (max)</entry>
|
|
<entry>25</entry>
|
|
<entry>4:3, 16:9</entry>
|
|
</row>
|
|
<row>
|
|
<entry>PAL SVCD</entry>
|
|
<entry>480x576</entry>
|
|
<entry>MPEG-2</entry>
|
|
<entry>2600 kbps</entry>
|
|
<entry>44100 Hz</entry>
|
|
<entry>MP2</entry>
|
|
<entry>384 kbps (max)</entry>
|
|
<entry>25</entry>
|
|
<entry>4:3</entry>
|
|
</row>
|
|
<row>
|
|
<entry>PAL VCD</entry>
|
|
<entry>352x288</entry>
|
|
<entry>MPEG-1</entry>
|
|
<entry>1152 kbps</entry>
|
|
<entry>44100 Hz</entry>
|
|
<entry>MP2</entry>
|
|
<entry>224 kbps</entry>
|
|
<entry>25</entry>
|
|
<entry>4:3</entry>
|
|
</row>
|
|
</tbody>
|
|
</tgroup>
|
|
</informaltable>
|
|
|
|
<para>
|
|
Ha a filmednek 2.35:1 méretaránya van (a legtöbb akció film), fekete
|
|
keretet kell hozzáadnod vagy le kell vágnod a filmet 16:9-es méretarányra
|
|
DVD vagy VCD készítéshez.
|
|
Ha fekete keretet adsz hozzá, próbáld meg 16 pixel-es határra igazítani
|
|
őket a kódolási teljesítményre való hatásuk minimalizálásához.
|
|
Szerencsére a DVD-nek eléggé magas a bitrátája, nem kell aggódnod
|
|
túlságosan a kódolás hatékonysága miatt, de az SVCD és a VCD
|
|
bitráta-szegény, ezért erőfeszítéseket kell tenni az elfogadható
|
|
minőségért is.
|
|
</para>
|
|
</sect3>
|
|
|
|
|
|
<sect3 id="menc-feat-vcd-dvd-constraints-gop">
|
|
<title>GOP méret határok</title>
|
|
|
|
<para>
|
|
A DVD, VCD és SVCD eléggé alacsony GOP (Group of Pictures)
|
|
méret értékekre korlátoz le.
|
|
Egy 30 fps-es anyagnál a legnagyobb megengedett GOP méret 18.
|
|
25 vagy 24 fps-nél a maximum 15.
|
|
A GOP méretét a <option>keyint</option> opcióval lehet beállítani.
|
|
</para>
|
|
</sect3>
|
|
|
|
|
|
<sect3 id="menc-feat-vcd-dvd-constraints-bitrate">
|
|
<title>Bitráta korlátok</title>
|
|
|
|
<para>
|
|
A VCD videónak CBR-esnek kell lennie 1152 kbps-en.
|
|
Ehhez a nagyon erős megkötéshez egy extrém alacsony, 327 kilobit-es vbv
|
|
buffer méret társul.
|
|
Az SVCD megengedi a bitráta változtatását 2500 kbps-ig és kicsit kevésbé
|
|
korlátozó, 917 kilobit-es vbv buffer méretet engedélyez.
|
|
A DVD videó bitrátája bárhol lehet 9800 kbps-ig (bár az általános
|
|
bitráták ennek felénél vannak) és a vbv buffer méret is 1835 kilobit.
|
|
</para>
|
|
</sect3>
|
|
</sect2>
|
|
|
|
<!-- ********** -->
|
|
|
|
<sect2 id="menc-feat-vcd-dvd-output">
|
|
<title>Kimeneti opciók</title>
|
|
|
|
<para>
|
|
A <application>MEncoder</application> rendelkezik a kimeneti formátumot
|
|
beállító kapcsolókkal.
|
|
Ezen opciók használatával utasíthatod, hogy helyes típusú fájlt
|
|
készítsen.
|
|
</para>
|
|
|
|
<para>
|
|
A VCD és SVCD opciókat xvcd-nek és xsvcd-nek hívják, mert kiterjesztett
|
|
formátumúak.
|
|
Nem teljesen kompatibilisek, főként mivel a kimenet nem tartalmaz
|
|
scan offszet-eket.
|
|
Ha SVCD CD képet kell készítened, add át a kimeneti fájlt a
|
|
<ulink url="http://www.gnu.org/software/vcdimager/vcdimager.html">vcdimager</ulink>-nek.
|
|
</para>
|
|
|
|
<para>
|
|
VCD:
|
|
<screen>-of mpeg -mpegopts format=xvcd</screen>
|
|
</para>
|
|
|
|
<para>
|
|
SVCD:
|
|
<screen>-of mpeg -mpegopts format=xsvcd</screen>
|
|
</para>
|
|
|
|
<para>
|
|
DVD (minden kockánál időbélyeggel, ha lehetséges):
|
|
<screen>-of mpeg -mpegopts format=dvd:tsaf</screen>
|
|
</para>
|
|
|
|
<para>
|
|
DVD NTSC Pullup-pal:
|
|
<screen>-of mpeg -mpegopts format=dvd:tsaf:telecine -ofps 24000/1001</screen>
|
|
Ez engedélyezi a 24000/1001 fps-es progresszív tartalom 30000/1001
|
|
fps-sel történő kódolását a DVD-előírások betartásával.
|
|
</para>
|
|
|
|
|
|
<sect3 id="menc-feat-vcd-dvd-output-aspect">
|
|
<title>Képarány</title>
|
|
|
|
<para>
|
|
A <option>-lavcopts</option> aspect argumentuma használható a fájl
|
|
képarányának elkódolásához.
|
|
Lejátszás közben a képarányt a videó megfelelő méretűre állításához
|
|
használják.
|
|
</para>
|
|
|
|
<para>
|
|
16:9 vagy "Widescreen"
|
|
<screen>-lavcopts aspect=16/9</screen>
|
|
</para>
|
|
|
|
<para>
|
|
4:3 vagy "Fullscreen"
|
|
<screen>-lavcopts aspect=4/3</screen>
|
|
</para>
|
|
|
|
<para>
|
|
2.35:1 vagy "Cinemascope" NTSC
|
|
<screen>-vf scale=720:368,expand=720:480 -lavcopts aspect=16/9</screen>
|
|
A helyes méretarány kiszámításához használd a 854/2.35 = 368-as kibővített
|
|
NTSC szélességet.
|
|
</para>
|
|
|
|
<para>
|
|
2.35:1 vagy "Cinemascope" PAL
|
|
<screen>-vf scale=720:432,expand=720:576 -lavcopts aspect=16/9</screen>
|
|
A helyes méretarány kiszámításához használd a 1024/2.35 = 432-es kibővített
|
|
PAL szélességet.
|
|
</para>
|
|
</sect3>
|
|
|
|
|
|
<sect3 id="menc-feat-vcd-dvd-a-v-sync">
|
|
<title>A/V szinkron megtartása</title>
|
|
|
|
<para>
|
|
Az audió/videó szinkronizáció kódolás közbeni megtartásához a
|
|
<application>MEncoder</application>nek el kell dobni vagy meg kell
|
|
duplázni képkockákat. Ez jobban működik ha AVI fájlba keversz, de
|
|
majdnem biztosan sikertelen az A/V szinkron megtartása más muxer-ekkel,
|
|
mint pl. az MPEG. Ezért van, hogy a <option>harddup</option> videó
|
|
szűrőt hozzá kell csatolni a szűrőlánc végéhez ezen problémák
|
|
elkerüléséhez.
|
|
A <option>harddup</option>-ról további információkat a
|
|
<link linkend="menc-feat-dvd-mpeg4-muxing-filter-issues">muxálás és az A/V szinkron megbízhatósága</link>
|
|
című fejezetben találsz vagy a man oldalon.
|
|
</para>
|
|
</sect3>
|
|
|
|
|
|
<sect3 id="menc-feat-vcd-dvd-output-srate">
|
|
<title>Mintavételi ráta konvertálás</title>
|
|
|
|
<para>
|
|
Ha az eredeti fájl audió mintavételi rátája nem ugyan olyan, mint ami
|
|
a cél formátumban szükséges, mintavételi ráta konvertálást kell
|
|
végrehajtani.
|
|
Ez a <option>-srate</option> és <option>-af lavcresample</option>
|
|
kapcsolók együttes használatával érhető el.
|
|
</para>
|
|
|
|
<para>
|
|
DVD:
|
|
<screen>-srate 48000 -af lavcresample=48000</screen>
|
|
</para>
|
|
|
|
<para>
|
|
VCD és SVCD:
|
|
<screen>-srate 44100 -af lavcresample=44100</screen>
|
|
</para>
|
|
</sect3>
|
|
</sect2>
|
|
|
|
<!-- ********** -->
|
|
|
|
<sect2 id="menc-feat-vcd-dvd-lavc">
|
|
<title>A libavcodec használata VCD/SVCD/DVD kódoláshoz</title>
|
|
|
|
<sect3 id="menc-feat-vcd-dvd-lavc-intro">
|
|
<title>Bevezetés</title>
|
|
|
|
<para>
|
|
A <systemitem class="library">libavcodec</systemitem> használható
|
|
VCD/SVCD/DVD kompatibilis videó készítéséhez a megfelelő opciókkal.
|
|
</para>
|
|
</sect3>
|
|
|
|
|
|
<sect3 id="menc-feat-vcd-dvd-lavc-options">
|
|
<title>lavcopts</title>
|
|
|
|
<para>
|
|
Következzék egy lista a <option>-lavcopts</option>-ban használható
|
|
mezőkről, amiknek a megváltoztatására szükséged lehet a VCD, SVCD,
|
|
vagy DVD kompatibilis film készítésekor:
|
|
</para>
|
|
|
|
<itemizedlist>
|
|
<listitem><para>
|
|
<emphasis role="bold">acodec</emphasis>:
|
|
<option>mp2</option> a VCD-hez, SVCD-hez vagy PAL DVD-hez;
|
|
<option>ac3</option> a leggyakoribb DVD-hez.
|
|
PCM audió is használható DVD-hez, de legtöbbször csak helypazarlás.
|
|
Figyelj rá, hogy az MP3 audió ezen formátumok egyikével sem
|
|
kompatibilis, de a lejátszóknak gyakran semmi gondot nem okoz a
|
|
lejátszása.
|
|
</para></listitem>
|
|
<listitem><para>
|
|
<emphasis role="bold">abitrate</emphasis>:
|
|
224 VCD-nél; 384-ig SVCD-nél; 1536-ig DVD-nél, de általában a használt
|
|
értékek a sztereónál 192 kbps-étől az 5.1 csatornás hang 384 kbps-éig
|
|
változnak.
|
|
</para></listitem>
|
|
<listitem><para>
|
|
<emphasis role="bold">vcodec</emphasis>:
|
|
<option>mpeg1video</option> VCD-hez;
|
|
<option>mpeg2video</option> SVCD-hez;
|
|
<option>mpeg2video</option> használatos általában a DVD-hez, de lehet
|
|
<option>mpeg1video</option> is a CIF felbontásokhoz.
|
|
</para></listitem>
|
|
<listitem><para>
|
|
<emphasis role="bold">keyint</emphasis>:
|
|
A GOP méret beállításához használható.
|
|
18 a 30fps-es anyagé vagy 15 a 25/24 fps-esé.
|
|
A kereskedelmi előállítók a 12-es kulcskocka intervallumot preferálják.
|
|
Lehetséges ezen érték nagyobbra állítása is a legtöbb lejátszóval való
|
|
kompatibiliítás megtartása mellett.
|
|
A 25-ös <option>keyint</option> soha nem okoz problémát.
|
|
</para></listitem>
|
|
<listitem><para>
|
|
<emphasis role="bold">vrc_buf_size</emphasis>:
|
|
327 VCD-nél, 917 SVCD-nél és 1835 DVD-nél.
|
|
</para></listitem>
|
|
<listitem><para>
|
|
<emphasis role="bold">vrc_minrate</emphasis>:
|
|
1152 VCD-nél. Elhagyható SVCD és DVD esetében.
|
|
</para></listitem>
|
|
<listitem><para>
|
|
<emphasis role="bold">vrc_maxrate</emphasis>:
|
|
1152 VCD-nél; 2500 SVCD-nél; 9800 DVD-nél.
|
|
SVCD-hez és DVD-hez az egyéni kívánalmaidnak és igényeidnek megfelelően
|
|
használhatsz magasabb értékeket is.
|
|
</para></listitem>
|
|
<listitem><para>
|
|
<emphasis role="bold">vbitrate</emphasis>:
|
|
1152 VCD-nél;
|
|
legfeljebb 2500 SVCD-nél;
|
|
legfeljebb 9800 DVD-nél.
|
|
Az utóbbi két formátumnál a vbitrate egyéni igények szerint állítható
|
|
be.
|
|
Például szeretnéd, hogy 20 óra vagy akörüli anyag felférjen egy
|
|
DVD-re, használhatod a vbitrate=400-at.
|
|
Az eredmény videó minősége valószínűleg elég rossz lesz.
|
|
Ha megpróbálod kisakkozni a lehető legjobb minőséget a DVD-n, használd
|
|
a vbitrate=9800-at, de emlékezz rá, hogy emiatt kevesebb, mint egy
|
|
órányi videód lehet egy egyrétegű DVD-n.
|
|
</para></listitem>
|
|
<listitem><para>
|
|
<emphasis role="bold">vstrict</emphasis>:
|
|
<option>vstrict</option>=0 ajánlott DVD-k készítéséhez.
|
|
Ezen opció nélkül a <application>MEncoder</application> egy olyan
|
|
folyamot készít, amit néhány asztali lejátszó nem tud helyesen
|
|
dekódolni.
|
|
</para></listitem>
|
|
</itemizedlist>
|
|
</sect3>
|
|
|
|
|
|
<sect3 id="menc-feat-vcd-dvd-lavc-examples">
|
|
<title>Példák</title>
|
|
|
|
<para>
|
|
Általában ez a minimum <option>-lavcopts</option> egy videó elkódolásához:
|
|
</para>
|
|
<para>
|
|
VCD:
|
|
<screen>
|
|
-lavcopts vcodec=mpeg1video:vrc_buf_size=327:vrc_minrate=1152:\
|
|
vrc_maxrate=1152:vbitrate=1152:keyint=15:acodec=mp2
|
|
</screen>
|
|
</para>
|
|
|
|
<para>
|
|
SVCD:
|
|
<screen>
|
|
-lavcopts vcodec=mpeg2video:vrc_buf_size=917:vrc_maxrate=2500:vbitrate=1800:\
|
|
keyint=15:acodec=mp2
|
|
</screen>
|
|
</para>
|
|
|
|
<para>
|
|
DVD:
|
|
<screen>
|
|
-lavcopts vcodec=mpeg2video:vrc_buf_size=1835:vrc_maxrate=9800:vbitrate=5000:\
|
|
keyint=15:vstrict=0:acodec=ac3
|
|
</screen>
|
|
</para>
|
|
</sect3>
|
|
|
|
|
|
<sect3 id="menc-feat-vcd-dvd-lavc-advanced">
|
|
<title>Haladó opciók</title>
|
|
|
|
<para>
|
|
Jobb minőségű kódoláshoz valószínűleg használni szeretnéd a lavcopts
|
|
minőség-javító opcióit is, mint például a <option>trell</option>,
|
|
<option>mbd=2</option>, vagy mások.
|
|
Figyelj rá, hogy a <option>qpel</option> és a <option>v4mv</option>
|
|
bár gyakran hasznosak MPEG-4 esetén, nem használhatóak MPEG-1 vagy
|
|
MPEG-2-vel. Ha nagyon jó minőségű DVD kódolást akarsz készíteni,
|
|
hasznos lehet a <option>dc=10</option> opció hozzáadása a lavcopts-hoz.
|
|
Ez segíti csökkenteni a blokkosodást a színtelen részeknél. Mindezt
|
|
összerakva, itt egy példa jó minőségű DVD készítéséhez szükséges
|
|
lavcopts-ra:
|
|
</para>
|
|
|
|
<para>
|
|
<screen>
|
|
-lavcopts vcodec=mpeg2video:vrc_buf_size=1835:vrc_maxrate=9800:vbitrate=8000:\
|
|
keyint=15:trell:mbd=2:precmp=2:subcmp=2:cmp=2:dia=-10:predia=-10:cbp:mv0:\
|
|
vqmin=1:lmin=1:dc=10:vstrict=0
|
|
</screen>
|
|
</para>
|
|
</sect3>
|
|
</sect2>
|
|
|
|
<!-- ********** -->
|
|
|
|
<sect2 id="menc-feat-vcd-dvd-audio">
|
|
<title>Audió kódolása</title>
|
|
|
|
<para>
|
|
A VCD és az SVCD támogatja az MPEG-1 layer II audiót, a
|
|
<systemitem class="library">toolame</systemitem>,
|
|
<systemitem class="library">twolame</systemitem>,
|
|
vagy a <systemitem class="library">libavcodec</systemitem> MP2
|
|
kódolójának felhasználásával.
|
|
A libavcodec MP2 messze nincs olyan jó, mint a másik két könyvtár,
|
|
azonban az mindig elérhető és használható.
|
|
A VCD csak konstans bitrátájú audiót (CBR) támogat, míg az SVCD
|
|
tudja a változó bitrátát (VBR) is.
|
|
De vigyázz a VBR-rel, mert néhány hibás asztali lejátszó sem támogatja.
|
|
</para>
|
|
|
|
<para>
|
|
A DVD audióhoz a <systemitem class="library">libavcodec</systemitem>
|
|
AC-3 codec-je használható.
|
|
</para>
|
|
|
|
|
|
<sect3 id="menc-feat-vcd-dvd-audio-toolame">
|
|
<title>toolame</title>
|
|
|
|
<para>
|
|
VCD-hez és SVCD-hez:
|
|
<screen>-oac toolame -toolameopts br=224</screen>
|
|
</para>
|
|
</sect3>
|
|
|
|
|
|
<sect3 id="menc-feat-vcd-dvd-audio-twolame">
|
|
<title>twolame</title>
|
|
|
|
<para>
|
|
VCD-hez és SVCD-hez:
|
|
<screen>-oac twolame -twolameopts br=224</screen>
|
|
</para>
|
|
</sect3>
|
|
|
|
|
|
<sect3 id="menc-feat-vcd-dvd-audio-lavc">
|
|
<title>libavcodec</title>
|
|
|
|
<para>
|
|
DVD-hez két csatornás hanggal:
|
|
<screen>-oac lavc -lavcopts acodec=ac3:abitrate=192</screen>
|
|
</para>
|
|
|
|
<para>
|
|
DVD-hez 5.1 csatornás hanggal:
|
|
<screen>-channels 6 -oac lavc -lavcopts acodec=ac3:abitrate=384</screen>
|
|
</para>
|
|
|
|
<para>
|
|
VCD-hez és SVCD-hez:
|
|
<screen>-oac lavc -lavcopts acodec=mp2:abitrate=224</screen>
|
|
</para>
|
|
</sect3>
|
|
</sect2>
|
|
|
|
<!-- ********** -->
|
|
|
|
<sect2 id="menc-feat-vcd-dvd-all">
|
|
<title>Mindent összevetve</title>
|
|
|
|
<para>
|
|
Ez a rész néhány teljes parancsot mutat a VCD/SVCD/DVD kompatibilis
|
|
videók készítéséhez.
|
|
</para>
|
|
|
|
|
|
<sect3 id="menc-feat-vcd-dvd-all-pal-dvd">
|
|
<title>PAL DVD</title>
|
|
|
|
<para>
|
|
<screen>
|
|
mencoder -oac lavc -ovc lavc -of mpeg -mpegopts format=dvd:tsaf \
|
|
-vf scale=720:576,harddup -srate 48000 -af lavcresample=48000 \
|
|
-lavcopts vcodec=mpeg2video:vrc_buf_size=1835:vrc_maxrate=9800:vbitrate=5000:\
|
|
keyint=15:vstrict=0:acodec=ac3:abitrate=192:aspect=16/9 -ofps 25 \
|
|
-o <replaceable>movie.mpg</replaceable> <replaceable>movie.avi</replaceable>
|
|
</screen>
|
|
</para>
|
|
</sect3>
|
|
|
|
|
|
<sect3 id="menc-feat-vcd-dvd-all-ntsc-dvd">
|
|
<title>NTSC DVD</title>
|
|
|
|
<para>
|
|
<screen>
|
|
mencoder -oac lavc -ovc lavc -of mpeg -mpegopts format=dvd:tsaf \
|
|
-vf scale=720:480,harddup -srate 48000 -af lavcresample=48000 \
|
|
-lavcopts vcodec=mpeg2video:vrc_buf_size=1835:vrc_maxrate=9800:vbitrate=5000:\
|
|
keyint=18:vstrict=0:acodec=ac3:abitrate=192:aspect=16/9 -ofps 30000/1001 \
|
|
-o <replaceable>movie.mpg</replaceable> <replaceable>movie.avi</replaceable>
|
|
</screen>
|
|
</para>
|
|
</sect3>
|
|
|
|
|
|
<sect3 id="menc-feat-vcd-dvd-all-pal-ac3-copy">
|
|
<title>AC-3 Audiót tartalmazó PAL AVI DVD-re</title>
|
|
|
|
<para>
|
|
Ha a forrás már AC-3 audióval rendelkezik, használd a -oac copy kapcsolót az
|
|
újrakódolása helyett.
|
|
<screen>
|
|
mencoder -oac copy -ovc lavc -of mpeg -mpegopts format=dvd:tsaf \
|
|
-vf scale=720:576,harddup -ofps 25 \
|
|
-lavcopts vcodec=mpeg2video:vrc_buf_size=1835:vrc_maxrate=9800:vbitrate=5000:\
|
|
keyint=15:vstrict=0:aspect=16/9 -o <replaceable>movie.mpg</replaceable> <replaceable>movie.avi</replaceable>
|
|
</screen>
|
|
</para>
|
|
</sect3>
|
|
|
|
|
|
<sect3 id="menc-feat-vcd-dvd-all-ntsc-ac3-copy">
|
|
<title>AC-3 Audiót tartalmazó NTSC AVI DVD-re</title>
|
|
|
|
<para>
|
|
Ha a forrás már AC-3 audiót tartalmaz és NTSC @ 24000/1001 fps:
|
|
<screen>
|
|
mencoder -oac copy -ovc lavc -of mpeg -mpegopts format=dvd:tsaf:telecine \
|
|
-vf scale=720:480,harddup -lavcopts vcodec=mpeg2video:vrc_buf_size=1835:\
|
|
vrc_maxrate=9800:vbitrate=5000:keyint=15:vstrict=0:aspect=16/9 -ofps 24000/1001 \
|
|
-o <replaceable>movie.mpg</replaceable> <replaceable>movie.avi</replaceable>
|
|
</screen>
|
|
</para>
|
|
</sect3>
|
|
|
|
|
|
<sect3 id="menc-feat-vcd-dvd-all-pal-svcd">
|
|
<title>PAL SVCD</title>
|
|
|
|
<para>
|
|
<screen>
|
|
mencoder -oac lavc -ovc lavc -of mpeg -mpegopts format=xsvcd -vf \
|
|
scale=480:576,harddup -srate 44100 -af lavcresample=44100 -lavcopts \
|
|
vcodec=mpeg2video:mbd=2:keyint=15:vrc_buf_size=917:vrc_minrate=600:\
|
|
vbitrate=2500:vrc_maxrate=2500:acodec=mp2:abitrate=224:aspect=16/9 -ofps 25 \
|
|
-o <replaceable>movie.mpg</replaceable> <replaceable>movie.avi</replaceable>
|
|
</screen>
|
|
</para>
|
|
</sect3>
|
|
|
|
|
|
<sect3 id="menc-feat-vcd-dvd-all-ntsc-svcd">
|
|
<title>NTSC SVCD</title>
|
|
|
|
<para>
|
|
<screen>
|
|
mencoder -oac lavc -ovc lavc -of mpeg -mpegopts format=xsvcd -vf \
|
|
scale=480:480,harddup -srate 44100 -af lavcresample=44100 -lavcopts \
|
|
vcodec=mpeg2video:mbd=2:keyint=18:vrc_buf_size=917:vrc_minrate=600:\
|
|
vbitrate=2500:vrc_maxrate=2500:acodec=mp2:abitrate=224:aspect=16/9 -ofps 30000/1001 \
|
|
-o <replaceable>movie.mpg</replaceable> <replaceable>movie.avi</replaceable>
|
|
</screen>
|
|
</para>
|
|
</sect3>
|
|
|
|
|
|
<sect3 id="menc-feat-vcd-dvd-all-pal-vcd">
|
|
<title>PAL VCD</title>
|
|
|
|
<para>
|
|
<screen>
|
|
mencoder -oac lavc -ovc lavc -of mpeg -mpegopts format=xvcd -vf \
|
|
scale=352:288,harddup -srate 44100 -af lavcresample=44100 -lavcopts \
|
|
vcodec=mpeg1video:keyint=15:vrc_buf_size=327:vrc_minrate=1152:\
|
|
vbitrate=1152:vrc_maxrate=1152:acodec=mp2:abitrate=224:aspect=16/9 -ofps 25 \
|
|
-o <replaceable>movie.mpg</replaceable> <replaceable>movie.avi</replaceable>
|
|
</screen>
|
|
</para>
|
|
</sect3>
|
|
|
|
|
|
<sect3 id="menc-feat-vcd-dvd-all-ntsc-vcd">
|
|
<title>NTSC VCD</title>
|
|
|
|
<para>
|
|
<screen>
|
|
mencoder -oac lavc -ovc lavc -of mpeg -mpegopts format=xvcd -vf \
|
|
scale=352:240,harddup -srate 44100 -af lavcresample=44100 -lavcopts \
|
|
vcodec=mpeg1video:keyint=18:vrc_buf_size=327:vrc_minrate=1152:\
|
|
vbitrate=1152:vrc_maxrate=1152:acodec=mp2:abitrate=224:aspect=16/9 -ofps 30000/1001 \
|
|
-o <replaceable>movie.mpg</replaceable> <replaceable>movie.avi</replaceable>
|
|
</screen>
|
|
</para>
|
|
</sect3>
|
|
</sect2>
|
|
</sect1>
|
|
</chapter>
|