view DOCS/de/codecs.html @ 17197:0ab565f7ed60

Avoid gcc warnings: '...' might be used uninitialized in this function In this case 'H', 'N', 'D', and 'F' can indeed be used unitialized, thus possibly causing all sorts of problems. Patch by Peter Breitenlohner
author rathann
date Thu, 15 Dec 2005 20:39:59 +0000
parents aa01df570de0
children
line wrap: on
line source

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<HTML>

<HEAD>
  <TITLE>Codecs - MPlayer - The Movie Player for Linux</TITLE>
  <LINK REL="stylesheet" TYPE="text/css" HREF="../default.css">
  <META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=iso-8859-1">
</HEAD>

<BODY>

<H2><A NAME="codecs">2.2 Unterst&uuml;tzte Codecs</A></H2>

<H3><A NAME="video_codecs">2.2.1 Video-Codecs</A></H3>

<P>Siehe
<A HREF="http://www.mplayerhq.hu/DOCS/codecs-status.html">Codec-Status</A>-Seite
f&uuml;r die komplette, t&auml;glich generierte Liste. Eine Vielzahl von
Codecs kann von unserer Homepage runtergeladen werden. Du findest sie auf der
<A HREF="http://www.mplayerhq.hu/MPlayer/releases/codecs/">Codec-Seite</A>.</P>

<P>Die wichtigsten Video-Codecs:</P>

<UL>
  <LI><B>MPEG1</B>- (<B>VCD</B>) und <B>MPEG2</B>-Video (<B>DVD</B>)</LI>
  <LI>eingebauter Dekoder f&uuml;r <B>DivX ;-)<B>, <B>OpenDivX</B>,
    <B>DivX4</B>, <B>DivX5</B>, <B>M$ MPEG4</B> v1, v2 und andere
    MPEG4-Varianten</LI>
  <LI>eingebauter Decoder f&uuml;r <B>Windows Media Video 7/8</B>
    (<B>WMV1/WMV2</B>) und Win32-DLL-Decoder f&uuml;r <B>Windows Media Video
    9</B> (<B>WMV3</B>). Beide werden in .wmv-Dateien verwendet.</LI>
  <LI>eingebauter <B>Sorenson 1 (SVQ1)</B> Decoder</LI>
  <LI>Win32/QT <B>Sorenson 3 (SVQ3)</B> Decoder</LI>
  <LI><B>3ivx</B>-Decoder f&uuml;r v1 und v2</LI>
  <LI>Cinepak und <B>Intel Indeo</B> Codecs (3.1, 3.2, 4.1, 5.0)</LI>
  <LI><B>MJPEG</B>, AVID, VCR2, ASV2 und andere Hardwareformate</LI>
  <LI>VIVO 1.0, 2.0, I263 und andere <B>h263</B>(+)-Varianten</LI>
  <LI>FLI/FLC</LI>
  <LI><B>RealVideo 1.0</B> von libavcodec und <B>RealVideo 2.0</B>, <B>3.0</B>
    und <B>4.0</B> durch die RealPlayer-Libraries</LI>
  <LI>eingebauter Decoder f&uuml;r HuffYUV</LI>
  <LI>Verschiedene alte, einfache RLE-&auml;hnliche Formate</LI>
</UL>

<P>Wenn du einen Win32-Codec hast, der noch nicht aufgelistet und
unterst&uuml;tzt ist, dann lies <A HREF="#importing">Win32
Codec-Importierungs-HOWTO</A> und hilf uns, die Unterst&uuml;tzung
hinzuzuf&uuml;gen.</P>


<H4><A NAME="divx">2.2.1.1 DivX4/DivX5</A></H4>

<P>Diese Sektion enth&auml;lt Informationen &uuml;ber den DivX4- und
Divx5-Codec vom <A HREF="http://www.projectmayo.com">Project Mayo</A>. Ihre
ersten verf&uuml;gbaren alpha-Versionen waren OpenDivX 4.0 alpha 47 und 48.
Unterst&uuml;tzung daf&uuml;r war fr&uuml;her standardgem&auml;&szlig; in
MPlayer eingebaut. Es wurde auch deren Postprocessing Code verwendet, um
optional die Bildqualit&auml;t von MPEG1/2-Filmen zu verbessern. Nun benutzen
wir unseren eigenen f&uuml;r alle Dateitypen.</P>

