9.8. A MEncoder használata VCD/SVCD/DVD-kompatibilis fájlok készítéséhez.

9.8.1. Formátum korlátok

A MEncoder képes VCD, SCVD és DVD formátumú MPEG fájlok létrehozására a libavcodec könyvtár segítségével. Ezek a fájlok a vcdimager-rel vagy a dvdauthor-ral együttműködve felhasználhatók szabványos lejátszókban lejátszható lemezek készítéséhez.

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.

9.8.1.1. Formátum korlátok

FormátumFelbontásV. CodecV. BitrátaMintavételi rátaA. CodecA. BitrátaFPSArány
NTSC DVD720x480, 704x480, 352x480, 352x240MPEG-29800 kbps48000 HzAC-3,PCM1536 kbps (max)30000/1001, 24000/10014:3, 16:9 (csak 720x480-nál)
NTSC DVD352x240[a]MPEG-11856 kbps48000 HzAC-3,PCM1536 kbps (max)30000/1001, 24000/10014:3, 16:9
NTSC SVCD480x480MPEG-22600 kbps44100 HzMP2384 kbps (max)30000/10014:3
NTSC VCD352x240MPEG-11150 kbps44100 HzMP2224 kbps24000/1001, 30000/10014:3
PAL DVD720x576, 704x576, 352x576, 352x288MPEG-29800 kbps48000 HzMP2,AC-3,PCM1536 kbps (max)254:3, 16:9 (csak 720x576-nál)
PAL DVD352x288[a]MPEG-11856 kbps48000 HzMP2,AC-3,PCM1536 kbps (max)254:3, 16:9
PAL SVCD480x576MPEG-22600 kbps44100 HzMP2384 kbps (max)254:3
PAL VCD352x288MPEG-11152 kbps44100 HzMP2224 kbps254:3

[a] Ezek a felbontások ritkán használatosak a DVD-ken, mert elég alacsony minőségűek.

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.

9.8.1.2. GOP méret határok

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 keyint opcióval lehet beállítani.

9.8.1.3. Bitráta korlátok

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.

9.8.2. Kimeneti opciók

A MEncoder 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.

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 vcdimager-nek.

VCD:

-of mpeg -mpegopts format=xvcd

SVCD:

-of mpeg -mpegopts format=xsvcd

DVD (minden kockánál időbélyeggel, ha lehetséges):

-of mpeg -mpegopts format=dvd:tsaf

DVD NTSC Pullup-pal:

-of mpeg -mpegopts format=dvd:tsaf:telecine -ofps 24000/1001

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.

9.8.2.1. Képarány

A -lavcopts 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.

16:9 vagy "Widescreen"

-lavcopts aspect=16/9

4:3 vagy "Fullscreen"

-lavcopts aspect=4/3

2.35:1 vagy "Cinemascope" NTSC

-vf scale=720:368,expand=720:480 -lavcopts aspect=16/9

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.

2.35:1 vagy "Cinemascope" PAL

-vf scale=720:432,expand=720:576 -lavcopts aspect=16/9

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.

9.8.2.2. A/V szinkron megtartása

Az audió/videó szinkronizáció kódolás közbeni megtartásához a MEncodernek 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 harddup videó szűrőt hozzá kell csatolni a szűrőlánc végéhez ezen problémák elkerüléséhez. A harddup-ról további információkat a muxálás és az A/V szinkron megbízhatósága című fejezetben találsz vagy a man oldalon.

9.8.2.3. Mintavételi ráta konvertálás

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 -srate és -af lavcresample kapcsolók együttes használatával érhető el.

DVD:

-srate 48000 -af lavcresample=48000

VCD és SVCD:

-srate 44100 -af lavcresample=44100

9.8.3. A libavcodec használata VCD/SVCD/DVD kódoláshoz

9.8.3.1. Bevezetés

A libavcodec használható VCD/SVCD/DVD kompatibilis videó készítéséhez a megfelelő opciókkal.

9.8.3.2. lavcopts

Következzék egy lista a -lavcopts-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:

  • acodec: mp2 a VCD-hez, SVCD-hez vagy PAL DVD-hez; ac3 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.

  • abitrate: 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.

  • vcodec: mpeg1video VCD-hez; mpeg2video SVCD-hez; mpeg2video használatos általában a DVD-hez, de lehet mpeg1video is a CIF felbontásokhoz.

  • keyint: 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 keyint soha nem okoz problémát.

  • vrc_buf_size: 327 VCD-nél, 917 SVCD-nél és 1835 DVD-nél.

  • vrc_minrate: 1152 VCD-nél. Elhagyható SVCD és DVD esetében.

  • vrc_maxrate: 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.

  • vbitrate: 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.

  • vstrict: vstrict=0 ajánlott DVD-k készítéséhez. Ezen opció nélkül a MEncoder egy olyan folyamot készít, amit néhány asztali lejátszó nem tud helyesen dekódolni.

9.8.3.3. Példák

Általában ez a minimum -lavcopts egy videó elkódolásához:

VCD:

-lavcopts vcodec=mpeg1video:vrc_buf_size=327:vrc_minrate=1152:\
vrc_maxrate=1152:vbitrate=1152:keyint=15:acodec=mp2

SVCD:

-lavcopts vcodec=mpeg2video:vrc_buf_size=917:vrc_maxrate=2500:vbitrate=1800:\
keyint=15:acodec=mp2

DVD:

-lavcopts vcodec=mpeg2video:vrc_buf_size=1835:vrc_maxrate=9800:vbitrate=5000:\
keyint=15:vstrict=0:acodec=ac3

9.8.3.4. Haladó opciók

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 trell, mbd=2, vagy mások. Figyelj rá, hogy a qpel és a v4mv 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 dc=10 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:

-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

9.8.4. Audió kódolása

A VCD és az SVCD támogatja az MPEG-1 layer II audiót, a toolame, twolame, vagy a libavcodec 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.

A DVD audióhoz a libavcodec AC-3 codec-je használható.

9.8.4.1. toolame

VCD-hez és SVCD-hez:

-oac toolame -toolameopts br=224

9.8.4.2. twolame

VCD-hez és SVCD-hez:

-oac twolame -twolameopts br=224

9.8.4.3. libavcodec

DVD-hez két csatornás hanggal:

-oac lavc -lavcopts acodec=ac3:abitrate=192

DVD-hez 5.1 csatornás hanggal:

-channels 6 -oac lavc -lavcopts acodec=ac3:abitrate=384

VCD-hez és SVCD-hez:

-oac lavc -lavcopts acodec=mp2:abitrate=224

9.8.5. Mindent összevetve

Ez a rész néhány teljes parancsot mutat a VCD/SVCD/DVD kompatibilis videók készítéséhez.

9.8.5.1. PAL DVD

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 movie.mpg movie.avi

9.8.5.2. NTSC DVD

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 movie.mpg movie.avi

9.8.5.3. AC-3 Audiót tartalmazó PAL AVI DVD-re

Ha a forrás már AC-3 audióval rendelkezik, használd a -oac copy kapcsolót az újrakódolása helyett.

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 movie.mpg movie.avi

9.8.5.4. AC-3 Audiót tartalmazó NTSC AVI DVD-re

Ha a forrás már AC-3 audiót tartalmaz és NTSC @ 24000/1001 fps:

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 movie.mpg movie.avi

9.8.5.5. PAL SVCD

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 movie.mpg movie.avi
  

9.8.5.6. NTSC SVCD

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 movie.mpg movie.avi

9.8.5.7. PAL VCD

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 movie.mpg movie.avi

9.8.5.8. NTSC VCD

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 movie.mpg movie.avi