mirror of
https://github.com/mpv-player/mpv
synced 2024-12-16 03:45:23 +00:00
1e91bfefff
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@3175 b3059339-0415-0410-9bf9-f77b7e298cf2
307 lines
13 KiB
HTML
307 lines
13 KiB
HTML
<HTML>
|
|
<BODY BGCOLOR=white>
|
|
|
|
<FONT face="Verdana, Arial, Helvetica, sans-serif" size=2>
|
|
|
|
<P><B><A NAME=2.2>2.2. Támogatott codec-ek</A></B></P>
|
|
|
|
|
|
<P><B><A NAME=2.2.1>2.2.1. Video codec-ek</A></B></P>
|
|
|
|
<P>Lásd <A HREF="http://www.mplayerhq.hu/DOCS/codecs-status.html">http://www.mplayerhq.hu/DOCS/codecs-status.html</A> a teljes, naponta
|
|
generált listához!!!</P>
|
|
|
|
<P>A legfontosabb video codecek:<BR>
|
|
<UL>
|
|
<LI>MPEG1 (VCD) és MPEG2 (DVD) video
|
|
<LI>DivX ;-), OpenDivX (DivX4), 3ivx és más MPEG4 variánsok
|
|
<LI>Windows Media Video 7 (WMV1) és 8 (WMV2) ami .wmv file-okban van
|
|
<LI>Intel Indeo codecek (3.1, 3.2, 4.1, 5.0)
|
|
<LI>MJPEG, ASV2 és más hardware formátumok
|
|
<LI>XAnim codec-ek
|
|
<LI>VIVO</LI>
|
|
</UL></P>
|
|
|
|
<P>Ha van olyan codeced, ami nincs felsorolva vagy támogatva, olvasd el a
|
|
<A HREF="codecs.html#2.2.3">codec importálás</A> fejezetet, amiben le van írva mit kell
|
|
tenned, hogy támogassuk a codeced!</P>
|
|
|
|
|
|
<P><B><A NAME=2.2.1.1>2.2.1.1. DivX4</A></B></P>
|
|
|
|
<P>Ez a fejezet a <A HREF="http://www.projectmayo.com">ProjectMayo</A> DivX4 codec-érő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 <B>MPlayer</B>-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.</P>
|
|
|
|
<P>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. A beállítást lásd lent. A codec egyetlen hátránya, hogy
|
|
jelenleg zárt forráskódú. :(</P>
|
|
|
|
<P>A következő URL-ről lehet letölteni:</P>
|
|
|
|
<P> <A HREF="http://download2.projectmayo.com/dnload/divx4linux/divx4linux-20010718.zip">http://download2.projectmayo.com/dnload/divx4linux/divx4linux-20010718.zip</A></P>
|
|
|
|
<P>Tömörítsd ki, és futtasd a <CODE>./install.sh</CODE> scriptet.</P>
|
|
|
|
<P>Megj: NE felejtsd el hozzáadni az /usr/local/lib-et az /etc/ld.so.conf
|
|
file végére!</P>
|
|
|
|
<P>Az <B>MPlayer</B> 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).</P>
|
|
|
|
<P>A használata kicsit trükkös. Mivel ütközik a régi OpenDivX-szel (az API-ja
|
|
nagyon hasonlít az OpenDivX-éhez), az OpenDivX kód kikapcsolásra kerül,
|
|
és annak drivere is ezt használja.</P>
|
|
|
|
<P>Ez az egész tulajdonképpen annyit takar, hogy két lehetőséget van a
|
|
használatára:</P>
|
|
|
|
<P><TABLE BORDER=0>
|
|
<TD> </TD><TD VALIGN=top><FONT face="Verdana, Arial, Helvetica, sans-serif" size=2>-vc odivx</TD><TD> </TD>
|
|
<TD><FONT face="Verdana, Arial, Helvetica, sans-serif" size=2>a DivX4 codec használata, mint az OpenDivX új verziója.
|
|
Ebben az esetben YV12 képeket produkál a saját bufferében,
|
|
és az <B>MPlayer</B> (libvo) konverziót végez.</TD><TR>
|
|
<TD></TD><TD VALIGN=top><FONT face="Verdana, Arial, Helvetica, sans-serif" size=2>-vc divx4</TD><TD></TD>
|
|
<TD><FONT face="Verdana, Arial, Helvetica, sans-serif" size=2>a DivX4 codec csinál konverziót.
|
|
Ebben az esetben használhatsz YUY2/UYVY módokat is.</TD></TR>
|
|
</TABLE></P>
|
|
|
|
<P>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.</P>
|
|
|
|
<P>Megj: támogat postprocessinget is, de az értékei furcsák: (TODO UPDATE)</P>
|
|
|
|
<P><TABLE BORDER=0>
|
|
<TD> </TD><TD><FONT face="Verdana, Arial, Helvetica, sans-serif" size=2>0</TD><TD> </TD>
|
|
<TD><FONT face="Verdana, Arial, Helvetica, sans-serif" size=2>nincs</TD><TR>
|
|
<TD></TD><TD><FONT face="Verdana, Arial, Helvetica, sans-serif" size=2>10 .. 20</TD>
|
|
<TD></TD><TD><FONT face="Verdana, Arial, Helvetica, sans-serif" size=2>postprocessing, normal (mint a 2-es szint a DirectShow-os DivX codeccel)</TD><TR>
|
|
<TD></TD><TD><FONT face="Verdana, Arial, Helvetica, sans-serif" size=2>30 .. 60</TD>
|
|
<TD></TD><TD><FONT face="Verdana, Arial, Helvetica, sans-serif" size=2>hard prostprocessing, sok CPU-t eszik (mint a 4-es)</TD>
|
|
</TABLE></P>
|
|
|
|
<P><B><A NAME=2.2.1.2>2.2.1.2. ffmpeg DivX/libavcodec</A></B></P>
|
|
|
|
<P>A 0.4.2-es verzióval kezdve az <A HREF="http://ffmpeg.sourceforge.net">ffmpeg</A> tartalmaz egy <B>nyitott forráskódú</B>
|
|
DivX codec-et, amely kompatibilis a hagyományossal. Az <B>MPlayer</B>
|
|
támogatja ezt a codec-et, lehetővé téve hogy <B>DivX/DivX4 filmeket nézzünk nem-x86
|
|
platformokon</B>, méghozzá sokkal gyorsabb dekódolással mint amit a Win32
|
|
codec-ek, és az eredeti DivX4 lehetővé tesz!<BR>
|
|
Az <B>MPlayer</B> fa nem tartalmazza, le kell töltened az <B>FFmpeg</B>
|
|
fát:</P>
|
|
|
|
<P><CODE>
|
|
cvs -d:pserver:anonymous@cvs.ffmpeg.sourceforge.net:/cvsroot/ffmpeg login<BR>
|
|
cvs -d:pserver:anonymous@cvs.ffmpeg.sourceforge.net:/cvsroot/ffmpeg co ffmpeg
|
|
</CODE></P>
|
|
|
|
<P>Megj: <I>legközelebb elég ha belépsz a könyvtárába és 'cvs update'-t írsz.</I></P>
|
|
|
|
<P>Most mozgasd át az újonnan letöltött forrás <B>libavcodec</B> könyvtárát
|
|
az <B>MPlayer</B> fába, hogy így nézzen ki :</P>
|
|
|
|
<P> <CODE>main/libavcodec</CODE></P>
|
|
|
|
<P>Link létrehozása NEM elég, másolni vagy mozgatni kell.</P>
|
|
|
|
<P>Ezután fordítsd le az <B>MPlayer-t</B>. A configure detektálja, ha minden
|
|
rendben. Támogat <B>postprocess-t</B>!</P>
|
|
|
|
<P>A használatához frissítsd a codecs.conf file-odat, és tégy úgy ahogy a
|
|
manpage vagy az example.conf mondja (a -vfm opció).</P>
|
|
|
|
<P>A legnagyobb sebesség eléréséhez ajánlott kivenni az <CODE>ffmpeg12</CODE>
|
|
részt a codecs.conf file-ból (a libmpeg2 kétszer gyorsabb ennél a codecnél),
|
|
és betenni a konfigurációs file-ba a <CODE>vfm=5</CODE> opciót.
|
|
Ekkor az <B>MPlayer</B> az <B>ffdivx/ffodivx</B> codec-eket használja
|
|
a <B>DivX/DivX4</B> file-ok, és a libmpeg2-t az MPEG1/2 file-ok dekódolásához.
|
|
Ezzel és egy Matrox G400-zal még a legnagyobb felbontású DivX/DivX4 filmeket
|
|
is meg lehet nézni képkockavesztés nélkül, egy régi K6/2 500-ason.</P>
|
|
|
|
|
|
<P><B><A NAME=2.2.1.3>2.2.1.3. XAnim codec-ek</B></P>
|
|
|
|
<P>Előszó: (néhány) XAnim codec nem XAnim-mal történő használata <B><I>ILLEGÁLIS</I></B>.
|
|
A <B>TE</B> felelősséged a licensz elolvasása, és betartása. Az <B>MPlayer</B>
|
|
szerzői nem tehetők felelőssé a felhasználó hibái miatt.</P>
|
|
|
|
<P>Nos igen, az <B>MPlayer</B> tudja használni az XAnim codec-eit dekódolásra.
|
|
Nagyon könnyű bekapcsolni őket:</P>
|
|
|
|
<P>
|
|
<UL>
|
|
<LI>töltsd le a használni kívánt codec-eket az <A HREF="http://xanim.va.pubnix.com">XAnim honlapjáról</A>.
|
|
A <B>3ivx</B> codec-et nem találod meg ott, így azt töltsd le a
|
|
<A HREF="http://www.3ivx.com">3ivx honlapjáról</A>.</LI>
|
|
|
|
<LI>a <CODE>--with-xanimlibdir</CODE> opcióval mondd meg a configure-nak hogy
|
|
hol vannak az xanim codec-ek. Alapállapotban a <CODE>/</CODE>
|
|
könyvtárban keresi őket (...) .</LI>
|
|
|
|
<LI>nevezd át a codeceket, hogy így nézzenek ki : <CODE>vid_cvid.xa, vid_h263.xa,
|
|
vid_iv50.xa</CODE></LI>
|
|
|
|
</UL>
|
|
</P>
|
|
|
|
<P>Ezek a 10-es video codec családba tartoznak, így a <CODE>-vfm 10</CODE>
|
|
opcióval megadhatod az <B>MPlayer</B>-nek, hogy ezeket használja, ha
|
|
lehetséges.</P>
|
|
|
|
<P>Az eddig tesztelt codec-ek a következők: <B>Indeo 3.2</B>, <B>4.1</B>, <B>5.0</B>, <B>CVID</B>, <B>3ivX</B>, <B>h263</B>.</P>
|
|
|
|
|
|
<P><B><A NAME=2.2.1.4>2.2.1.4. VIVO video</A></B></P>
|
|
|
|
<P>Az <B>MPlayer</B> 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 <CODE>-vc ffh263</CODE>
|
|
opcióval lehet használni (új libavcodec szükséges !). A 2.0-ás fileokhoz
|
|
szedd le az <CODE>ivvideo.dll</CODE> Win32 DLL file-t <A
|
|
HREF="http://www.mplayerhq.hu/MPlayer/samples/drivers32/ivvideo.dll">innen</A>),
|
|
és installáld a <CODE>/usr/lib/win32</CODE> 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.</P>
|
|
|
|
<P>Olvasd el a <A HREF=#2.2.2.3>VIVO audio codec</A> fejezetet is!</P>
|
|
|
|
|
|
<P><B><A NAME=2.2.1.5>2.2.1.5. MPEG 1/2 video</A></B></P>
|
|
|
|
<P>Az MPEG1 és MPEG2 a natív <B>libmpeg2</B>-vel dekódoljuk. A forrása benne
|
|
van az <B>MPlayer</B>-ben, és természetesen több platformon is használható.
|
|
A hibás MPEG1/2 fileokat úgy játszuk le hogy figyeljük a libmpeg2 mit
|
|
ad vissza, és hiba esetén gyorsan ujraindítjuk a codecet pontosan onnan ahol
|
|
a hiba volt. Nincs sebességvesztés.</P>
|
|
|
|
|
|
<P><B><A NAME=2.2.1.6>2.2.1.6. MS Video1</A></B></P>
|
|
|
|
<P>Ez egy nagyon régi és nagyon rossz codec a Microsoft-tól. Régebben
|
|
ennek dekódolásához az <CODE>msvidc32.dll</CODE> nevű Win32-es codecet
|
|
használtuk, de mostmár van nyitott forrású implementációnk,
|
|
<A HREF="mailto:melanson@pcisys.net">Mike
|
|
Melanson</A>-tól.</P>
|
|
|
|
|
|
<P><B><A NAME=2.2.1.7>2.2.1.7. Cinepak CVID</A></B></P>
|
|
|
|
<P>A CVID-del enkódolt filmek lejátszására a <CODE>vid_cvid.xa</CODE> nevű
|
|
XAnim codec ajánlott, mivel támogat YV12 és YUY2 kimeneteket is, ellenben
|
|
a Win32 codeccel ami csak RGB-t tud.</P>
|
|
|
|
|
|
<P><B><A NAME=2.2.2>2.2.2. Audio codec-ek</A></B></P>
|
|
|
|
<P>A legfontosabb audio codecek:<BR>
|
|
<UL>
|
|
<LI>MPEG layer 2, és layer 3 (MP3) audio (nativ kód, MMX/SSE/3DNow! optimalizációval)
|
|
<LI>AC3 dolby audio (natív kód, SSE/3DNow! optimalizációval)
|
|
<LI>AC3 dekódolás a hangkártya dekóderével
|
|
<LI>Ogg Vorbis audio codec (natív)
|
|
<LI>VoxWare audio (DirectShow-os DLL használatával)
|
|
<LI>alaw, msgsm, pcm és más régi formátumok
|
|
</UL></P>
|
|
|
|
|
|
<P><B><A NAME=2.2.2.1>2.2.2.1. Hardveres AC3 dekódolás</B></P>
|
|
|
|
<P>Kell egy AC3 képes hangkártya, digitális kimenettel (SP/DIF). A kártya
|
|
meghajtójának támogatnia kell az AFMT_AC3 formátumot (ilyen például az
|
|
SB Live!). Kapcsold rá a hardveres AC3 dekódered az SP/DIF kimenetre,
|
|
és használd az -ac hwac3 opciót. Akár működhet is. De nem fog. Tényleg. :)</P>
|
|
|
|
|
|
<P><B><A NAME=2.2.2.2>2.2.2.2. libmad támogatás</A></B></P>
|
|
|
|
<P>A <A HREF="http://mad.sourceforge.net">libmad</A> egy többplatformos MPEG
|
|
audio dekóder. Ha nem tudod miért lenne szükséged rá, nincs szükséged rá.</P>
|
|
|
|
<P>A támogatást az <CODE>--enable-mad</CODE> configure opcióval lehet bekapcsolni.</P>
|
|
|
|
|
|
<P><B><A NAME=2.2.2.3>2.2.2.3. VIVO audio</A></B></P>
|
|
|
|
<P>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 <B>g.723</B> audio van,
|
|
a 2.0-ásokban pedig <B>Vivo Siren</B>. Jelenleg egyikük se támogatott,
|
|
de a g.723 codec <A
|
|
HREF="http://www.mplayerhq.hu/MPlayer/samples/drivers32/vivog723.acm">innen</A> letölthető.</P>
|
|
|
|
|
|
<P><B><A NAME=2.2.3>2.2.3. Hogyan használj ismeretlen Win32 codec-et</A></B></P>
|
|
|
|
<P><B><A NAME=2.2.3.1>2.2.3.1. VfW</A></B></P>
|
|
|
|
<P>VfW (Video for Windows) a régi Video API Windowshoz. A codec-jei .DLL vagy
|
|
(ritkábban) .DRV kiterjesztést kapnak.
|
|
Ha az <B>MPlayer</B> ezt írja ki az AVI-dra:</P>
|
|
|
|
<P> <CODE>UNKNOWN video codec: HFYU (0x55594648)</CODE></P>
|
|
|
|
<P>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):</P>
|
|
|
|
<P> <CODE>VIDC.HFYU=huffyuv.dll</CODE></P>
|
|
|
|
<P>Azaz a huffyuv.dll file-ra lesz szükség. Észrevehető, hogy az audio codecek
|
|
az MSACM előtagot használják :</P>
|
|
|
|
<P> <CODE>msacm.l3acm=L3codeca.acm</CODE></P>
|
|
|
|
|
|
<P>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:</P>
|
|
<P> <CODE>ftp://ftp.mplayerhq.hu/MPlayer/incoming/[codecname]/</CODE></P>
|
|
|
|
|
|
<P><B><A NAME=2.2.3.2>2.2.3.2. DirectShow</A></B></P>
|
|
|
|
<P>DirectShow az újabb Video API, ami történetesen sokkal rosszabb, mint az
|
|
elődje. Nehezebb dolgod lesz a DirectShow-val, mivel
|
|
<UL>
|
|
<LI>a system.ini nem tartalmazza a szükséges információt, ehelyett az egész a
|
|
registryben van :(
|
|
<LI>szükség lesz a codec GUID-jára is.
|
|
</UL></P>
|
|
|
|
<P>Na kezdjük átnézni azt az istenverte registry-t...
|
|
<UL>
|
|
<LI>Indítsd el a 'regedit'-et
|
|
<LI>ctrl-f, kapcsold ki az első két checkbox-ot, és be a harmadikat. Írd be
|
|
a codec fourcc-jét. (pl.: TM20)
|
|
<LI>jó esetben előjön a path és filenév
|
|
(pl. : C:\WINDOWS\SYSTEM\TM20DEC.AX)
|
|
<LI>most hogy ez megvolt, szükség lesz a GUID-ra. Keress újra, de most a
|
|
codec nevére, ne a fourcc-re. A név megnézhető pl. a Media Playerrel, a
|
|
File/Properties/Advanced menüpont alatt. Ha nem, ígyjárás ;) Találd ki.
|
|
(itt : TrueMotion)
|
|
<LI>ha megvan, lesz ott egy FriendlyName, és egy CLSID mező. Írd le azt a
|
|
16 byte-nyi CLSID-et, ez a GUID.
|
|
</UL></P>
|
|
|
|
<P>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...</P>
|
|
<P>MEGJ. : dobd ki azt az M$ szart.</P>
|
|
|
|
|
|
<P>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]/</P>
|
|
|
|
</BODY>
|
|
|
|
</HTML>
|