<P>Die neue Version dieses Codecs heisst DivX4Linux und kann sogar Filme
decodieren, die mit dem ber&uuml;chtigten DivX-Codec (DivX 3 ;-)) erzeugt
wurden!  Dazu ist sie noch um einiges schneller als die traditionelle
Win32-DivX-DLL aber immer noch langsamer als libavcodec. Vom Gebrauch dieses
Codecs wird desshalb <B>abgeraten</B>. Er l&auml;sst sich jedoch trotzdem zum
Encodieren verwenden. Ein Nachteil diese Codecs ist, dass er zurzeit
nicht unter einer OpenSource-Lizenz verf&uuml;gbar ist.</P>

<P>MPlayer erkennt automatisch, ob DivX4/DivX5 korrekt installiert ist,
du kannst ihn wie gew&ouml;hnlich kompilieren. Wenn es nicht erkannt wird,
wurde es nicht korrekt installiert oder konfiguriert.</P>

<P>DivX4Linux arbeitet in zwei verschiedenen Modi:</P>

<DL>
  <DT><CODE>-vc odivx</CODE></DT>
  <DD>Spricht den Codec so wie den alten OpenDivX-Codec an. In diesem Fall
    produziert der Codec YV12-Bilder in seinem eigenen Puffer, und
    MPlayer nimmt die Farbraumkonvertierung mittels libvo vor
    (<B>schneller und empfohlener Modus!</B>).</DD>
  <DT><CODE>-vc divx4</CODE></DT>
  <DD>Benutzt die Farbraumkonvertierung des Codecs. In diesem Modus kannst
    du auch YUY2/UYVY benutzen (<B>LANGSAM</B>).</DD>
</DL>

<P>Der <CODE>-vc odivx</CODE>-Modus ist normalerweise schneller, da er die
Daten in einem YV12-Format (planares YUV 4:2:0) &uuml;bermittelt, was weniger
Bandbreite f&uuml;r den Bus bedeutet. F&uuml;r gepackte YUV-Formate (YUY2,
UYVY) verwende den <CODE>-vc divx4</CODE>-Modus. F&uuml;r den RGB-Modus ist die
Geschwindigkeit gleich und h&auml;ngt am ehesten von deiner momentanen
Farbtiefe ab.</P>

<P><B>Hinweis:</B> Wenn der -vo-Treiber "direct rendering" unterst&uuml;tzt,
ist <CODE>-vc divx4</CODE> wahrscheinlich die schnellere oder sogar die 
schnellste L&ouml;sung.</P>

<P>Die bin&auml;re DivX4/5-Bilbiothek kann von
<A HREF="http://avifile.sourceforge.net">avifile</A> oder
<A HREF="http://www.divx.com">divx.com</A> heruntergeladen werden.
heruntergeladen werden. Entpacke ihn, starte <CODE>./install.sh</CODE> als
root, und vergiss nicht, <CODE>/usr/local/lib</CODE> deiner
<CODE>/etc/ld.so.conf</CODE> hinzuzuf&uuml;gen und <CODE>ldconfig</CODE>
aufzurufen.</P>

<P>Besorge dir die CVS-Version der ALTEN OpenDivX-Kernbibliothek wie folgt:</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>Diese Kernbibliothek inst in eine Dekodierbibliothek und eine
    Enkodierbibliothek aufgeteilt, sie separat compiliert werden m&uuml;ssen.
    Bei der Dekodierbibliothek gibst du einfach folgendes ein:
    <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>F&uuml;r die Enkodierbibliothek gibt es leider kein Linux-Makefile,
    und der MMX-optimierte Code funktioniert auch nur unter Windows. Du kannst
    die Bibliothek aber trotzdem compilieren, wenn du dieses
    <A HREF="ftp://ftp.mplayerhq.hu/MPlayer/contrib/divx-mf/Makefile">
    Makefile</A> benutzt:
    <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 findet DivX4/DivX5 automatisch, sofern es richtig installiert
wurde. Compiliere also einfach wie sonst auch. Wenn <CODE>configure</CODE>
die Bibliothek nicht findet, dann hast du DivX4/5 einfach nicht richtig
installiert.</P>


<H4><A NAME="libavcodec">2.2.1.2 FFmpeg's DivX/libavcodec</A></H4>

<P>Das <A HREF="http://ffmpeg.sourceforge.net">FFmpeg</A>-Projekt enth&auml;lt
ein <B>Open-Source</B>-Codec-Paket, das f&auml;hig ist, mit
H263/MJPEG/RV10/DivX3/DivX4/DivX5/MP41/MP42/WMV1/WMV2/HuffYUV codiertes Video
und mit WMA (Windows Media Audio) codiertes Audio zu decodieren. Man kann nicht
nur einige dieser Codecs zum Encodieren benutzen, sondern die Geschwindigkeit
ist sogar um einiges h&auml;her als die der Win32-Codecs oder der ProjectMayo
DivX4/5-Bibliothek!</P>

