Lásd http://www.mplayerhq.hu/DOCS/codecs-status.html a teljes, naponta generált listához!!!
A legfontosabb video codecek:
Ha van olyan codeced, ami nincs felsorolva vagy támogatva, olvasd el a codec importálás fejezetet, amiben le van írva mit kell tenned, hogy támogassuk a codeced!
Ez a fejezet a ProjectMayo DivX4 és DivX5 codec-eiről tartalmaz információkat. Az első hozzáférhető alfa verzió az OpenDivX alpha 47 és 48 volt. A támogatás ezekhez benne volt/van az MPlayer-ben, és alapállapotban bele is fordul. Régebben a postprocessing kódját használjuk, hogy javítsunk az MPEG1/2 filmek képminőségén. Most már saját minőségjavító kódunk van.
Ezen codec új generációja le tudja játszani a hírhedt DivX codec-kel készült filmeket is! És ez még nem minden, SOKKAL gyorsabb mint a Win32-es DivX DLL (viszont a libavcodec még ENNÉL IS gyorsabb, így eme codec használata NEM AJÁNLOTT - kivéve enkódoláshoz). A beállítást lásd lent. A codec egyetlen hátránya, hogy jelenleg zárt forráskódú. :(
A következő URL-ről lehet letölteni:
http://avifile.sourceforge.net
http://divx.com
Tömörítsd ki, és futtasd a ./install.sh
scriptet.
Megj: NE felejtsd el hozzáadni az /usr/local/lib
-et az
/etc/ld.so.conf
file végére, és futtatni az
ldconfig
-ot!
Az MPlayer automatikusan detektálja, ha a DivX4 (helyesen) van installálva, fordítsd le a szokott módon. Ha nem veszi észre, akkor nem követted pontosan a fent leírtakat és/vagy elcseszett konfigod van (lásd az 5.1-es fejezet utolsó kérdését).
Két lehetőség van a használatára:
-vc odivx | a codec használata, mint az OpenDivX új verziója. Ebben az esetben YV12 képeket produkál a saját bufferében, és az MPlayer (libvo) konverziót végez. | ||
-vc divx4 | a codec csinál konverziót. Ebben az esetben használhatsz YUY2/UYVY módokat is (LASSÚ). |
Az 'odivx' módszer általában gyorsabb, amiatt hogy a képadatokat YV12 (planar YUV 4:2:0) formátumban kezeli, így sokkal kevesebb sávszélességet igényel a buszon. Packed YUV módokhoz (YUY2, UYVY) használd a 'divx4' módszert. RGB módoknál szabadonválasztott, a sebességük megegyezik, talán a használt bpp-tol függően változhat.
Megj: ha a -vo meghajtód támogat direct renderinget, a -vc divx4
gyorsabb lehet !
Megj: a RÉGI OpenDivX támogat postprocessinget is (ez a módszer az
-oldpp
opcióval kapcsolható be), de az értékei furcsák :
0 | nincs | ||
10 .. 20 | postprocessing, normal (mint a 2-es szint a DirectShow-os DivX codeccel) | ||
30 .. 60 | hard prostprocessing, sok CPU-t eszik (mint a 4-es) |
2.2.1.2. ffmpeg DivX/libavcodec
Az ffmpeg tartalmaz egy nyitott forráskódú codec csomagot, amely képes H263/MJPEG/RV10/DivX3/DivX4/DivX5/MP41/MP42/WMV1 codec-ekkel enkódolt videok lejátszására. Továbbá nemcsakhogy néhányukkal még enkódolni is lehet, de ezek sokkal szebbek és gyorsabbak mint a Win32-es codec-ek, vagy a DivX4 codec.
A leghasznosabb codecek az MPEG4 variánsok: DivX 3, DivX 4, DivX 5, Windows Media Video 7 (WMV1)
Ha egy MPlayer release-t használsz nem kell semmit tenned, a libavcodec már a csomagban van, csak fordítsd le az MPlayer-t ahogy szoktad. Ha CVS-ből szerezted az MPlayer-t, le kell töltened az ffmpeg CVS fáját is, mivel az ffmpeg release-k nem kompatibilisek a legújabb MPlayer-rel. A kiadandó parancsok:
cvs -d:pserver:anonymous@cvs.ffmpeg.sourceforge.net:/cvsroot/ffmpeg login
cvs -d:pserver:anonymous@cvs.ffmpeg.sourceforge.net:/cvsroot/ffmpeg co ffmpeg
libavcodec
könyvtárat az FFmpeg forrásból
az MPlayer CVS fába. Így:
main/libavcodec
Megj.: bár az MPlayer CVS tartalmaz egy libavcodec könyvtárat, NEM tartalmazza a libavcodec-et!
Ezzel és egy Matrox G400-zal még a legnagyobb felbontású DivX filmeket is meg lehet nézni képkockavesztés nélkül, egy régi K6/2 500-ason.
Előszó:
A bináris XAnim codec-ek mellé van csomagolva egy-egy kis szöveges file
ami legális licensznek vallja magát, és többek között tiltja a codec-ek
XAnim-on kívüli bármilyen más programmal történő felhasználását.
Szerencsére az XAnim szerzője úgy tűnik nem törődik a codec-eivel.
Nos igen, az MPlayer tudja használni az XAnim codec-eit dekódolásra. Nagyon könnyű bekapcsolni őket:
--with-xanimlibdir
opcióval mondd meg a configure-nak hogy
hol vannak az xanim codec-ek. Magától az
/usr/local/lib/xanim/mods, /usr/lib/xanim/mods, /usr/lib/xanim
könyvtárban keresi őket. Egy másik megoldás ha a XANIM_MOD_DIR
környezeti változót beállítod arra a könyvtárra ahol az XAnime codec-ek
találhatók.vid_cvid.xa, vid_h263.xa,
vid_iv50.xa
Ezek a 10-es video codec családba tartoznak, így a -vfm 10
opcióval megadhatod az MPlayer-nek, hogy ezeket használja, ha
lehetséges.
Az eddig tesztelt codec-ek a következők: Indeo 3.2, 4.1, 5.0, CVID, 3ivX, h263.
Az MPlayer képes lejátszani Vivo (1.0 és 2.0) file-okat. Az 1.0-ás
fileokra a legmegfelelőbb az FFmpeg-beli H263 codec, amit a -vc
ffh263
opcióval lehet használni (alapértelmezett) (új libavcodec
szükséges !). A 2.0-ás fileokhoz szedd le az ivvideo.dll
Win32
DLL file-t
innen),
és installáld a /usr/lib/win32
könyvtárba, vagy ahol tárolod a
Win32-es codeceket. Ezutóbbi codec nem támogat se YV12 se YUY2 kimenetet,
csak BGR-t, ezért kizárólag X11 és OpenGL kimenetekkel működik. Remélhetőleg
hamarosan az ffh263 is tud VIVO 2.0-ás file-okat dekódolni.
Olvasd el a VIVO audio codec fejezetet is!
Az MPEG1 és MPEG2 a natív libmpeg2-vel dekódoljuk. A forrása benne van az MPlayer-ben, és természetesen több platformon is használható. A hibás MPEG1/2 fileokat úgy játszuk le hogy sig11 után gyorsan újrainicializáljuk a libmpeg2-őt és folytatjuk a lejátszást pontosan onnan ahol a hiba volt. Nincs sebességvesztés.
Ez egy nagyon régi és nagyon rossz codec a Microsoft-tól. Régebben ennek
dekódolásához az msvidc32.dll
nevű Win32-es codecet használtuk,
de mostmár van nyitott forrású implementációnk,
Mike Melanson-tól.
Az MPlayer a saját nyílt forrású, többplatformos Cinepak dekóderét használja Cinepak filmekhez. Ez a dekóder támogatja a YUV kimenetet, így a hardveres gyorsítást is ha az adott video kimeneti meghajtó lehetővé teszi azt.
Az MPlayer a RealVideo összes verziójának dekódolását támogatja:Nagyon ajánlott a RealPlayer8 vagy RealONE letöltése, mert az
MPlayer képes ezek könyvtárainak használatával dekódolni
a RealVideo 2.0 vagy 3.0 videókat. Az MPlayer configure script
detektálja a felinstallált RealPlayert. Ha nem sikerül, mondd meg a
configure-nak a helyet a --with-reallibdir
opcióval.
Megj2.: mi nem tudjuk terjeszteni a RealPlayer könyvtárakat, mivel a licenszük megtiltja.
Az XViD az OpenDivX kód továbbfejlesztése. 2001 áprilisában az OpenDivX-et fejlesztő ProjectMayo úgy döntött hogy zárt forrásúvá teszi a codec-et, és DivX4 néven készíti tovább. A nekik "bedolgozók" erre a lépésre úgy döntöttek, hogy majd ők folytatják (nyitottan) az OpenDivX fejlesztését. Ebből lett az XViD.
Előnyei :Hátrányai:
Installálás : jelenleg csak CVS-ből elérhető. Ezek a letöltési
utasítások :
cvs -z3 -d:pserver:anonymous@cvs.xvid.org:/xvid
login
cvs -z3 -d:pserver:anonymous@cvs.xvid.org:/xvid co
xvidcore
cd xvidcore/build/generic
Szerkeszd át a Makefile.linux-ot a gépednek
megfelelően
make -f Makefile.linux
fogod a DivX4linux csomagot és az encore2.h illetve
decore.h file-okat átmásolod belőlük a
/usr/local/include/
könyvtárba
fordítsd újra az MPlayer-t a következő opcióval :
--with-xvidcore=/útvonal/libcore.a
A Sorenson egy, az Apple által kifejlesztett video codec. Jelenleg az első verzióját (SVQ1) tudjuk dekódolni, egy natív dekóderrel.
Előnyei:
Hátrányai:
Installálás: alapállapotban lefordul.
A legfontosabb audio codecek:
2.2.2.1. Szoftveres AC3 dekódolás
Ez az alapértelmezett AC3 audio dekóder.
Az AC3 dekóder 2, 4 vagy 6 hangszórós mixelési képességgel van ellátva. Ha 6 csatornára van állítva, a dekóder külön-külön adja a hangkártyának a csatornákat, ami teljes térhatást eredményez, külső - hwac3 codec-kel használható - AC3 dekóder nélkül.
A -channels
opcióval adható meg a kimeneti csatornák száma. A
-channels 2
stereo mixet eredményez. 4 csatornás mixhez (bal
első, jobb első, bal térhatás és jobb térhatás) a -channels 4
opció használható. Ebben az esetben minden "középső" csatorna egyenlő
mértékben kerül az elülső csatornákra. Végül, a -channels 6
opció ugyanúgy adja ki a csatornákat, ahogy azokat enkódolták - sorrendben :
bal, jobb, bal térhatás, jobb térhatás, közép és LFE.
Az alapértelmezett kimenet a 2 csatornás.
Több mint két csatorna használatához OSS meghajtó kell, és egy olyan hangkártya (illetve meghajtó), ami támogatja is az adott mennyiségű csatornát a SNDCTL_DSP_CHANNELS ioctl-en keresztül. Például a 2001 augusztusinál újabb emu10k1 meghajtó (SB Live kártyákhoz) megfelelő (úgy hallottam hogy a legújabb ALSA CVS-ben is van hozzá támogatás).
2.2.2.2. Hardveres AC3 dekódolás
Kell egy AC3 képes hangkártya, digitális kimenettel (SP/DIF). A kártya meghajtójának megfelelően támogatnia kell az AFMT_AC3 formátumot (ilyenek például az SB Live! és a C-Media kártyák). Kapcsold rá a hardveres AC3 dekódered az SP/DIF kimenetre, és használd az -ac hwac3 opciót. Jelenleg a C-Media kártyákkal és az SB Live! kártyákkal működik, utóbbinál csak az ALSA meghajtóval!
A libmad egy többplatformos MPEG audio dekóder. Ha nem tudod miért lenne szükséged rá, nincs szükséged rá.
Nem kezeli jól a hibás file-okat, és a tekeréssel is problémái vannak.
A támogatást az --enable-mad
configure opcióval lehet
bekapcsolni.
A VIVO file-okban használt audio codec milyensége attól függ hogy VIVO/1.0 avagy VIVO/2.0 fileról beszélünk. Az 1.0-ás fileokban g.723 audio van, a 2.0-ásokban pedig Vivo Siren. Mindkettő támogatott. A g.723/Siren codec innen letölthető.
Az MPlayer majdnem az összes RealAudio codec-et támogatja:
Az installálási procedúra leírásához lásd a RealMedia file formátum fejezetet.
2.2.3. Hogyan használj ismeretlen Win32 codec-et
VfW (Video for Windows) a régi Video API Windowshoz. A codec-jei .DLL vagy (ritkábban) .DRV kiterjesztést kapnak. Ha az MPlayer ezt írja ki az AVI-dra:
UNKNOWN video codec: HFYU (0x55594648)
Ez azt jelenti, hogy az AVI-d egy olyan codec-kel van tömörítve, aminek a fourcc-je HFYU (HFYU = HuffYUV codec, DIV3 = DivX Low Motion, stb...). Most, hogy ezt már tudod, azt kell kitalálni, hogy a Windows melyik DLL-lel játssza le a file-t. Esetünkben a system.ini ezt tartalmazza (többek között):
VIDC.HFYU=huffyuv.dll
Azaz a huffyuv.dll file-ra lesz szükség. Észrevehető, hogy az audio codecek az MSACM előtagot használják :
msacm.l3acm=L3codeca.acm
Ez az MP3 codec. Most, hogy tudod az összes szükséges infót (fourcc, codec file, minta AVI), küldd el kérésed levélben, és töltsd fel eme file-okat FTP-re:
ftp://ftp.mplayerhq.hu/MPlayer/incoming/[codecname]/
DirectShow az újabb Video API, ami történetesen sokkal rosszabb, mint az elődje. Nehezebb dolgod lesz a DirectShow-val, mivel
Na kezdjük átnézni azt az istenverte registry-t...
MEGJ. : ha semmiképp nem találod, próbáld meg úgy, hogy bekapcsolod az összes checkboxot... Lesz egy rakás hamis találat, de talán meglesz az igazi is...
MEGJ. : dobd ki azt az M$ szart.
Most, hogy tudod az összes szükséges infót (fourcc, GUID, codec file, minta AVI), küldd el kérésed levélben, és töltsd fel eme file-okat FTP-re: ftp://ftp.mplayerhq.hu/MPlayer/incoming/[codecname]/