mirror of
https://github.com/mpv-player/mpv
synced 2024-12-23 23:32:26 +00:00
b2f880a028
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@10046 b3059339-0415-0410-9bf9-f77b7e298cf2
568 lines
24 KiB
HTML
568 lines
24 KiB
HTML
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
|
|
<HTML>
|
|
|
|
<HEAD>
|
|
<TITLE>Kodeki - MPlayer - Odtwarzacz Filmów dla Linuksa</TITLE>
|
|
<LINK REL="stylesheet" TYPE="text/css" HREF="../default.css">
|
|
<META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=iso-8859-2">
|
|
</HEAD>
|
|
|
|
<BODY>
|
|
|
|
|
|
<H2><A NAME="codecs">2.2 Wspierane kodeki</A></H2>
|
|
|
|
|
|
<H3><A NAME="video_codecs">2.2.1 Kodeki wideo</A></H3>
|
|
|
|
<P>Zobacz <A HREF="http://www.mplayerhq.hu/DOCS/codecs-status.html">tabelê statusu kodeków</A>
|
|
po kompletn±, codziennie tworzon± listê.</P>
|
|
|
|
<P>Najwa¿niejsze z nich to:</P>
|
|
<UL>
|
|
<LI><B>MPEG1</B> (<B>VCD</B>) i <B>MPEG2</B> (<B>DVD</B>) wideo</LI>
|
|
<LI>natywny dekoder dla <B>DivX ;-)</B>, <B>OpenDivX</B>, <B>DivX4</B>, <B>
|
|
DivX5</B>, <B>M$ MPEG4</B> v1, v2 i inne warianty MPEG4</LI>
|
|
<LI>natywny dekoder dla <B>Windows Media Video 7/8</B> (<B>WMV1/WMV2</B>), i
|
|
dekoder Win32 DLL dla <B>Windows Media Video 9</B> (<B>WMV3</B>), oba
|
|
u¿ywane w plikach .wmv</LI>
|
|
<LI>natywny dekoder <B>Sorenson 1 (SVQ1)</B></LI>
|
|
<LI>dekoder Win32/QT <B>Sorenson 3 (SVQ3)</B></LI>
|
|
<LI>dekoder <B>3ivx</B> v1, v2</LI>
|
|
<LI>kodeki Cinepak i <B>Intel Indeo</B> (3.1, 3.2, 4.1, 5.0)</LI>
|
|
<LI><B>MJPEG</B>, AVID, VCR2, ASV2 i inne sprzêtowe formaty</LI>
|
|
<LI>VIVO 1.0, 2.0, I263 i inne warianty h263(+)</LI>
|
|
<LI>FLI/FLC</LI>
|
|
<LI>kodek <B>RealVideo 1.0</B> libavcodec, i kodeki <B>RealVideo 2.0</B>,
|
|
<B>3.0</B> i <B>4.0</B> u¿ywaj±ce bibliotek RealPlayer</LI>
|
|
<LI>natywny dekoder dla HuffYUV</LI>
|
|
<LI>ró¿ne stare, proste formaty, jak np. RLE</LI>
|
|
</UL>
|
|
|
|
<P>Je¿eli masz kodeka Win32 nie wyszczególnionego tutaj, który nie jest jeszcze wspierany,
|
|
prosimy, przeczytaj <A HREF="#importing">HOWTO importowania kodeków</A> i pomó¿ nam dodaæ
|
|
obs³ugê dla niego.</P>
|
|
|
|
|
|
<H4><A NAME="divx">2.2.1.1 DivX4/DivX5</A></H4>
|
|
|
|
</P>Ta sekcja zawiera informacje o kodekach DivX4 i DivX5 z
|
|
<A HREF="http://www.projectmayo.com">Project Mayo</A>.
|
|
Ich pierwsz± dostêpn± wersj± alfa by³ OpenDivX 4.0 alfa 47 oraz 48.
|
|
Wsparcie dla nich zosta³o do³±czone w MPlayerze, i jest kompilowane
|
|
standardowo. Dawniej u¿ywali¶my kodu postprocessing z tych kodeków do
|
|
opcjonalnego zwiêkszenia jako¶ci filmów MPEG1/2. Teraz ju¿ stosujemy w³asny.</P>
|
|
|
|
<P>Nowa generacja tych kodeków potrafi nawet dekodowaæ filmy zrobione
|
|
z u¿yciem nies³awnych kodeków DivX! W dodatku, s± one du¿o szybsze,
|
|
ni¿ natywne DLLe Win32 DivX, ale wolniejsze ni¿ libavcodec. W zwi±zku z tym,
|
|
u¿ywanie ich jako kodera jest <B>ODRADZANE</B>. Jednak, da siê nimi kodowaæ.
|
|
Jedn± wad± jest to, ¿e nie s± one dostêpne na licencji Open Source.</P>
|
|
|
|
<P>DivX4Linux pracuje w dwóch trybach:</P>
|
|
|
|
<DL>
|
|
<DT><CODE>-vc odivx</CODE></DT>
|
|
<DD>U¿ycie kodeka sposobem OpenDivX. W tym przypadku produkuje on
|
|
we w³asnym buforze obrazy YV12, a MPlayer dokonuje konwersji
|
|
przestrzeni kolorów przy pomocy libvo. (<B>Szybkie, zalecane!</B>)</DD>
|
|
|
|
<DT><CODE>-vc divx4</CODE></DT>
|
|
<DD>U¿ycie konwersji przestrzeni kolorów z kodeka divx4. W tym
|
|
trybie mo¿na u¿yæ równie¿ YUY2/UYVY. (<B>POWOLNE</B>)</DD>
|
|
</DL>
|
|
|
|
<P>Metoda <CODE>-vc odivx</CODE>Metoda 'odivx' jest zazwyczaj szybsza, ze
|
|
wzglêdu na fakt, ¿e przenosi ona dane obrazu do formatu YV12 (planar YUV 4:2:0),
|
|
a to wymaga du¿o mniejszego pasma przenoszenia na szynie. W trybie
|
|
spakowanego YUV (YUY2, UYVY) stosuj metodê <CODE>-vc divx4</CODE>.
|
|
W trybie RGB prêdko¶ci s± takie same, ró¿ni± siê byæ mo¿e tylko
|
|
w odniesieniu do aktualnej g³êbi kolorów.</P>
|
|
|
|
<P><B>Informacja:</B> Je¿eli twój sterownik <CODE>-vo</CODE> wspiera bezpo¶rednie renderowanie,
|
|
wtedy <CODE>-vc divx4</CODE> mo¿e byæ szybszy lub byæ najszybszym rozwi±zaniem.</P>
|
|
|
|
<P>Kodek mo¿esz pobraæ z
|
|
<P>Binarne biblioteki kodeka Divx4/5 mo¿esz pobraæ z
|
|
<A HREF="http://avifile.sourceforge.net">avifile</A> lub
|
|
<A HREF="http://www.divx.com">divx.com</A>.
|
|
Rozpakuj go, jako root uruchom <CODE>./install.sh</CODE> i nie zapomnij dodaæ
|
|
<CODE>/usr/local/lib</CODE> do twojego <CODE>/etc/ld.so.conf</CODE> i uruchom
|
|
<CODE>ldconfig</CODE>.</P>
|
|
|
|
<P>Pobierz wersjê CVS STARYCH bibliotek j±dra OpenDivx w taki sposób (lub podobny):</P>
|
|
|
|
<OL>
|
|
<LI><CODE>cvs -d:pserver:anonymous@cvs.projectmayo.com:/cvsroot login</CODE></LI>
|
|
<LI><CODE>cvs -d:pserver:anonymous@cvs.projectmayo.com:/cvsroot co divxcore</CODE></LI>
|
|
<LI>Ta biblioteka j±dra jest podzielona na bibliotekê dekoduj±c± i koduj±c±
|
|
wiêc musz± byæ kompilowane odzielnie. Dla biblioteki dekoduj±cej, po prostu podaj
|
|
<PRE>
|
|
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
|
|
</PRE>
|
|
</LI>
|
|
<LI>Niestety, dla biblioteki koduj±cej nie ma dostêpnego Linux Makefile, a
|
|
optymalizacja kodu dla MMX dzia³a tylko w Windowsie. Nadal mo¿esz skompilowaæ j±,
|
|
u¿ywaj±c tego
|
|
<A HREF="ftp://ftp.mplayerhq.hu/MPlayer/contrib/divx-mf/Makefile">Makefile</A>.
|
|
<PRE>
|
|
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
|
|
</PRE>
|
|
</LI>
|
|
</OL>
|
|
|
|
<P>MPlayer automatycznie wykrywa, czy DivX4/DivX5 jest poprawnie zainstalowany,
|
|
po prostu skompilowaæ tak jak zwykle. Je¿eli nie zosta³ wykryty, nie zainstalowa³e¶
|
|
go, lub skonfiguruj go poprawnie.</P>
|
|
|
|
|
|
<H4><A NAME="libavcodec">2.2.1.2 FFmpeg DivX/libavcodec</A></H4>
|
|
|
|
<P><A HREF="http://ffmpeg.sourceforge.net">FFmpeg</A> zawiera pakiet
|
|
kodeków <B>open source</B>, które s± zdolne dekodowaæ strumienie
|
|
wideo skodowane do
|
|
H263/MJPEG/RV10/DivX3/DivX4/DivX5/MP41/MP42/WMV1/WMV2/HuffYUV
|
|
i kodeki audio WMA (Windows Media Audio). Nie do¶æ, ¿e niektórymi z nich mo¿esz
|
|
kodowaæ, oferuj± równie¿ wy¿sz± prêdko¶æ ni¿ kodeki Win32
|
|
lub biblioteki DivX.com DivX4/5!</P>
|
|
|
|
<P>Zawiera wiele niez³ych kodeków, z czego najistotniejszymi s± warianty MPEG4:
|
|
DivX3, DivX4, DivX5, Windows Media Video 7 (WMV1). Ponad to, jednym z bardziej
|
|
interesuj±cych jest dekoder WMA.</P>
|
|
|
|
<P>Je¿eli u¿ywasz wydania MPlayera (nie CVS) masz libavcodec i pakiecie, po prostu
|
|
skompiluj go jak zazwyczaj. Je¿eli u¿ywasz MPlayera z CVS musisz wydobyæ
|
|
libavcodec z drzewa CVS FFmpeg, poniewa¿ wydanie FFmpeg <B>nie</B>
|
|
dzia³a z MPlayerem. By to zrobiæ, wykonaj:</P>
|
|
|
|
<OL>
|
|
<LI><CODE>cvs -d:pserver:anonymous@cvs.ffmpeg.sourceforge.net:/cvsroot/ffmpeg login</CODE></LI>
|
|
<LI><CODE>cvs -d:pserver:anonymous@cvs.ffmpeg.sourceforge.net:/cvsroot/ffmpeg co ffmpeg</CODE></LI>
|
|
<LI>Przenie¶ katalog <CODE>libavcodec</CODE> ze ¼róde³ FFmpeg sources do
|
|
g³ównego katalogu drzewa CVS MPlayera. To powinno wygl±daæ mniej wiêcej tak:
|
|
<P> <CODE>main/libavcodec</CODE></P>
|
|
Linki symboliczne <B>nie s±</B> wystarczaj±ce, musisz go skopiowaæ lub przenie¶æ!</LI>
|
|
<LI>Kompilacja. Configure powinno wykryæ problemy, przed kompilacj±.</LI>
|
|
</OL>
|
|
|
|
<P><B>Informacja:</B> MPlayer z CVS zawiera podkatalog libavcodec, ale
|
|
<B>nie</B> zawiera kodu libavcodec!
|
|
Musisz pod±¿aæ za powy¿szymi krokami, by uzyskaæ kod tej biblioteki.</P>
|
|
|
|
<P>Z FFmpeg i moim Matroxem G400, Mogê ogl±daæ nawet filmy DivX w wysokiej rozdzielczo¶ci
|
|
DivX bez gubienia klatek na moim K6/2 500.</P>
|
|
|
|
|
|
<H4><A NAME="xanim">2.2.1.3 Kodeki XAnim</A></H4>
|
|
|
|
<H4>PRZEDMOWA</H4>
|
|
<P>
|
|
Musisz wiedzieæ, ¿e binarne kodeki XAnim s± pakietami czê¶ciowo objêtymi
|
|
prawem w³asno¶ci, po to, by mog³y byæ legalnie rozprowadzane, zawieraj±
|
|
równie¿ licencjê która, zawieraj±c inne restrykcje, zabrania u¿ytkownikom
|
|
u¿ywanie kodeków wraz z programami innymi ni¿ XAnim.
|
|
Jednak autorzy XAnim nie prowadz± ju¿ ¿adnych dzia³añ prawnych
|
|
w sprawach zwi±zanych z kodekami.
|
|
</P>
|
|
|
|
<H4>INSTALACJA I U¯YWANIE</H4>
|
|
<P>MPlayer potrafi u¿ywaæ kodeków XAnim do kodowania. Pod±¿aj za poni¿szymi
|
|
instrukcjami, by je w³±czyæ:</P>
|
|
|
|
<OL>
|
|
<LI>Pobierz kodeki których chcesz u¿ywaæ ze
|
|
<A HREF="http://xanim.va.pubnix.com">strony XAnim</A>. Nie ma tam kodeka
|
|
<B>3ivx</B>, ale na <A HREF="http://www.3ivx.com">stronie 3ivx</A>.</LI>
|
|
<LI><B>LUB</B> pobierz pakiet kodeków z naszej
|
|
<A HREF="http://www.mplayerhq.hu/MPlayer/releases/codecs/">strony z kodekami</A>.
|
|
</LI>
|
|
<LI>U¿yj opcji <CODE>--with-xanimlibdir</CODE> by podaæ do configure, gdzie ma
|
|
ma szukaæ kodeków XAnim. Domy¶lnie, szuka ich w
|
|
<CODE>/usr/local/lib/xanim/mods, /usr/lib/xanim/mods i /usr/lib/xanim</CODE>.
|
|
Alternatywnie, mo¿esz ustawiæ zmienn± ¶rodowiskow± <I>XANIM_MOD_DIR</I> na
|
|
katalog z kodekami XAnim.</LI>
|
|
<LI>Zmieñ nazwy/stwórz linki do plików, wycinaj±c czê¶æ dotycz±c± architektury, tak wiêc
|
|
nazwy plików bêd± wygl±da³y tak: <CODE>vid_cvid.xa, vid_h263.xa, vid_iv50.xa</CODE>.</LI>
|
|
</OL>
|
|
|
|
<P>XAnim nale¿y do rodziny kodeków <CODE>xanim</CODE>, wiêc mo¿liwe ¿e bêdziesz chcia³
|
|
u¿yæ opcji <CODE>-vfm xanim</CODE> by poinformowaæ MPlayera, ¿e ma ich u¿ywaæ,
|
|
je¿eli jest to mo¿liwe.</P>
|
|
|
|
<P>Testowane kodeki zawieraj±: <B>Indeo 3.2</B>, <B>4.1</B>, <B>5.0</B>, <B>CVID</B>,
|
|
<B>3ivX</B>, <B>h263</B>.</P>
|
|
|
|
|
|
<H4><A NAME="vivo_video">2.2.1.4 Wideo VIVO</A></H4>
|
|
|
|
<P>MPlayer mo¿e odtwarzaæ wideo Vivo (1.0 i 2.0). Najbardziej odpowiednim kodekiem
|
|
dla plików 1.0 jest dekoder H263 z FFmpeg, mo¿esz u¿yæ go opcj± <CODE>-vc ffh263</CODE>
|
|
Dla plików 2.0 u¿ywaj DLL'i Win32 poprzez opcjê <CODE>-vc vivo</CODE>. Je¿eli nie podasz
|
|
opcji w linii komend MPlayer automatycznie wybierze najlepszy kodek.</P>
|
|
|
|
|
|
<H4><A NAME="mpeg">2.2.1.5 Wideo MPEG 1/2</A></H4>
|
|
|
|
<P>MPEG1 i MPEG2 s± dekodowane przez wieloplatformow± natywn± bibliotekê
|
|
<B>libmpeg2</B>, której kod jest do³±czony do MPlayera. Odtwarzamy b³êdne
|
|
pliki wideo MPEG 1/2 poprzez wy³apywanie <CODE>Signal 11 (Segmentation fault)</CODE>,
|
|
i szybk± reinicjalizacjê kodeka, kontynuuj±c dok³adne z miejsca, gdzie b³±d
|
|
wyst±pi³. Ta technika odzyskiwania, nie powodujê wymiernych strat na prêdko¶ci.</P>
|
|
|
|
|
|
<H4><A NAME="ms_video1">2.2.1.6 MS Video1</A></H4>
|
|
|
|
<P>Jest bardzo stary i bardzo z³y kodek Microsoftu. W przesz³o¶ci by³ on
|
|
dekodowany z kodekiem Win32 <CODE>msvidc32.dll</CODE>, teraz mamy w³asn±
|
|
implementacjê open source (wykonan± przez <A HREF="mailto:melanson@pcisys.net">
|
|
Mike'a Melansona</A>).</P>
|
|
|
|
|
|
<H4><A NAME="cinepak">2.2.1.7 Cinepak CVID</A></H4>
|
|
|
|
<P>MPlayer posiada teraz swój w³asny opensource, wieloplatformowy dekoder Cinepak
|
|
(wykonany przez <A HREF="mailto:timf@csse.monash.edu.au">Dr. Tim Ferguson</A>),
|
|
wybierany jako domy¶lny. Obs³uguje on wyj¶cia YUV, wiêc skalowanie sprzêtowe
|
|
jest mo¿liwe, je¿eli sterownik wyj¶cia pozwala na to.</P>
|
|
|
|
|
|
<H4><A NAME="realvideo">2.2.1.8 RealVideo</A></H4>
|
|
|
|
MPlayer wspiera dekodowanie wszystkich wersji RealVideo:
|
|
|
|
<UL>
|
|
<LI>RealVideo 1.0 (fourcc RV10) - wsparcie dla ko/dekodowanie przez <B>libavcodec</B></LI>
|
|
<LI>RealVideo 2.0, 3.0, 4.0 (fourcc RV20, RV30, RV40) - dekodowane przez <B>biblioteki RealPlayera</B></LI>
|
|
</UL>
|
|
|
|
<P>Zalecane jest pobranie i instalacja RealPlayera8 lub RealONE, poniewa¿
|
|
MPlayer mo¿e u¿ywaæ ich bibliotek do dekodowania plików wideo RealVideo 2.0 -
|
|
4.0. Skrypt configure MPlayera powinien wykryæ biblioteki RealPlayera w
|
|
standardowej lokalizacji pe³nej instalacji. Je¿eli tego nie zrobi³, przekarz
|
|
do configure, gdzie ma ich szukaæ opcj± <CODE>--with-reallibdir</CODE>.</P>
|
|
|
|
<P><B>Informacja:</B> Biblioteki RealPlayera aktualnie <B>dzia³aj± tylko z Linuksem,
|
|
FreeBSD, NetBSD i Cygwinem na platformach x86, Alpha i PowerPC
|
|
(Linux/Alpha i Linux/PowerPC zosta³y przetestowane).</B></P>
|
|
|
|
|
|
<H4><A NAME="xvid">2.2.1.9 XviD</A></H4>
|
|
|
|
<P><A HREF="http://www.xvid.org/"><B>XViD</B></A> jest odga³êzieniem od projektu
|
|
kodeka OpenDivX. Sta³o siê to, gdy ProjectMayo przeniós³ OpenDivX na zamkniêto
|
|
¼ród³owy DivX4 (teraz DivX5), i ludzie nie-ProjectMayo pracuj±cy nad OpenDivX
|
|
rozz³o¶cili siê, wtedy posta³ XviD. Wiêc oba projekty maj± to samo ¼ród³o.</P>
|
|
|
|
<H4>KORZY¦CI</H4>
|
|
|
|
<UL>
|
|
<LI>otwarty kod</LI>
|
|
<LI>jego API jest kompatybilne z DivX4, wiêc dodanie wsparcia dla niego jest proste</LI>
|
|
<LI>wsparcie dla kodowania 2-krokowego</LI>
|
|
<LI>niez³a jako¶æ kodowania, wiêksza prêdko¶æ ni¿ DivX4 (mo¿esz zoptymalizowaæ
|
|
go do twojego sprzêtu podczas kompilacji)</LI>
|
|
</UL>
|
|
|
|
<H4>WADY</H4>
|
|
|
|
<UL>
|
|
<LI>aktualnie niezbyt poprawnie <B>dekoduje</B> wszystkich plików DivX/DivX4 (nie
|
|
problemu, bo <A HREF="#libavcodec">libavcodec</A> odtwarza je wszystkie)</LI>
|
|
<LI>musisz wybraæ miêdzy wsparciem dla DivX4 <B>lub</B> XviD podczas kompilacji</LI>
|
|
<LI>nie ukoñczony</LI>
|
|
</UL>
|
|
|
|
<H4>INSTALOWANIE XVID Z CVS</H4>
|
|
|
|
<P>Aktualnie XviD jest dostêpny tylko z CVS. Tutaj znajduje siê instrukcja
|
|
pobrania i instalacji(potrzebujesz przynajmniej autoconf 2.50, automake i libtool):</P>
|
|
|
|
<OL>
|
|
<LI><CODE>cvs -z3 -d:pserver:anonymous@cvs.xvid.org:/xvid login</CODE></LI>
|
|
<LI><CODE>cvs -z3 -d:pserver:anonymous@cvs.xvid.org:/xvid co xvidcore</CODE></LI>
|
|
<LI><CODE>cd xvidcore/build/generic</CODE></LI>
|
|
<LI><CODE>./bootstrap.sh</CODE></LI>
|
|
<LI><CODE>./configure</CODE><BR>
|
|
Mo¿esz dodaæ kilka opcji (przestudiuj komunikaty
|
|
<CODE>./configure --help</CODE>).</LI>
|
|
<LI><CODE>make && make install</CODE></LI>
|
|
<LI>Je¿eli okre¶li³e¶ <CODE>--enable-divxcompat</CODE>, skopiuj plik
|
|
nag³ówkowy <CODE>divx4.h</CODE> z <CODE>xvidcore/src/</CODE>
|
|
do <CODE>/usr/local/include/</CODE>.</LI>
|
|
<LI>Przekompiluj MPlayer z
|
|
<CODE>--with-xvidcore=/path/to/libxvidcore.a</CODE>.</LI>
|
|
</OL>
|
|
|
|
|
|
<H4><A NAME="sorenson">2.2.1.10 Sorenson</A></H4>
|
|
|
|
<P><B>Sorenson</B> jest rodzin± kodeków rozwijan± przez Sorenson Media i
|
|
licencjonowan± na Apple który rozprowadza go z ich QuickTime Playerem.
|
|
Aktualnie jeste¶my w stanie zdekodowaæ wszystkie wersje plików wideo Sorenson
|
|
podanymi kodekami:</P>
|
|
|
|
<UL>
|
|
<LI>Sorenson 1 (fourcc <I>SVQ1</I>) - wsparcie dla dekodowanie przez <B>natywne
|
|
kodeki</B><BR>
|
|
Aktualnie s± dwa (prawie jednakowe) dekodery dla SVQ1: jeden jest wbudowany w
|
|
MPlayera, inny jest w libavcodec. Mo¿esz wybieraæ miêdzy nimi odpowiednio opcjami
|
|
<CODE>-vc svq1</CODE> i <CODE>-vc ffsvq1</CODE>.
|
|
Niektóre pliki mog± dzia³aæ z jednym, a nie z innym, wiêc przetestuj oba dekodery.
|
|
Dekodery zosta³y napisane (reverse engineered) przez autorów
|
|
<A HREF="http://www.xinehq.de">xine</A>.</LI>
|
|
<LI>Sorenson 3 (fourcc <I>SVQ3</I>) - wsparcie dla dekodowanie przez <B>biblioteki
|
|
Win32 QuickTime</B></LI>
|
|
</UL>
|
|
|
|
<H4>KOMPILOWANIE MPLAYERA Z WSPARCIEM DLA BIBLIOTEK QUICKTIME</H4>
|
|
|
|
<P><B>INFORMACJA:</B> aktualnie wspierane s± tylko platformy 32bit Intel.</P>
|
|
|
|
<OL>
|
|
<LI>pobierz MPlayera z CVS</LI>
|
|
<LI>skompiluj MPlayera z:<BR>
|
|
<CODE>$ ./configure --enable-qtx-codecs</CODE></LI>
|
|
<LI>pobierz pakiet DLLi QuickTime z
|
|
<A HREF="http://www.mplayerhq.hu/MPlayer/releases/codecs/">http://www.mplayerhq.hu/MPlayer/releases/codecs/</A></LI>
|
|
<LI>rozpakuj pakiet DLLi QuickTime do twojego katalogu z kodekami Win32 (domy¶lnie:
|
|
<CODE>/usr/lib/win32</CODE>)</LI>
|
|
</OL>
|
|
|
|
|
|
<H3><A NAME="audio_codecs">2.2.2 Kodeki audio</A></H3>
|
|
|
|
<P>Najwa¿niejsze kodeki audio:<BR></P>
|
|
|
|
<UL>
|
|
<LI>d¼wiêk MPEG layer 2 (MP2), i layer 3 (MP3) (<B>natywny</B> kod, z
|
|
optymalizacj± MMX/SSE/3DNow!)</LI>
|
|
<LI>d¼wiêk MPEG layer 1 (<B>natywny</B> kod, z libavcodec)</LI>
|
|
<LI>Windows Media Audio v1, v2 (<B>natywny</B> kod, z libavcodec)</LI>
|
|
<LI>Windows Media Audio 9 (WMAv3) (u¿ywaj±cy DMO DLL)</LI>
|
|
<LI>AC3 Dolby audio (<B>natywny</B> kod, z optymalizacj± MMX/SSE/3DNow!</LI>
|
|
<LI>AC3 wykorzystuj±cy osprzêtowanie karty d¼wiêkowej</LI>
|
|
<LI>kodek audio Ogg Vorbis (<B>natywne</B> biblioteki)</LI>
|
|
<LI>RealAudio: DNET (nisko-bitrate'owy AC3), Cook, Sipro i ATRAC3</LI>
|
|
<LI>QuickTime: kodeki audi Qualcomm i QDesign</LI>
|
|
<LI>d¼wiêk VIVO audio (g723, Vivo Siren)</LI>
|
|
<LI>d¼wiêk Voxware (u¿ywaj±cy DirectShow DLL)</LI>
|
|
<LI>formaty alaw i ulaw, ró¿ne gsm, adpcm i pcm i inne proste, stare kodeki audio</LI>
|
|
<LI>AAC</LI>
|
|
</UL>
|
|
|
|
|
|
<H4><A NAME="software_ac3">2.2.2.1 Programowe dekodowanie AC3</A></H4>
|
|
|
|
<P>Jest to domy¶lny dekoder u¿ywany do plików z d¼wiêkiem AC3.</P>
|
|
|
|
<P>Dekoder AC3 mo¿e tworzyæ wyj¶ciowego d¼wiêku dla 2, 4 lub 6 g³o¶ników.
|
|
Skonfigurowany dla 6 g³o¶ników, dekoder ten dostarcza oddzielne wyj¶cia
|
|
dla wszystkich kana³ów AC3 do sterownika karty d¼wiêkowej, umo¿liwiaj±c
|
|
do¶wiadczenie wra¿enia pe³nego "d¼wiêku otaczaj±cego", bez wymagania od
|
|
zewnêtrznego dekodera AC3 u¿ycia kodeka hwac3.</P>
|
|
|
|
<P>U¿yj opcji <CODE>-channels</CODE>, aby wybraæ ilo¶æ kana³ów wyj¶ciowych.
|
|
U¿yj opcji <CODE>-channels 2</CODE> dla stereo downmix. Dla czterokana³owego
|
|
downmix (wyj¶cia lewo-przód, prawo-przód, lewo-ty³, prawo-ty³), u¿yj opcji
|
|
<CODE>-channels 4</CODE>. W tym przypadku jakikolwiek centralny kana³ bêdzie
|
|
miksowany odpowiednio do przednich kana³ów. <CODE>-channels 6</CODE> bêdzie
|
|
wyprowadza³o wszystkie kana³y AC3 tak, jak s± zakodowane - w kolejno¶ci lewy,
|
|
prawy, lewy-tylny, prawy-tylny, centralny oraz LFE.</P>
|
|
|
|
<P>Domy¶lna liczba kana³ów wyj¶ciowych wynosi 2.</P>
|
|
|
|
<P>Aby korzystaæ z wiêcej ni¿ dwóch kana³ów wyj¶ciowych, musisz u¿yæ OSS,
|
|
i posiadaæ sterownik dla karty d¼wiêkowej, który obs³uguje odpowiedni± liczbê
|
|
kana³ów wyj¶ciowych przez SNDCTL_DSP_CHANNELS ioctl. Na przyk³ad odpowiednim
|
|
sterownikiem jest emu10k1 (u¿ywanego z kartami SB Live!) z lub nowszy ni¿
|
|
z sierpnia 2001 (ALSA z CVS tak¿e powinien dzia³aæ).</P>
|
|
|
|
|
|
<H4><A NAME="hardware_ac3">2.2.2.2 Sprzêtowe dekodowanie AC3</A></H4>
|
|
|
|
<P>Potrzebujesz karty d¼wiêkowej, zdolnej do obs³ugi AC3, z cyfrowym wyj¶ciem (SP/DIF).
|
|
Sterownik karty d¼wiêkowej musi obs³ugiwaæ format AFMT_AC3 (C-Media). Pod³±cz
|
|
swój dekoder AC3 do wyj¶cia SP/DIF i u¿yj opcji <CODE>-ac hwac3</CODE>.
|
|
Jest to eksperymantalne, ale dzia³a z kartami C-Media, Soundblaster Live! u¿ywaj±cy
|
|
sterownika ALSA (ale nie OSS) i kartami dekoduj±cymi DXR3/Hollywood+ MPEG.</P>
|
|
|
|
|
|
<H4><A NAME="libmad">2.2.2.3 Wsparcie dla libmad</A></H4>
|
|
|
|
<P><A HREF="http://mad.sourceforge.net">libmad</A> jest wieloplatformow± bibliotek±
|
|
dekodowania d¼wiêku MPEG. Nie obs³uguje zbyt dobrze uszkodzonych plików i ma
|
|
pewne problemy z przeszukiwaniem.</P>
|
|
|
|
<P>Aby w³±czyæ obs³ugê, skompiluj z opcj± configure <CODE>--enable-mad</CODE>.</P>
|
|
|
|
|
|
<H4><A NAME="vivo_audio">2.2.2.4 D¼wiêk VIVO</A></H4>
|
|
|
|
<P>Kodek d¼wiêku u¿ywany do plików VIVO zale¿y od tego, czy jest to plik VIVO/1.0,
|
|
czy VIVO/2.0. Pliki VIVO/1.0 zawieraj± d¼wiêk g.723, za¶ pliki VIVO/2.0 maj±
|
|
<B>Vivo Siren</B>. Oba formaty s± obs³ugiwane.</P>
|
|
|
|
<H4><A NAME="realaudio">2.2.2.5 RealAudio</A></H4>
|
|
|
|
MPlayer wspiera dekodowanie prawie wszystkich wersji RealAudio:
|
|
|
|
<UL>
|
|
<LI>RealAudio DNET - wsparcie dla dekodowania przez <B>liba52</B></LI>
|
|
<LI>RealAudio Cook/Sipro/ATRAC3 - wsparcie dla dekodowania przez <B>biblioteki
|
|
RealPlayer</B></LI>
|
|
</UL>
|
|
|
|
<P>By dowiedzieæ siê, jak zainstalowaæ biblioteki RealPlayer, patrz sekcja
|
|
<A HREF="#realvideo">RealVideo</A>.</P>
|
|
|
|
|
|
<H4><A NAME="qdesign">2.2.2.6 Kodeki QDesign</A></H4>
|
|
|
|
<P>Strumienie audio QDesign (fourcc: <I>QDMC</I>, <I>QDM2</I>) znajduj± siê w plikach
|
|
MOV/QT. Obie wersje tych kodeków mog± byæ dekodowane bibliotekami QuickTime.
|
|
Po instrukcjê instalacji, prosimy zobacz sekcjê <A HREF="#sorenson">kodeki wideo
|
|
Sorenson</A>.</P>
|
|
|
|
|
|
<H4><A NAME="qclp">2.2.2.7 Kodeki Qualcomm</A></H4>
|
|
|
|
<P>Strumienie audio Qualcomm (fourcc: <I>Qclp</I>) znajduj± siê z plikach MOV/QT.
|
|
Mog± byæ dekodowane bibliotekami QuickTime. Po instrukcjê instalacji, prosimy zobacz sekcjê <A HREF="#sorenson">kodeki wideo
|
|
Sorenson</A>.</P>
|
|
|
|
|
|
<H4><A NAME="aac">2.2.2.8 Kodek AAC</A></H4>
|
|
|
|
<P>AAC (Advanced Audio Coding) jest kodekiem audio czasami znajdowanym w plikach
|
|
MOV i MP4. Dekoder open source FAAD jest dostêpny na
|
|
<A HREF="http://www.audiocoding.com/">AudioCoding.com</A>.
|
|
Mo¿esz pobraæ drug± generacjê kodeka FAAD2 na ich
|
|
<A HREF="http://www.audiocoding.com/download.php">stronie download</A>.
|
|
Niestety FAAD2 1.1 nie kompiluje siê na Linuksie, wiêc musisz u¿yæ wersji
|
|
z CVS. Poni¿ej instrukcja jak:</P>
|
|
|
|
<OL>
|
|
<LI>cvs -d:pserver:anonymous@cvs.audiocoding.com:/cvsroot/faac login</LI>
|
|
<LI>cvs -z3 -d:pserver:anonymous@cvs.audiocoding.com:/cvsroot/faac co faad2</LI>
|
|
<LI>cd faad2/</LI>
|
|
<LI>chmod +x bootstrap</LI>
|
|
<LI>./bootstrap</LI>
|
|
<LI>./configure</LI>
|
|
<LI>make</LI>
|
|
<LI>make install</LI>
|
|
</OL>
|
|
|
|
<P>Pakiety nie s± dostêpne na audiocoding.com, ale mo¿esz je pobraæ (apt-get)
|
|
pakiety Debiana
|
|
<A HREF="http://marillat.free.fr/">Christian Marillat's homepage</A>
|
|
i RPMy Mandrake'a z
|
|
<A HREF="http://plf.zarb.org/">P.L.F</A>.</P>
|
|
|
|
|
|
|
|
<H3><A NAME="importing">2.2.3 HOWTO importowania kodeków Win32</A></H3>
|
|
|
|
|
|
<H4><A NAME="importing_vfw">2.2.3.1 Kodeki VFW</A></H4>
|
|
|
|
<P>VfW (Video for Windows), jest starym Video API dla Windows. Jego kodeki maj±
|
|
rozszerzenia .DLL lub (rzadziej) .DRV.
|
|
Je¶li MPlayer nie potrafi odtworzyæ twojego AVI i wy¶wietla komunikat
|
|
o takim typie:</P>
|
|
|
|
<P> <CODE>UNKNOWN video codec: HFYU (0x55594648)</CODE></P>
|
|
|
|
<P>To oznacza, ¿e twój AVI jest zakodowany za pomoc± kodeka, który ma fourcc
|
|
HFYU fourcc (HFYU = kodek HuffYUV, DIV3 = DivX Low Motion, itd....). Teraz,
|
|
gdy ju¿ to wiemy, bêdziemy musieli dowiedzieæ siê, któr± bibliotekê DLL z Windows
|
|
za³adowaæ, aby móc odtworzyæ ten plik. W naszym przypadku <CODE>system.ini</CODE>
|
|
tê informacjê w linii:</P>
|
|
|
|
<P> <CODE>VIDC.HFYU=huffyuv.dll</CODE></P>
|
|
|
|
<P>Tak wiêc, potrzebujesz pliku <CODE>huffyuv.dll</CODE>. Zauwa¿, ¿e kodeki d¼wiêku
|
|
s± wyró¿nione za pomoc± prefiksu MSACM:</P>
|
|
|
|
<P> <CODE>msacm.l3acm=L3codeca.acm</CODE></P>
|
|
|
|
|
|
<P>To jest kodek MP3. Maj±c ju¿ wszystkie potrzebne informacje (fourcc,
|
|
plik z kodekiem, próbka AVI), wy¶lij ¿±danie wsparcia dla twojego kodeka mailem
|
|
i za³aduj te pliki przez FTP:</P>
|
|
|
|
<P> <CODE>ftp://ftp.mplayerhq.hu/MPlayer/incoming/[nazwa_kodeka]/</CODE></P>
|
|
|
|
<P><B>Informacja:</B> W Windows NT/2000/XP szukaj tych informacji w rejestrze. np
|
|
szukaj "VIDC.HFYU". By dowiedzieæ siê wiêcej, przeczytaj poni¿sz± metodê na
|
|
stare DirectShow.</P>
|
|
|
|
<H4><A NAME="importing_directshow">2.2.3.2 Kodeki DirectShow</A></H4>
|
|
|
|
<P>DirectShow to najnowsze Video API, które jest nawet gorsze, ni¿ jego poprzednik.
|
|
Sprawy siê bardziej komplikuj±, odk±d</P>
|
|
|
|
<UL>
|
|
<LI><CODE>system.ini</CODE> nie zawiera potrzebnych informacji, a w zamian
|
|
za to jest przechowywany w rejestrze i</LI>
|
|
<LI>potrzebujemy GUID kodeka.</LI>
|
|
</UL>
|
|
|
|
<P><B>Nowa metoda:</B> U¿ycie Microsoft GraphEdit (szybka)</P>
|
|
|
|
<OL>
|
|
<LI>Pobierz GraphEdit z którego¶ DirectX SDK, z
|
|
<A HREF="http://doom9.org">Doom9</A>, (lub poszukaj na
|
|
<A HREF="http://www.google.com.pl">Google</A>, u mnie w Windowsie 2000
|
|
nie bardzo dzia³a³o) .</LI>
|
|
<LI>Uruchom <CODE>graphedit.exe</CODE> (Spróbuj tak¿e:
|
|
<CODE>SysEnum.exe</CODE>, przyp. t³umacza).</LI>
|
|
<LI>Z menu wybierz Graph -> Insert Filters.</LI>
|
|
<LI>Rozwiñ listê <CODE>DirectShow Filters</CODE>.</LI>
|
|
<LI>Wybierz odpowiedn± nazwê kodeka i rozwiñ listê.</LI>
|
|
<LI>W polu <CODE>DisplayName</CODE> spój¿ na tekst w nawiasie po uko¶niku
|
|
(backslashu) i zapisz go (piêæ ograniczonych kreskami bloków, GUID).</LI>
|
|
<LI>Binaria kodeka s± w pliku okre¶lonym w polu <CODE>Filename</CODE>.</LI>
|
|
</OL>
|
|
|
|
<P><B>Informacja:</B> Je¿eli nie ma nic w <CODE>Filename</CODE> i <CODE>DisplayName</CODE>
|
|
zawiera co¶ w stylu <CODE>device:dmo</CODE>, wtedy jest to DMO-Codec.</P>
|
|
|
|
<P><B>Stara metoda:</B> We¼ g³êboki oddech i zacznij przeszukiwaæ rejestr...</P>
|
|
|
|
<OL>
|
|
<LI>Uruchom <CODE>regedit</CODE>.</LI>
|
|
<LI>Wci¶nij <CODE>Ctrl-f</CODE>, odznacz pierwsze dwa pola i zaznacz trzecie.
|
|
Wpisz fourcc kodeka (np. TM20).</LI>
|
|
<LI>Powiniene¶ zobaczyæ wpis zawieraj±cy ¶cie¿kê i nazwê pliku
|
|
(np. <CODE>C:\WINDOWS\SYSTEM\TM20DEC.AX</CODE>).</LI>
|
|
<LI>Teraz, gdy masz ju¿ plik, potrzebujemy GUID. Spróbuj szukaæ jeszcze raz, ale
|
|
tym razem szukaj nazwy kodeka, a nie fourcc. Nazwê mo¿esz zdobyæ sprawdzaj±c
|
|
File(Plik) -> Properties(W³a¶ciwo¶ci) -> Advanced(Zaawansowane), podczas
|
|
odtwarzania pliku w Media Playerze.
|
|
Je¿eli siê nie da, to masz pecha. Spróbuj zgadn±æ (np. szukaj TrueMotion).</LI>
|
|
<LI>Je¶li znalaz³e¶ (w rejestrze), powinno byæ tam pole FriendlyName oraz pole CLSID.
|
|
Zapisz 16 bajtów CLSID, to potrzebne nam GUID.</LI>
|
|
</OL>
|
|
|
|
<P><B>Informacja:</B> Je¿eli szukanie zawodzi, spróbuj zaznaczyæ wszystkie pola. Mo¿esz
|
|
uzyskaæ nieprzydatne wyszukania, ale byæ mo¿e dostaniesz te w³a¶ciwe przy okazji ...</P>
|
|
|
|
<P>Maj±c teraz wszystkie niezbêdne informacje, (fourcc, GUID, plik kodeka, próbka AVI),
|
|
wy¶lij zg³oszenie wsparcia dla swojego kodeka mailem, i prze¶lij te pliki na adres FTP:</P>
|
|
|
|
<P> <CODE>ftp://ftp.mplayerhq.hu/MPlayer/incoming/[nazwa kodeka]/</CODE></P>
|
|
|
|
</BODY>
|
|
</HTML>
|