<P>FFmpeg beinhaltet auch viele nette Codecs. Die wichtigsten sind die
MPEG4-Varianten: DivX3, DivX4, DivX5, Windows Media Video 7 (WMV1). Ein
weiterer sehr interessanter Deocder ist der f&uuml;r WMA.</P>

<P>Wenn ein offizielles MPlayer-Release verwendet wird, befindet sich
libavcodec (die Codec-Bilbiothek des FFmpeg-Projektes) bereits im Paket,
welches normal kompiliert werden kann. Wenn du die MPlayer-Sourcen per
CVS runterl&auml;dst, musst du die libavcodec vom FFmpeg CVS-Server verwenden,
da das offizielle FFmpeg-Release 0.4.5 <B>nicht</B> mit MPlayer
zusammen l&auml;uft. Um dies zu erreichen gibst du folgendes ein:</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>Das <CODE>libavcodec</CODE>-Verzeichnis von den FFmpeg-Sourcen muss in's
    Hauptverzeichnis des MPlayer CVS-Baums verschoben/kopiert werden.
    Es sollte etwa so aussehen:
    <P>&nbsp;&nbsp;&nbsp;&nbsp;<CODE>main/libavcodec</CODE></P>
    Das Erstellen eines symbolischen Links ist <B>nicht</B> genug; es muss
    kopiert/verschoben werden!</LI>
  <LI>Es folgt die Compilierung. configure sollte Probleme vor der
    Compilierung erkennen.</LI>
</OL>

<P><B>Hinweis:</B> Die MPlayer-Sourcen im CVS enthalten ein
libavcodec-Unterverzeichnis. Es enth&auml;lt jedoch <B>nicht</B> den Quellcode
von libavcodec! Du musst - wie oben beschrieben - dir die CVS-Version von 
FFmpeg besorgen.</P>

<P>Mit FFmpeg und meiner Matrox G400 kann ich sogar DivX-Filme in hoher 
Aufl&ouml;sung auf meinem K6/2 500 ohne Framedrops betrachten.</P>


<H4><A NAME="xanim">2.2.1.3 XAnim-Codecs</A></H4>

<H4>VORWORT</H4>

<P>Es ist darauf hinzuweisen, dass die XAnim-Binary-Codecs mit
einem Textst&uuml;ck geliefert werden, das eine legal bindende Softwarelizenz
sein soll, welche (neben einigen anderen Einschr&auml;nkungen) dem Benutzer das
Verwenden der Codecs mit anderen Programmen als XAnim verbietet. Der
XAnim-Autor hat jedoch noch keine rechtliche Schritte gegen irgendjemanden
wegen Codec bezogenen Fragen unternommen.</P>

<H4>INSTALLATION UND BEDIENUNG</H4>

<P>MPlayer kann XAnims Codecs f&uuml;r das Decodieren verwenden. Um
diese zu aktivieren, solltest folgenden Anweisungen folgen:</P>

<OL>
  <LI>Lade dir die Codecs, die du verwenden willst, von der 
    <A HREF="http://xanim.va.pubnix.com">XAnim-Seite</A> herunter. 
    Der <B>3ivx</B> Codec befindet sich nicht dort. Er kann jedoch von der
    <A HREF="http://www.3ivx.com">3ivx-Seite</A> heruntergeladen werden.</LI>
  <LI><B>ODER</B> lade dir das Codec-Paket von unserer
    <A HREF="http://www.mplayerhq.hu/MPlayer/releases/codecs/">Codecseite</A>
    herunter.</LI>
  <LI>Verwende die <CODE>--with-xanimlibdir</CODE>-Option, um configure zu
    sagen, wo es die XAnim-Codecs finden kann. Normalerweise werden diese in 
    <CODE>/usr/local/lib/xanim/mods</CODE>, <CODE>/usr/lib/xanim/mods/</CODE>
    und <CODE>/usr/lib/xanim</CODE> gesucht. Weiterhin kannst du auch die
    Umgebungsvariable <I>XANIM_MOD_DIR</I> auf den Verzeichnisnamen
    der XAnim-Codecs setzen.</LI>
  <LI>Entferne/Symlinke die Dateinamen, wobei du das Architektur-Zeugs
    l&ouml;schst, sodass die Dateinamen etwa so aussehen:
    <CODE>vid_cvid.xa</CODE>, <CODE>vid_h263.xa</CODE>,
    <CODE>vid_iv50.xa</CODE>.</LI>
