mpv/DOCS/Hungarian/codecs.html

227 lines
9.6 KiB
HTML

<HTML>
<BODY BGCOLOR=white>
<FONT face="Verdana, Arial, Helvetica, sans-serif" size=2>
<P><B><A NAME=2.1>2.1. Video formátumok, audio és video codecek</A></B></P>
<P><B><A NAME=2.1.1>2.1.1. Támogatott formátumok</A></B></P>
<P><B>MPlayer</B> közvetlenül tudja olvasni/lejátszani a következőket:<BR>
<Ul>
<LI> VCD (Video CD) közvetlen a CD-ROM-ról, vagy image file-ból
<LI> DVD, közvetlen a lemezről, libdvdread-et használva dekódoláshoz
<LI> MPEG 1/2 System Stream (PS/PES/VOB) és Elementary Stream (ES) formátumok
<LI> RIFF AVI formátum
<LI> ASF/WMV 1.0 formátum
<LI> file olvasása, stdin-ről is, továbbá hálózatról, HTTP-n keresztül
</UL></P>
<P>Megj.: quicktime-vel és realmedia-val kapcsolatban lásd a FAQ-t !</P>
<P><B><A NAME=2.1.2>2.1.2. Támogatott audio és 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) é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
</UL></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>Ha van olyan codeced, ami nincs felsorolva vagy támogatva, olvasd el a
<A HREF="codecs.html#2.1.4">2.1.4-es fejezetet</A> amiben le van írva, mit kell
tenned, hogy támogassuk a codeced!</P>
<P><B><A NAME=2.1.2.1>2.1.2.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. A postprocessing kódját használjuk, hogy javítsunk az
MPEG1/2 filmek képminőségén.</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>&nbsp;&nbsp;&nbsp;&nbsp;<A HREF="http://download2.projectmayo.com/dnload/divx4linux/divx4linux-20010718.zip">http://download2.projectmayo.com/dnload/divx4linux/divx4linux-20010718.zip</A></P>
<P>Jelenleg nem tartalmaz automatikus installáló programot, ígyhát kézzel kell
feltenni, PONTOSAN úgy ahogy itt áll. Először ki kell tömöríteni, majd
be kell másolni:</P>
<P><CODE>cp libdivxdecore.so.0.0.0 /usr/local/lib/<BR>
ln -s /usr/local/lib/libdivxdecore.so.0.0.0 /usr/local/lib/libdivxdecore.so.0<BR>
ln -s /usr/local/lib/libdivxdecore.so.0 /usr/local/lib/libdivxdecore.so<BR>
ldconfig<BR>
cp decore.h /usr/local/include/</CODE></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>&nbsp;&nbsp;</TD><TD VALIGN=top><FONT face="Verdana, Arial, Helvetica, sans-serif" size=2>-vc odivx</TD><TD>&nbsp;&nbsp;</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&nbsp;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:</P>
<P><TABLE BORDER=0>
<TD>&nbsp;&nbsp;</TD><TD><FONT face="Verdana, Arial, Helvetica, sans-serif" size=2>0</TD><TD>&nbsp;&nbsp;</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.1.2.2>2.1.2.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 filmeket nézzünk nem-x86
platformokon!</B> 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>&nbsp;&nbsp;&nbsp;&nbsp;<CODE>main/libavcodec</CODE></P>
<P>Link létrehozása NEM elég, másolni vagy mozgatni kell.</P>
<P>./configure detektálja, ha minden rendben. Jelenleg nem támogat
postprocessinget, és optimalizálás alatt van (gyorsabb mint a DirectShow-os
DivX codec).</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><B><A NAME=2.1.2.3>2.1.2.3. 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.1.4>2.1.4. Hogyan használj ismeretlen Win32 codec-et</A></B></P>
<P><B><A NAME=2.1.4.1>2.1.4.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>&nbsp;&nbsp;&nbsp;&nbsp;<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>&nbsp;&nbsp;&nbsp;&nbsp;<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>&nbsp;&nbsp;&nbsp;&nbsp;<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>&nbsp;&nbsp;&nbsp;&nbsp;<CODE>ftp://ftp.mplayerhq.hu/MPlayer/incoming/[codecname]/</CODE></P>
<P><B><A NAME=2.1.4.2>2.1.4.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>