Támogatott codec-ekVideó codec-ek
Nézd meg a codec státusz táblázatot
a teljes, naponta generált listáért. Elég sok codec elérhető letöltésként a
weboldalunkon. Szedd le őket a
codec oldalról.
A legfontosabb dolgok:
MPEG-1 (VCD) és
MPEG-2 (DVD) videó
natív dekódolók DivX ;-), OpenDivX (DivX4),
DivX 5 (Pro), 3ivX, M$ MPEG-4 v1, v2 és más MPEG4 variánsokhoz
natív dekódoló Windows Media Video 7/8
(WMV1/WMV2), és Win32 DLL dekódoló
a Windows Media Video 9 formátumhoz
(WMV3), mindkettőt a .wmv
fájloknál használjuk
natív Sorenson 1 (SVQ1) dekódoló
natív Sorenson 3 (SVQ3) dekódoló
3ivx v1, v2 dekódoló
Cinepak és Intel Indeo codec (3.1,3.2,4.1,5.0)
MJPEG, AVID, VCR2, ASV2 és más hardveres
formátumok
VIVO 1.0, 2.0, I263 és egyéb H.263(+) variánsok
FLI/FLC
RealVideo 1.0 & 2.0 a
libavcodec-ből és
RealVideo 3.0 & 4.0 codec a RealPlayer
könyvtárak felhasználásával
natív dekódoló HuffYUV-hoz
különböző régi, egyszerű, RLE-szerű formátum
Ha van olyan Win32 codec-ed, ami nincs a listában és még nem támogatott,
olvasd el a codec importálás HOGYAN-t
és segítsd a munkánkat.
DivX4/DivX5
Ez a rész a Project Mayo
DivX4 és DivX5 codec-jeiről tartalmaz információkat. AZ első elérhető
alpha verziójuk az OpenDivX 4.0 alpha 47 és 48 volt. Ezek támogatása
be volt építve az MPlayerbe régen, és
alapértelmezésként be is lett forgatva. Használtuk az utófeldolgozó kódjukat
is az MPEG-1/2 filmek képminőségének opcionális javításához. Most már a
sajátunkat használjuk, minden típushoz.
Ennek a codec-nek az új generációját DivX4-nek hívják és még a hírhedt
DivX codec-kel készített filmek dekódolására is képes! Ráadásként sokkal
gyorsabb, mint a natív Win32 DivX DLL, de lassabb, mint a
libavcodec.
Ezért ellenezzük a dekóderként
történő használatát. Kódoláshoz viszont hasznos. Az egyetlen hátránya
ennek a codec-nek, hogy nem elérhető Nyílt Forráskódú licensszel.
A DivX4 két módban működik:
A codec-et OpenDivX formában használja. Ebben az esetben YV12 képeket készít
a saját bufferében, és az MPlayer színtér konverziót
végez a libvo-n keresztül. (Gyors, javasolt!)
A codec színtér konverzióját használja. Ebben a módban használhatod a
YUY2/UYVY-t is. (LASSÚ)
A módszer általában gyorsabb, amiatt, hogy a
kép adatait YU12 (planar YUV 4:2:0) formátumban viszi át, így sokkal
kisebb sávszélesség kell neki az adatbuszon. A csomagolt YUV módok (YUY2, UYVY)
a módszert használják. Az RGB módoknál a sebesség
ugyan akkora, csak az aktuális színmélységedhez történő alkalmazkodásukban
különböznek.
Ha a vezérlőd támogatja a direkt renderelést, akkor a gyorsabb lehet vagy akár a leggyorsabb is.
A DivX4/5 bináris codec könyvtár letölthető az
avifile-ról vagy
a divx.com címről.
Csomagold ki, futtasd az ./install.sh fájlt root-ként és ne
felejtsd el beírni a /usr/local/lib
könyvtárat az /etc/ld.so.conf fájlba, majd futtatni az
ldconfig parancsot.
A RÉGI OpenDivX függvénykönyvtárnak a CVS verziója is letölthető:
cvs -d:pserver:anonymous@cvs.projectmayo.com:/cvsroot logincvs -d:pserver:anonymous@cvs.projectmayo.com:/cvsroot co divxcore
Ez a fő függvénykönyvtár decore és encore könyvtárakra van osztva, amiket külön
kell fordítani. A decore könyvtárhoz egyszerűen írd be:
cd divxcore/decore/build/linux
make
cp libdivxdecore.so /usr/local/lib
ln -s libdivxdecore.so /usr/local/lib/libdivxdecore.so.0
cp ../../src/decore.h /usr/local/include
Sajnos az encore könyvtárhoz nincs Linuxos Makefile és az MMX optimalizáció csak
Windowson működik. De így is le tudod fordítani,
ezen
Makefile
használatával.
cd ../../../encore/build
mkdir linux
cd linux
cp path/Makefile .
make
cp libdivxencore.so /usr/local/lib
ln -s libdivxencore.so /usr/local/lib/libdivxencore.so.0
cp ../../src/encore.h /usr/local/include
Az MPlayer automatikusan megtalálja a DivX4/DivX5-öt ha az
megfelelően van telepítve, csak fordítsd le úgy, mint máskor. Ha nem találja meg,
nem telepítetted vagy nem állítottad be megfelelően.
FFmpeg/libavcodec
Az FFmpeg egy
nyílt forráskódú codec csomagot tartamaz, ami
képes számos audió és videó codec-et tartalmazó folyam dekódolására. Lenyűgöző
kódolási képességei is vannak, és gyorsabb mint a Win32 codec-ek a DivX.com
DivX4/5 könyvtáraiban!
Rengeteg szép codec-et tartalmaz, különösen fontosak az MPEG-4 variánsok:
DivX3, DivX4, DivX5, Windows Media Video 7/8 (WMV1/WMV2). Nagyon érdekes még a
WMA dekódoló.
A legújabb említésre méltó codec a Sorenson 3
(SVQ3) codec. Ez az első, teljesen nyílt forráskódú implementáció. És még gyorsabb
is, mint az eredeti. Győződj meg róla, hogy ezt használod a bináris codec helyett!
Az összes támogatott codec listájáért látogasd meg az FFmpeg weboldalát.
Támogatott videó
és audió codec-ek.
Ha egy MPlayer kiadást használsz, a
libavcodec
benne van a csomagban, csak fordítsd le a szokásos módon. Ha az
MPlayert CVS-ből szedted, ki kell csomagolnod
a libavcodec-et az FFmpeg
CVS fájából, mivel az FFmpeg kiadások elég ritkán jönnek. A CVS
legtöbbször stabil és több funkciót nyújt. Mindez így hajtható végre:
cvs -d:pserver:anonymous@mplayerhq.hu:/cvsroot/ffmpeg logincvs -z3 -d:pserver:anonymous@mplayerhq.hu:/cvsroot/ffmpeg co -P ffmpeg/libavcodec
Mozgasd át a libavcodec könyvtárat az FFmpeg
forrásából az MPlayer CVS fájának gyökérkönyvtárába.
Valahogy így kell kinéznie:
main/libavcodec
A szimbólikus link készítése nem elég, át kell
másolnod/mozgatnod!
Ha azt szeretnéd, hogy a libavcodec
mindig frissüljön, amikor frissíted az MPlayer CVS-t,
írd be a következő sort a main/CVS/Entries fájlba:
D/libavcodec////
Fordíts. Ha baj van, a configure megtalálja még a fordítás előtt.
Az CVS-ből származó MPlayer tartalmaz egy
libavcodec alkönyvtárat, de ebben
nincs bent a
libavcodec forrása!
Kövesd a fenti lépéseket a függvénykönyvtár forrásának beszerzéséhez.
Az FFmpeg-gel és a Matrox G400-as kártyámmal még a legnagyobb felbontású DivX
filmeket is képkockák eldobása nélkül tudom nézni a K6-2 500 gépemen.
XAnim codec-ek
Hadd figyelmeztessünk, hogy az XAnim bináris codec-jeit egy kis szöveggel együtt
csomagolják, amely egy legális szoftver licensz, és amely más megszorítások mellett
megtiltja a a felhasználónak, hogy a codec-eket az XAnim-on
kívül más programmal használja. Ennek ellenére az XAnim szerzői még
senki ellen sem tettek jogi lépéseket codec-használat ügyben.
TELEPÍTÉS ÉS HASZNÁLAT
Az MPlayer képes az XAnim codec-ek dekódoláshoz
történő felhasználására. Kövesd az utasításokat a bekapcsolásukhoz:
Töltsd le a kívánt codec-eket az
XAnim oldaláról.
A 3ivx codec nincs ott, az a
3ivx oldalon van.
VAGY töltsd le a codec csomagot a
codec oldalunkról
Használd a kapcsolót, amivel
megmondhatod a configure-nak, hogy hol találhatóak az
XAnim codec-ek. Alapértelmezésben a
/usr/local/lib/codecs,
/usr/local/lib/xanim/mods,
/usr/lib/xanim/mods és
/usr/lib/xanim könyvtárakban keresi.
Alternatívaként az
XANIM_MOD_DIR környezeti változó beállításával is
megadhatod az XAnim codec-ek könyvtárát.
Nevezd át/szimlinkelt a fájlokat, szedd ki az architektúra részeket, így ilyen
fájlneveket kapsz, mint ezek: vid_cvid.xa,
vid_h263.xa, vid_iv50.xa
Az XAnim egy videó codec család, amelynek a használatát, ha az lehetséges,
a kapcsolóval írhatod elő az MPlayernek.
Letesztelt codec-ek: Indeo 3.2, 4.1, 5.0, CVID, 3ivX,
H.263.VIVO videó
Az MPlayer le tudja játszani a Vivo (1.0 és 2.0) videókat. Az
1.0-ás fájlokhoz leginkább az FFmpeg H.263 dekódere illik, ezt a
kapcsolóval tudod használni. A 2.0-ás fájlokhoz használd
a Win32 DLL-t a kapcsoló segítségével. Ha nem adsz meg
kapcsolót a parancsorban, az MPlayer automatikusan
kiválasztja a legjobb codec-et.
MPEG-1/2 videó
Az MPEG-1 és MPEG-2 a libmpeg2 többplatformos,
natív függvénykönyvtár segítségével kerülnek dekódolásra, aminek a forrása benne van
az MPlayerben. Le tudjuk kezelni a hibás MPEG-1/2
videó fájlokat is a Signal 11 elkapásával
(szegmentálási hiba), és a codec gyors
újrainicializálásával, pontosan onnan folytatva, ahol a hiba keletkezett. Ennek
a javító technikának nincs mérhető sebességvesztesége.
MS Video1, Cinepak CVID, és egyéb régi codec-ek
Az MPlayer a legtöbb régi codec-kel készült AVI és MOV
fájlt le tudja játszani. Régen bináris Win32 codec-ekkel voltak dekódolva, de most
már natív codec-jeink vannak a legtöbbhöz a
libavcodec-nek
hála.
RealVideo
Az MPlayer támogatja a RealVideo összes verziójának
dekódolását:
RealVideo 1.0, 2.0 (fourcc RV10, RV20) - kódolás/dekódolás támogatása
libavcodec-kel
RealVideo 3.0, 4.0 (fourcc RV30, RV40) - dekódolás támogatása
RealPlayer könyvtárakkal
Töltsd le a Real codec-eket a
http://www.mplayerhq.hu/MPlayer/releases/codecs/
könyvtárból és csomagold ki a
/usr/local/lib/codecs könyvtárba.
Ha máshol akarod tárolni őket, add meg a
kapcsolót a configure-nak.
A RealPlayer könyvtárak jelenleg
csak Linux, FreeBSD, NetBSD és Cygwin alatt működnek
x86-on, Alpha-n és PowerPC-n (a Linux/Alpha és Linux/PowerPC tesztelve lett) és Mac OS X-szel.
XviD
Az XviD egy OpenDivX codec-ből kivállt fejlesztés.
Akkor történt, amikor a ProjectMayo az OpenDivX-et zárt forráskódúvá tette
DivX4 (most DivX5) néven, felbosszantva így a nem-ProjectMayo-s fejlesztőket, akik az OpenDivX-en
dolgoztak, akik elindították az XviD-et. Így mindkét projektnek azonosak a gyökereik.
ELŐNYÖK
nyílt forráskódú
az API-ja kompatibilis a DivX4-gyel, így könnyű a támogatása
2-lépéses kódolás támogatása
szép kódolási minőség, a DivX4-nél nagyobb sebesség (fordítás közben a saját gépedhez
optimalizálhatod)
HÁTRÁNYOK
jelenleg nem tudja megfelelően dekódolni az összes
DivX/DivX4 fájlt (nem baj, mivel a
libavcodec
le tudja játszani őket)
fejlesztés alatt áll
XVID CVS TELEPÍTÉSE
Jelenleg csak CVS-ből beszerezhető. Íme a letöltés és a telepítés lépései
(legalább 2.50-es autoconf, automake és libtool szükséges):
cvs -z3 -d:pserver:anonymous@cvs.xvid.org:/xvid logincvs -z3 -d:pserver:anonymous@cvs.xvid.org:/xvid co xvidcorecd xvidcore/build/generic./bootstrap.sh./configure
Meg kell adnod pár kapcsolót (tanulmányozd a
./configure --help kimenetét).
make && make install
Ha megadtad a kapcsolót,
másold át a ../../src/divx4.h fájlt a
/usr/local/include/könyvtárba.
Fordítsd újra az MPlayert a
kapcsolókkal.
Sorenson
A Sorenson egy Sorenson Media által kifejlesztett videó codec, amit az Apple-nek licenszelnek,
aki a QuickTime Player-ével terjeszti. Képesek vagyunk
a Sorenson videó fájlok összes verziójának dekódolására a következő dekódolókkal:
Sorenson Video v1 (fourcc SVQ1) - a dekódolást
natív codec biztosítja
(libavcodec)
Sorenson Video v3 (fourcc SVQ3) - a dekódolást
natív codec biztosítja
(libavcodec)
MPLAYER FORDÍTÁSA QUICKTIME KÖNYVTÁRAK TÁMOGATÁSÁVALJelenleg csak a 32-bit-es Intel platformok támogatottak.Töltsd le az MPlayer CVS-tTöltsd le a QuickTime DLL csomagot:
Csomagold ki a QuickTime DLL-eket a Win32 codec könyvtáradba
(alapértelmezett: /usr/local/lib/codecs/)
fordítsd le az MPlayertAudió codec-ekA legfontosabb audió codec-ek:
MPEG layer 1/2/3 (MP1/2/3) audió (natív
kód, MMX/SSE/3DNow! optimalizációval)
Windows Media Audio 7 és 8 (ismert mint WMAv1 és WMAv2) (natív kód,
libavcodec-kel)
Windows Media Audio 9 (WMAv3) (DMO DLL-lel)
AC3 Dolby audió (natív kód,
MMX/SSE/3DNow! optimalizációval)
hangkártyán áteresztő AC3
AAC
Ogg Vorbis audió codec (natív függvénykönyvtár)
RealAudio: DNET (alacsony bitrátájú AC3), Cook, Sipro és ATRAC3
QuickTime: Qualcomm és QDesign audió codec-ek
VIVO audió (g723, Vivo Siren)
Voxware audió (DirectShow DLL használatával)
alaw és ulaw, számos gsm, adpcm és pcm formátum és más, egyszerű, régi
audió codec
Szoftveres AC3 dekódolás
Ez az alapértelmezésben használt dekódoló az AC3 audiójú fájlokhoz.
Az AC3 dekódoló 2, 4 vagy 6 csatornás hangkimenet keverést tud csinálni.
Ha 6 hangszóróra van beállítva, ez a dekódoló külön kimenetet biztosít hang
vezérlő összes AC3 csatornájának, létrehozva így a teljes "surround
sound" hatást, a hwac3 codec-hez szükséges külső AC3 dekódoló nélkül.
Használd a kapcsolót a kimeneti csatornák számának
megadásához. A sztereo downmix-et produkál. Egy 4
csatornás downmixhez (bal elülső, jobb elülső, bal Surround és jobb Surround
kimenet) használd a kapcsolót. Ebben az esetben,
bármelyik középső csatorna egyenlően lesz elkeverve az elülső csatornákhoz.
A kapcsoló minden AC3 csatornát úgy ad ki, ahogy
azok kódolva lettek - bal, jobb, bal Surround, jobb Surround, Center és LFE
sorrendben.
A csatornák alapértelmezett száma 2.
2-nél több kimeneti csatorna használatához OSS-t kell használnod, és egy olyan
hangkártyával kell rendelkezned, ami támogatja a megfelelő számú kimeneti
csatornát az SNDCTL_DSP_CHANNELS ioctl-en keresztül. Például az emu10k1
2001. augusztus vagy későbbi verziói megfelelő vezérlők (a Soundblaster Live!
kártyák használják, de az ALSA CVS is valószínűleg működik).
Hardveres AC3 dekódolás
AC3-at támogató hangkártyára lesz szükséges, digitális kimenettel (S/PDIF). A
kártya vezérlőjének megfelelően támogatnia kell az AFMT_AC3 formátumot
(a C-Media támogatja). Csatlakoztasd az AC3 dekódolódat az S/PDIF kimenethez és
használd a kapcsolót. Még kisérleti kód, de működik
C-Media kártyákon és Soundblaster Live! + ALSA (de OSS-en nem) vezérlővel,
valamint DXR3/Hollywood+ MPEG dekódoló kártyákon.
libmad támogatás
A libmad egy többplatformos,
csak egész (belső 24bit-es PCM) alapú MPEG audió dekódoló függvénykönyvtár.
Nem kezeli jól a sérült fájlokat, és néha problémái vannak a kereséssel, de
jobb a teljesítménye FPU nélküli rendszereken
(mint pl. az ARM), mint az mp3lib-é.
A támogatás bekapcsolásához add meg a configure
kapcsolót.
VIVO audió
A VIVO fájlokban használt audió codec attól függ, hogy VIVO/1.0 vagy
VIVO/2.0 fájlról van-e szó. A VIVO/1.0 fájlok g.723 audiót
tartalmaznak, a VIVO/2.0 fájlok pedig Vivo Siren audiót.
Mindkettő támogatott.
RealAudio
Az MPlayer majdnem minden RealAudio verziót támogat:
RealAudio DNET - a dekódolást a
liba52 biztosítja
RealAudio Cook/Sipro/ATRAC3 - a dekódolást a
RealPlayer könyvtárak biztosítják
A RealPlayer könyvtárak telepítési útmutatóját a
RealVideo részben találod.
QDesign codec-ek
QDesign audió folyamok (fourcc:QDMC, QDM2) MOV/QT fájlokban
találhatóak. Ezen codec mindkét verziója dekódolható a QuickTime
könyvtárakkal. A telepítési útmutatóhoz olvasd el a
Sorenson videó codec részt.
Qualcomm codec-ek
Qualcomm audio streams (fourcc:Qclp) MOV/QT fájlokban
találhatóak. Dekódolhatóak a QuickTime könyvtárakkal.
A telepítési útmutatóhoz olvasd el a
Sorenson videó codec részt.
AAC codec
Az AAC (Advanced Audio Coding) egy audió codec, amit néha MOV és MP4 fájlokban
található. Egy FAAD nevű, nyílt forráskódú dekódoló elérhető a
címen.
Az MPlayer tartalmazza a libfaad 2.0RC1-et, nem szükséges
külön beszerezni.
Ha gcc 3.2-t használsz, ami nem tudja lefordítani a belső FAAD forrásunkat vagy valami
más okból a külső függvénykönyvtárat szeretnéd használni, töltsd le a
letöltési oldalról
és add meg a kapcsolót a configure-nak.
Nem kell a teljes faad2 az AAC fájlok dekódolásához, a libfaad elég. Így készítsd el:
cd faad2/
chmod +x bootstrap
./bootstrap
./configure
cd libfaad
make
make install
Binárisok nem tölthetőek le az audiocoding.com-ról, de (apt-)get-tel feltelepítheted
Debian csomagokból Christian Marillat weboldaláról,
vagy Mandrake RPM-ből a P.L.F-ről, RedHat RPM-ből
pedig a Grey Sector-tól.
Win32 codec importálási HOGYANVFW codec-ek
A VFW (Video for Windows) egy régi Videó API Windowshoz. A codecjei
.DLL vagy (ritkán) .DRV kiterjesztésűek
voltak. Ha az MPlayernek nem sikerül lejátszani az AVI
fájlodat egy ilyesmi üzenettel:
UNKNOWN video codec: HFYU (0x55594648)
Ez azt jelenti, hogy az AVI fájlod egy olyan codec-kel lett elkódolva, aminek
HFYU a fourcc-je (HFYU = HuffYUV codec, DIV3 = DivX Low Motion, stb.). Most, hogy
már tudod ezt, meg kell keresned, melyik DLL-t tölti be a Windows ennek a fájlnak
a lejátszásához. A mi esetünkben, a system.ini tartalmazza
ezt az információt ebben a sorban:
VIDC.HFYU=huffyuv.dll
Szükséged lesz a huffyuv.dll fájlra. Figyelj rá, hogy az
audio codec-ek MSACM prefix-szel vannak megadva:
msacm.l3acm=L3codeca.acm
Ez az MP3 codec. Most már minden szükséges információval rendelkezel
(fourcc, codec fájl, példa AVI), küldd be a codec támogatási kérésedet egy
levélben és töltsd fel ezket a fájlokat az FTP-re:
ftp://ftp.mplayerhq.hu/MPlayer/incoming/[codecneve]/
Windows NT/2000/XP alatt a regisztrációs adatbázisban keresd ezeket
az információkat, pl. keress rá a "VIDC.HFYU"-ra. Hogy ezt hogy tudod
megcsinálni, nézd meg a régi DirectShow módszert lejebb.
DirectShow codec-ek
A DirectShow egy újabb Videó API, ami még rosszabb, mint az elődje.
A dolgok nehezebben mennek a DirectShow-val, mivel
a system.ini nem tartalmazza a megfelelő információkat,
azok a regisztrációs adatbázisban vannak és
szükségünk van a codec GUID-jére.
Új módszer:
A Microsoft GraphEdit használatával (gyors)
Szedd le a GraphEdit-et a DirectX SDK-ból vagy a
doom9-ről.
Indítsd el a graphedit.exe-t.
A menüben válaszd ki a Graph -> Insert Filters menüpontot.
Nyisd ki a DirectShow Filters elemeit.
Válaszd ki a megfelelő codec nevet és nyisd ki.
A DisplayName bejegyzésben nézd meg a francia
zárójelek között lévő karakterláncot és írd le (öt vonallal elválasztott
blokk, a GUID).
A codec bináris a Filename bejegyzésben megadott
fájl.
Ha nincs Filename és a
DisplayName olyasmit tartalmaz, hogy
device:dmo, akkor ez egy DMO-Codec.
Régi módszer:
Végy egy nagy levegőt és kezdj keresni a regisztrációs adatbázisban...
indítsd el a regedit-et.
Nyomd meg a Ctrl+F, kapcsold ki az első
két kijelölő dobozd és engedélyezd a harmadikat. Írd be a codec fourcc-jét (pl.
TM20).
Egy mezőt kell látnod, ami az elérési utat és a fájl nevét tartalmazza (pl.
C:\WINDOWS\SYSTEM\TM20DEC.AX).
Most, hogy megvan a fájl, a GUID-t kell megkeresni. Próbáld újra a keresést, de
most a codec nevére keress, ne a fourcc-re. A nevét a Media Player kiírja a
fájl lejátszása közben, ha megnézed a
File -> Properties ->
Advanced fület.
Ha mégsem, akkor így jártál. Próbáld meg kitalálni (pl. keress rá a TrueMotion-ra).
Ha megvan a GUID, látnod kell egy FriendlyName és egy
CLSID mezőt. Írd le a 16 bájtos CLSID-t, ez
a GUID, ami kell.
Ha nem sikerült a keresés, próbáld meg bekapcsolni az összes kijelölő dobozt. Ekkor
kaphatsz hamis találatokat, de talán szerencséd lesz...
Most, hogy már megvan minden szükséges információ (fourcc, GUID, codec fájl,
példa AVI), küldd el a codec támogatási kérelmedet levélben és töltsd fel a fájlokat
az FTP-re:
ftp://ftp.mplayerhq.hu/MPlayer/incoming/[codecneve]/
Ha saját magad szeretnél beépíteni egy codec-et, olvasd el a
DOCS/tech/codecs.conf.txt
fájlt.