</OL>
  
<P>XAnim ist die Videocodec-Familie <CODE>xanim</CODE>. Du kannst also die
<CODE>-vfm xanim</CODE>-Option verwenden, um MPlayer zu sagen, dass er
sie, wenn m&ouml;glich, verwenden soll.</P>
	  
<P>Die getesteten Codecs beinhalten: <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 VIVO-Video</A></H4>

<P>MPlayer kann VIVO (1.0 und 2.0) Videos abspielen. Der beste geeignete Codec
f&uuml;r 1.0-Dateien ist FFmpegs H263-Decoder. Du kannst ihn mit der <CODE>-vc
ffh263</CODE>-Option aufrufen. F&uuml;r v2.0-Dateien musst du die Win32-DLLs
mit der Option <CODE>-vc vivo</CODE> benutzen. Wenn du keine expliziten Angaben
zum Codec auf der Kommandozeile machst, so w&auml;hlt MPlayer automatisch den
besten aus.</P>


<H4><A NAME="mpeg">2.2.1.5 MPEG 1/2-Video</A></H4>

<P>MPEG1 und MPEG2 werden von der eingebauten Multiplatform-Bibliothek
<B>libmpeg2</B> decodiert, deren Source in MPlayer enthalten ist. Wir
spielen fehlerhafte MPEG1/2-Videos durch das Abfangen des sig11 (segmentation
fault) und die anschlie&szlig;end schnelle Neuinitialisierung des Codecs ab.
Dadurch kann exakt an der Stelle des Fehlers fortgefahren werden. Es ist dabei
kein Geschwindigkeitsverlust messbar.</P>


<H4><A NAME="ms_video1">2.2.1.6 MS Video 1</A></H4>

<P>Dies ist dein sehr alter und sehr schlechter Codec von Microsoft. In der
Vergangenheit wurde es mit dem <CODE>msvidc32.dll</CODE> Win32-Codec decodiert,
aber nun haben wir einen Open-Source-Codec (von <A
HREF="mailto:melanson@pcisys.net">Mike Melanson</A>) eingebaut.</P>


<H4><A NAME="cinepak">2.2.1.7 Cinepak CVID</A></H4>

<P>MPlayer verwendet normalerweise seinen eigenen, Open-Source
multiplatformf&auml;higen Cinepak-Decoder, der von <A
HREF="mailto:timf@csse.monash.edu.au">Dr. Tim Ferguson</A> geschrieben wurde.
Er unterst&uuml;tzt YUV-Ausgabe, was Hardwarescaling erm&ouml;glicht, wenn dies
vom Videoausgabetreiber unterst&uuml;tzt wird.</P>


<H4><A NAME="realvideo">2.2.1.8 RealVideo</A></H4>

<P>MPlayer unterst&uuml;tzt die Dekodierung aller Versionen von
RealVideo:</P>

<UL>
  <LI>RealVideo 1.0 (fourcc RV10) - En/Dekodierung durch <B>libavcodec</B>
    unterst&uuml;tzt</LI>
  <LI>RealVideo 2.0, 3.0, 4.0 (fourcc RV20, RV30, RV40) - Dekodierung durch die
    <B>RealPlayer Libraries</B> unterst&uuml;tzt</LI>
</UL>

<P> Es wird empfohlen, RealPlayer8 oder RealONE herunterzuladen und zu
installieren, da MPlayer deren Bibliotheken verwenden kann, um RealVideo
2.0, 3.0 oder 4.0 zu decodieren. Das <CODE>configure</CODE>-Script von
MPlayer sollte die RealPlayer-Bibliotheken an der normalen Stelle der
Vollinstallation finden. Falls nicht, kannst du <CODE>configure</CODE>
&uuml;ber die Option <CODE>--with-reallibdir</CODE> mitteilen, wo sie zu
suchen/finden sind.</P>

<P><B>Hinweis:</B> Momentan <B>funktionieren die RealPlayer-Bibliotheken nur
mit Linux, FreeBSD, NetBSD und Cygwin auf der x86 oder der Alpha-Plattform.</B>
</P>


<H4><A NAME="xvid">2.2.1.9 XviD</A></H4>

<P><A HREF="http://www.xvid.org/"><B>XviD</B></A> ist eine abgespaltene
Entwicklung des OpenDivX-Codecs. Es geschah, als ProjectMayo OpenDivX in das
ClosedSource-Projekt DivX4 (jetzt DivX5) &auml;nderte, woraufhin die Leute, die
an OpenDivX aber nicht beim ProjectMayo arbeiteten, sauer wurden und XviD
starteten. Beide Projekte haben also den selben Urpsrung.</P>

<H4>VORTEILE</H4>

<UL>
  <LI>Open Source</LI>
  <LI>Das API ist kompatibel mit DivX4, sodass es leicht ist,
    Unterst&uuml;tzung daf&uuml;r einzubauen.</LI>
  <LI>2-Pass Encodierungs-Unterst&uuml;tzung</LI>
  <LI>gute Encodierungsqualit&auml;t, h&ouml;here Geschwindigkeit als DivX4
    (man kann es w&auml;hrend des Compilierens f&uuml;r den jeweiligen Rechner
    optimieren)</LI>
</UL>

<H4>NACHTEILE</H4>

<UL>
  <LI>Es <B>decodiert</B> momentan nicht alle DivX/DivX4-Dateien sauber
    (kein Problem, da man sie ja immer noch mit der libavcodec abspielen kann).
    </LI>
  <LI>Man muss sich beim Compilieren f&uuml;r die DivX4- <B>ODER</B> 
    XviD-Unterst&uuml;tzung entscheiden.</LI>
  <LI>in der Entwicklung</LI>
</UL>

<H4>INSTALLATION DER XVID-CVS-VERSION</H4>

<P>XviD ist momentan nur als CVS erh&auml;ltlich. Hier sind die
Download- und Installations-Anweisungen:</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>&auml;ndere <CODE>Makefile.linux</CODE> deinen Bed&uuml;rfnissen
    entsprechend</LI>
  <LI><CODE>make -f Makefile.linux</CODE><LI>
  <LI>Nimm die <CODE>encore2.h</CODE> und <CODE>decore.h</CODE> vom 
    Divx4linux-Paket und kopiere diese nach <CODE>/usr/local/include/</CODE>.
    </LI>
  <LI>compiliere MPlayer neu mit
    <CODE>--with-xvidcore=/pfad/zu/libcore.a</CODE>.</LI>
</OL>


<H4><A NAME="sorenson">2.2.1.10 Sorenson</A></H4>

<P><B>Sorenson</B> ist eine von Sorenson Media entwickelte und von Apple
lizensierte Videocodecfamilie. Wir sind momentan in der Lage, alle Videos zu
decodieren, die mit einer der folgenden Sorenson-Versionen erstellt wurden:</P>

<UL>
  <LI>Sorenson 1 (fourcc <I>SVQ1</I>) - Decodierung durch <B>selbstentwickelte
    Codecs</B>. Tats&auml;chlich gibt es zwei (qualitativ nahezu identische)
    Decoder f&uuml;r SVQ1: Einer ist der in MPlayer enthaltene
    OpenSource-Codec, der andere ist der in libavcodec vorhandene Decoder.
    Du kannst sie mit <CODE>-vc svq1</CODE> respektive <CODE>-vc ffsvq1</CODE>
    benutzen. Manche Dateien funktionieren eventuell nur mit einem der beiden
    Decoder. Probier als bei problematischen Dateien beide Decoder aus.
    Der Decoder wurde von den
    <A HREF="http://www.xinehq.de">xine</A>-Autoren geschrieben.</LI>
  <LI>Sorenson 3 (fourcc <I>SVQ3</I>) - Decodierung mit den
    <B>Win32-QuickTime-Bibliotheken</B></LI>
</UL>

<H4>COMPILIERUNG VON MPLAYER MIT UNTERST&Uuml;TZUNG F&Uuml;R
QUICKTIME-BIBLIOTHEKEN</H4>

<P><B>Anmerkung:</B> Momentan wird nur die 32bit-Intel-Architektur
unterst&uuml;tzt. </P>

<OL>
  <LI>Lade die CVS-Version von  MPlayer herunter.</LI>
  <LI>Compiliere MPlayer mit:<BR>
    <CODE>$ ./configure --enable-qtx-codecs</CODE></LI>
  <LI>Lade dir das QuickTime-DLL-Paket von
    <A HREF="http://www.mplayerhq.hu/MPlayer/releases/codecs">http://www.mplayerhq.hu/MPlayer/releases/codecs</A>
    herunter.</LI>
  <LI>Entapcke die QuickTime-DLLs in dein Win32-Codec-Verzeichnis, das
    standardm&auml;&szlig;ig <CODE>/usr/lib/codecs</CODE> ist.</LI>
</OL>

s
<H3><A NAME="audio_codecs">2.2.2 Audio-Codecs</A></H3>

<P>Die wichtigsten Audiocodecs als erstes:</P>

<UL>
  <LI>MPEG layer 2 und layer 3 (MP3) Audio (<B>eingebauter</B> Code, mit
    MMX/SSE/3DNow!-Optimierungen)</LI>
  <LI>MPEG layer 1 Audio (<B>eingebauter</B> Code, mit libavcodec)</LI>
  <LI>Windows Media Audio 9 (WMAv3) (mit der DMO-DLL)</LI>
  <LI>AC3 Dolby Audio (<B>eingebauter</B> Code, mit
    MMX/SSE/3DNow!-Optimierungen)</LI>
  <LI>Ogg Vorbis Audiocodec (<B>eingebaute</B> Bibliothek)</LI>
  <LI>RealAudio: DNET (AC3 mit niedriger Bitrate), Cook, Sipro, Atrac</LI>
  <LI>QuickTime: Qualcomm und QDesign Audiocodecs</LI>
  <LI>VIVO Audio (G723, Vivo Siren)</LI>
  <LI>Voxware Audio (Verwendung der DirectShow-DLL)</LI>
  <LI>alaw, MSGSM, PCM und andere einfache, alte Audioformate</LI>
</UL>


<H4><A NAME="software_ac3">2.2.2.1 AC3-Decodierung in Software</A></H4>

<P>Dieser ist der standardm&auml;&szlig;e Dekoder f&uuml;r Dateien mit
AC3-Audio.</P>

<P>Der AC3 Dekoder kann die Audio-Ausgabe f&uuml;r 2, 4 oder 6 Lautsprecher
erzeugen. Wenn er f&uuml;r 6 Lautsprecher konfigieriert ist, unterst&uuml;tzt
dieser Decoder die Ausgabe aller AC3-Kan&auml;le an den Soundtreiber. Damit
erm&ouml;glicht er die vollst&auml;ndige "Surround Sound"-Erfahrung ohne einen
externen AC3-Decoder, der bei der Verwendung des hwac3-Codecs n&ouml;tig
ist.</P>

<P>Verwende die <CODE>-channels</CODE>-Option um die Anzahl der
Ausgabekan&auml;le zu w&auml;hlen. Verwende <CODE>-channels 2</CODE> f&uuml;r
Downmix auf Stereo. F&uuml;r Downmix auf 4 Kan&auml;le (links vorne, rechts
vorne, links Surround und rechts Surround) verwende <CODE>-channels 4</CODE>.
In diesem Fall werden alle Center-K&auml;nale gleichm&auml;&szlig;ig den
Frontkan&auml;len beigemischt. <CODE>-channels 6</CODE> gibt alle
AC3-Kan&auml;le wie Aufgezeichnet in der Reihenfolge links, rechts, 
links Surround, rechts Surround, Center und LFE aus.</P>

<P>Die Standardanzahl der Ausgabekan&auml;le ist 2.</P>

<P>Um mehr als 2 Kan&auml;le zu verwenden, musst du OSS verwenden und eine
Soundkarte besitzen, die die Anzahl der Ausgabekan&auml;le via
SNDCTL_DSP_CHANNELS ioctl unterst&uuml;tzt.  Ein Beispiel eines passenden
Treibers ist emu10k1 (verwendet bei SB Live! Karten) vom August 2001 oder neuer
(ALSA CVS sollte auch funktionieren).</P>


<H4><A NAME="hardware_ac3">2.2.2.2 AC3 Decodierung in Hardware</A></H4>

<P>Du brauchst eine AC3-f&auml;hige Soundkarte mit einem Digitalausgang
(SP/DIF). Der Treiber muss das AFMT_AC3 Format richtig unterst&uuml;tzen (wie
z.B. der f&uuml;r die C-Media-Karten). Verbinde den AC3-Decoder mit dem
SP/DIF-Ausgang, und benutze die Option <CODE>-ac hwac3</CODE>. Dieser Code
ist not experimentell, laeuft aber bekannterma&szlig;en mit C-Media-Karten,
SoundBlaster Live!-Karten mit dem ALSA-Treiber (aber nicht mit dem OSS-Treiber)
und mit den DXR3/Hollywood+-MPEG-Decoderkarten.</P>


<H4><A NAME="libmad">2.2.2.3 libmad-Unterst&uuml;tzung</A></H4>

<P><A HREF="http://mad.sourceforge.net">libmad</A> ist eine
Multiplattform-Bibliothek f&uuml;r die Decodierung von MPEG-Audio. Sie
verarbeitet kaputte Dateien nicht so gut und hat teilweise Probleme mit dem
Suchen.</P>

<P>Um die Unterst&uuml;tzung zu aktivieren, verwende configure mit der Option
<CODE>--enable-mad</CODE>.</P>


<H4><A NAME="vivo_audio">2.2.2.4 VIVO-Audio</A></H4>

<P>Der verwendete Audiocodec in VIVO-Dateien h&auml;ngt davon ab, ob es eine
VIVO/1.0- oder VIVO/2.0-Datei ist. VIVO/1.0-Dateien verwenden
<B>g.723</B>-Audio und VIVO/2.0-Dateien <B>Vivo-Siren</B>-Audio.  Beide werden
unterst&uuml;tzt.</P>


<H4><A NAME="realaudio">2.2.2.5 RealAudio</A></H4>

<P>MPlayer unterst&uuml;tzt die Dekodierung fast aller
RealAudio-Versionen:</P>

<UL>
  <LI>RealAudio DNET - Decodierung durch <B>liba52</B></LI>
  <LI>RealAudio Cook/Sipro/Atrac - Decodierung durch die
    <B>RealPlayer-Bibliotheken</B></LI>
</UL>

<P>Wie die RealPlayer Libraries installiert werden k&ouml;nnen, wird in der
<A HREF="#realvideo">RealVideo-Sektion</A> behandelt.</P>


<H4><A NAME="qdesign">2.2.2.6 QDesign-Codecs</A></H4>

<P>QDesign-Audio (fourcc: <I>QDMC</I>, <I>QDM2</I>) findest du in
MOV/QT-Dateien. Beide Versionen dieses Codecs k&ouml;nnen mit den 
QuickTime-Bibliotheken decodiert werden. Schau in der <A
HREF="#sorenson">Sorenson-Video-Codec-Sektion</A> f&uuml;r
Installationsanweisungen nach.</P>

<H4><A NAME="qclp">2.2.2.7 Qualcomm-Codec</A></H4>

<P>Qualcomm-Audiostreams (FourCC: <I>Qclp</I>) finden sich in MOV/QT-Dateien.
Sie k&ouml;nnen mit den Quicktime-Bibliotheken decidiert werden.
Installationsanweisungen findest du in der Sektion &uuml;ber den
<A HREF="#sorenson">Sorenson Videocodec</A>.</P>


<H3><A NAME="importing">2.2.3 Win32 Codec-Importierungs-HOWTO</A></H3>

<H4><A NAME="importing_vfw">2.2.3.1 VfW-Codecs</A></H4>

<P>VfW (Video for Windows) ist die alte Video-Schnittstelle f&uuml;r Windows.
Diese Codecs haben die Erweiterung .DLL oder (eher selten) .DRV.
Wenn MPlayer mit folgender Meldung fehlschl&auml;gt, ein AVI
abzuspielen:</P>

<P>&nbsp;&nbsp;&nbsp;&nbsp;<CODE>UNKNOWN video codec: HFYU (0x55594648)</CODE>
</P>

<P>...bedeutet es, dass das AVI mit einem Codec erstellt wurde, der den fourcc
HFYU besitzt (HFYU = HuffYUV-Codec, DIV3 = DivX Low Motion, usw...). Jetzt
musst du nur noch herausgefunden, welche DLL Windows l&auml;dt, um diese Datei
abzuspielen. In diesem Fall enth&auml;lt die <CODE>System.ini</CODE> diese
Information in solch einer Zeile:</P>

<P>&nbsp;&nbsp;&nbsp;&nbsp;<CODE>VIDC.HFYU=huffyuv.dll</CODE></P>

<P>Also braucht man die Datei huffyuv.dll. Hinweis: die Audio-Codecs werden
durch das MSACM-Prefix angegeben:</P>

<P>&nbsp;&nbsp;&nbsp;&nbsp;<CODE>msacm.l3acm=L3codeca.acm</CODE></P>

<P>Dies ist ein MP3 Codec. Da du nun alle n&ouml;tigen Informationen hast
(fourcc, Codec-Datei, AVI-Beispiel), solltest du per Mail um Unterst&uuml;tzung
f&uuml;r diesen Codec bitten und die Dateien auf folgenden FTP-Server
hochladen:</P>

<P>&nbsp;&nbsp;&nbsp;&nbsp;<CODE>ftp://ftp.mplayerhq.hu/MPlayer/incoming/[codecname]/</CODE></P>

<P><B>Anmerkung:</B> Auf Windows NT/2000/XP-Systemem solltest du in der Registry
nach diesen Informationen suchen, also z.B. nach "VIDC.HFYU". Um herauszufinden,
wie das geht, lies die Sektion "alte DirectShow-Methode".</P>


<H4><A NAME="importing_directshow">2.2.3.2 DirectShow Codecs</A></H4>

<P>DirectShow ist die neuere Video-Programmierschnittstelle, welche noch
schlimmer als ihr Vorg&auml;nger ist. Den Namen der DLL herauszufinden ist bei
DirectShow schwieriger, weil...</P>

<UL>
  <LI>die <CODE>system.ini</CODE> nicht mehr die ben&ouml;tigten Informationen
    enth&auml;lt (stattdessen stehen diese in der Registry), und weil</LI
  <LI>man die GUID des Codecs braucht.</LI>
</UL>

<P><B>Neue Methode:</B> mittels Microsoft GraphEdit (schnell)</P>

<OL>
  <LI>Besorg dir GraphEdit entweder aus dem DirectX-SDK oder von
    <A HREF="http://doom9.org">Doom9</A>.</LI>
  <LI>Starte <CODE>graphedit.exe</CODE>.</LI>
  <LI>W&auml;hle im Men&uuml; "Graph -&gt; Insert Filters".</LI>
  <LI>Klappe <CODE>DirectShow Filters</CODE> auf.</LI>
  <LI>Suche und w&auml;hle den richtigen Codec, dann klappe auch diesen auf.
    </LI>
  <LI>Der Eintrag <CODE>DisplayName</CODE> enth&auml;lt die gesuchte GUID.
    Diese steht nach dem Backslash (\) in geschweiften Klammern und besteht
    aus f&uuml;nf Bl&ouml;cken mit Ziffern und Buchstaben, die jeweils mit
    Punkten voneinander getrennt sind. Schreib diese GUID auf.</LI>
  <LI>Der Dateiname des Codecs steht im Eintrag <CODE>Filename</CODE>.
</OL>

<P><B>Anmerkdung:</B> Wenn es keinen Eintrag namens <CODE>Filename</CODE> gibt
und der <CODE>DisplayName</CODE>-Eintrag etwas in der Art
<CODE>device:dmo</CODE> enth&auml;lt, so handelt es sich um einen DMO-Codec.</P>

<P><B>Alte Methode</B>: Atme tief durch und beginne mit dem Durchsuchen der
Registry...</P>

<OL>
  <LI>Starte <CODE>regedit</CODE></LI>
  <LI>Dr&uuml;cke <CODE>Strg-f</CODE>, deaktiviere die ersten beiden
    Auswahlfelder und aktiviere das Dritte. Nun gib den fourcc des Codecs ein
    (z.B.: TM20).</LI>
  <LI>Du solltest ein Feld sehen, welches den Pfad und Dateinamen enth&auml;lt
    (z.B.: <CODE>C:\WINDOWS\SYSTEM\TM20DEC.AX</CODE>).</LI>
  <LI>Jetzt da man die Datei hat, braucht man die GUID. Versuche erneut zu
    suchen, aber nun nach dem Codec-Namen, nicht nach der fourcc. Der
    Codec-Name kann bei der Wiedergabe mit dem Windows Media Player
    herausgefunden werden, indem man unter Datei -&gt; Eigenschaften -&gt; 
    Erweitert nachschaut. Falls dies nichts bringt, hast du Pech. Versuche zu
    raten (suche z.B. nach: TrueMotion).</LI>
  <LI>Wenn die GUID gefunden wurde, sollte ein FriendlyName- und ein CLSID-Feld
    auftauchen. Schreibe die 16 Byte lange CLSID auf, dies ist die von uns
    ben&ouml;tigte GUID.</LI>
</OL>

<P><B>Hinweis:</B> Wenn die Suche fehlschl&auml;gt, versuche alle Auswahlfelder
zu aktivieren. Du wirst m&ouml;glicherweise falsche Ergebnisse finden, aber
vielleicht hast du auch Gl&uuml;ck...</P>

<P>Da du nun alle n&ouml;tigen Informationen hast (fourcc, GUID, Codec-Datei,
AVI-Beispiel), solltest du per Mail um Unterst&uuml;tzung f&uuml;r diesen Codec
bitten und die Dateien auf folgenden FTP-Server hochladen:</P>

<P>&nbsp;&nbsp;&nbsp;&nbsp;<CODE>ftp://ftp.mplayerhq.hu/MPlayer/incoming/[codecname]/
</CODE></P>

</BODY>
</HTML>