mirror of
https://github.com/mpv-player/mpv
synced 2024-12-15 03:15:52 +00:00
98a08e34c0
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@5124 b3059339-0415-0410-9bf9-f77b7e298cf2
287 lines
13 KiB
HTML
287 lines
13 KiB
HTML
<HTML>
|
|
|
|
<HEAD>
|
|
<STYLE>
|
|
.text
|
|
{font-family : Verdana, Arial, Helvetica, sans-serif;
|
|
font-size : 14px;}
|
|
</STYLE>
|
|
</HEAD>
|
|
|
|
<BODY BGCOLOR=white>
|
|
|
|
<FONT CLASS="text">
|
|
|
|
<P><B><A NAME=2.3.2>2.3.2. Audio output devices</A></P></B>
|
|
|
|
<P><B>MPlayer</B>'s audio interface is called <I>libao2</I>. It currently
|
|
contains these drivers :</P>
|
|
|
|
<TABLE BORDER=0>
|
|
|
|
<TD COLSPAN=4><P><B><FONT CLASS="text">General:</B></P></TD>
|
|
|
|
<TR><TD> </TD><TD VALIGN=top><FONT CLASS="text">oss</TD><TD> </TD><TD><FONT CLASS="text">OSS (ioctl) driver</TD></TR>
|
|
<TR><TD></TD><TD VALIGN=top><FONT CLASS="text">sdl</TD><TD></TD><TD><FONT CLASS="text">SDL driver (supports up/downsampling, <B>ESD</B>, <B>ARTS</B> etc)</TD></TR>
|
|
<TR><TD></TD><TD VALIGN=top><FONT CLASS="text">nas</TD><TD></TD><TD><FONT CLASS="text">NAS (Network Audio System) driver</TD></TR>
|
|
<TR><TD></TD><TD VALIGN=top><FONT CLASS="text">alsa5</TD><TD></TD><TD><FONT CLASS="text">native ALSA 0.5 driver</TD></TR>
|
|
<TR><TD></TD><TD VALIGN=top><FONT CLASS="text">alsa9</TD><TD></TD><TD><FONT CLASS="text">native ALSA 0.9 driver (works, but has problems -> use OSS)</TD></TR>
|
|
<TR><TD></TD><TD VALIGN=top><FONT CLASS="text">sun</TD><TD></TD><TD><FONT CLASS="text">SUN audio driver (/dev/audio) for BSD and Solaris8 users</TD></TR>
|
|
|
|
</TABLE>
|
|
|
|
<P>The fact is, Linux soundcard drivers are usually bad, and always as
|
|
incompatible as they can be. It MAY take a while to find your optimal settings.</P>
|
|
<P><UL>
|
|
<LI>if you have OSS as driver, first try with <I>-ao oss</I> (this is the default).
|
|
If you experience glitches, halts or anything out of the ordinary, have a
|
|
look at <I>-ao sdl</I> (NOTE: of course you'll have to have a new SDL library and its
|
|
devel pair installed). It helps in a lot of cases (it also supports ESD, ARTS, and
|
|
up/downsampling. /esd is GNOME's, arts is KDE's sound daemon/).</LI>
|
|
<LI>if you have ALSA version 0.5, then you ALMOST always have to use <I>-ao alsa5</I> ,
|
|
since 0.5 has buggy OSS emulation code, and will <B>crash MPlayer</B> with
|
|
a message like this:<BR>
|
|
<UL>
|
|
<CODE>DEMUXER: Too many (945 in 8390980 bytes) video packets in the buffer!</CODE></UL>
|
|
</LI>
|
|
<LI>if you have ALSA version 0.9, use <I>-ao oss</I> or <I>-ao sdl</I> as you
|
|
wish. You can also use <I>-ao alsa9</I> as it works now, however it has many
|
|
problems (losing sync, disappearing audio, etc).</LI>
|
|
</UL></P>
|
|
|
|
<P>On <B>Solaris/FreeBSD</B> systems, use the SUN audio driver with the
|
|
<I>-ao sun</I> option, otherwise you'll have no video, nor audio playing.</P>
|
|
|
|
<P><B><A NAME=2.3.2.1>2.3.2.1. Soundcard experiences, recommendations</A></B></P>
|
|
|
|
<P><TABLE BORDER=0 WIDTH=100%>
|
|
<TD COLSPAN=3><B><FONT CLASS="text">VIA onboard chipset (via82cxxx) 48Khz only</B></TD><TR>
|
|
<TD></TD><TD><FONT CLASS="text">Driver:</TD><TD><FONT CLASS="text"> from <A HREF="http://sourceforge.net/project/showfiles.php?group_id=3242&release_id=59602">here</A></TD><TR>
|
|
|
|
<TD COLSPAN=3><B><FONT CLASS="text">Aureal Vortex 2</B></TD><TR>
|
|
<TD> </TD><TD><FONT CLASS="text">OSS:</TD><TD><FONT CLASS="text">no driver</TD><TR>
|
|
<TD></TD><TD><FONT CLASS="text">OSS/Pro:</TD><TD><FONT CLASS="text">OK</TD><TR>
|
|
<TD></TD><TD><FONT CLASS="text">ALSA:</TD><TD><FONT CLASS="text">no driver</TD><TR>
|
|
<TD></TD><TD><FONT CLASS="text">Max kHz:</TD><TD>48</TD><TR>
|
|
<TD></TD><TD><FONT CLASS="text">Driver:</TD><TD><FONT CLASS="text"><A HREF="http://aureal.sourceforge.net">aureal.sourceforge.net</A></TD><TR>
|
|
<TD></TD><TD><FONT CLASS="text">Driver2:</TD><TD><FONT CLASS="text"> from <A HREF="http://makacs.poliod.hu/~pontscho/aureal/au88xx-1.1.3.tar.bz2">here</A><BR>
|
|
(<I>buffer size increased to 32k</I>)</TD><TR>
|
|
|
|
<TD COLSPAN=3><B><FONT CLASS="text">GUS PnP</B></TD><TR>
|
|
<TD></TD><TD><FONT CLASS="text">OSS:</TD><TD><FONT CLASS="text">no driver</TD><TR>
|
|
<TD></TD><TD><FONT CLASS="text">OSS/Pro:</TD><TD><FONT CLASS="text">OK</TD><TR>
|
|
<TD></TD><TD><FONT CLASS="text">ALSA:</TD><TD><FONT CLASS="text">OK</TD><TR>
|
|
<TD></TD><TD><FONT CLASS="text">Max kHz:</TD><TD><FONT CLASS="text">48</TD><TR>
|
|
|
|
<TD COLSPAN=3><B><FONT CLASS="text">SB Live!</B></TD><TR>
|
|
<TD></TD><TD><FONT CLASS="text">OSS:</TD><TD><FONT CLASS="text">Analog OK, SP/DIF won't work</TD><TR>
|
|
<TD></TD><TD><FONT CLASS="text">ALSA:</TD><TD><FONT CLASS="text">Both OK</TD><TR>
|
|
<TD></TD><TD><FONT CLASS="text">Max kHz:</TD><TD><FONT CLASS="text">192</TD><TR>
|
|
|
|
<TD COLSPAN=3><B><FONT CLASS="text">SB AWE 64</B></TD><TR>
|
|
<TD></TD><TD><FONT CLASS="text">OSS:</TD><TD><FONT CLASS="text">max 44kHz</TD><TR>
|
|
<TD></TD><TD><FONT CLASS="text">ALSA:</TD><TD><FONT CLASS="text">48kHz sounds shit</TD><TR>
|
|
<TD></TD><TD><FONT CLASS="text">Max kHz:</TD><TD><FONT CLASS="text">48</TD><TR>
|
|
|
|
<TD COLSPAN=3><B><FONT CLASS="text">Gravis UltraSound ACE</B></TD><TR>
|
|
<TD></TD><TD><FONT CLASS="text">OSS:</TD><TD><FONT CLASS="text">not OK</TD><TR>
|
|
<TD></TD><TD><FONT CLASS="text">ALSA:</TD><TD><FONT CLASS="text">OK</TD><TR>
|
|
<TD></TD><TD><FONT CLASS="text">Max kHz:</TD><TD><FONT CLASS="text">44</TD><TR>
|
|
|
|
<TD COLSPAN=3><B><FONT CLASS="text">Gravis UltraSound MAX</B></TD><TR>
|
|
<TD></TD><TD><FONT CLASS="text">OSS:</TD><TD><FONT CLASS="text">OK</TD><TR>
|
|
<TD></TD><TD><FONT CLASS="text">ALSA:</TD><TD><FONT CLASS="text">OK (?)</TD><TR>
|
|
<TD></TD><TD><FONT CLASS="text">Max kHz:</TD><TD><FONT CLASS="text">48</TD><TR>
|
|
|
|
<TD COLSPAN=3><B><FONT CLASS="text">ESS 688</B></TD><TR>
|
|
<TD></TD><TD><FONT CLASS="text">OSS:</TD><TD><FONT CLASS="text">OK</TD><TR>
|
|
<TD></TD><TD><FONT CLASS="text">ALSA:</TD><TD><FONT CLASS="text">OK (?)</TD><TR>
|
|
<TD></TD><TD><FONT CLASS="text">Max kHz:</TD><TD><FONT CLASS="text">48</TD><TR>
|
|
|
|
<TD COLSPAN=3><B><FONT CLASS="text">C-Media cards (which ones?)</B></TD><TR>
|
|
<TD></TD><TD><FONT CLASS="text">OSS:</TD><TD><FONT CLASS="text">not OK (hissing) (?)</TD><TR>
|
|
<TD></TD><TD><FONT CLASS="text">ALSA:</TD><TD><FONT CLASS="text">OK (?)</TD><TR>
|
|
<TD></TD><TD><FONT CLASS="text">Max kHz:</TD><TD><FONT CLASS="text">?</TD><TR>
|
|
|
|
<TD COLSPAN=3><B><FONT CLASS="text">Yamaha cards (*ymf*)</B></TD><TR>
|
|
<TD></TD><TD><FONT CLASS="text">OSS:</TD><TD><FONT CLASS="text">not OK (?) (maybe -ao sdl)</TD><TR>
|
|
<TD></TD><TD><FONT CLASS="text">ALSA:</TD><TD><FONT CLASS="text">OK only with ALSA 0.5 with OSS emulation <B>AND</B> <I>-ao sdl</I> (!) (?)</TD><TR>
|
|
<TD></TD><TD><FONT CLASS="text">Max kHz:</TD><TD><FONT CLASS="text">?</TD><TR>
|
|
|
|
<TD COLSPAN=3><B><FONT CLASS="text">Cards with envy24 chips (like Terratec EWS88MT)</B></TD><TR>
|
|
<TD></TD><TD><FONT CLASS="text">OSS:</TD><TD><FONT CLASS="text">?</TD><TR>
|
|
<TD></TD><TD><FONT CLASS="text">OSS/Pro:</TD><TD><FONT CLASS="text">OK</TD><TR>
|
|
<TD></TD><TD><FONT CLASS="text">ALSA:</TD><TD><FONT CLASS="text">?</TD><TR>
|
|
<TD></TD><TD><FONT CLASS="text">Max kHz:</TD><TD><FONT CLASS="text">?</TD><TR>
|
|
|
|
<TD COLSPAN=3><B><FONT CLASS="text">PC Speaker or DAC</B></TD><TR>
|
|
<TD></TD><TD><FONT CLASS="text">OSS:</TD><TD><FONT CLASS="text">OK (<I>use the SDL driver : -ao sdl</I>)</TD><TR>
|
|
<TD></TD><TD><FONT CLASS="text">ALSA:</TD><TD><FONT CLASS="text">no driver</TD><TR>
|
|
<TD></TD><TD><FONT CLASS="text">Max kHz:</TD><TD><FONT CLASS="text">the driver emulates 44.1 maybe more</TD><TR>
|
|
<TD></TD><TD><FONT CLASS="text">Driver:</TD><TD><FONT CLASS="text"><A HREF="ftp://ftp.infradead.org/pub/pcsp">ftp://ftp.infradead.org/pub/pcsp</A></TD><TR>
|
|
</TABLE></P>
|
|
|
|
<P><UL>
|
|
<LI>on Linux, use at least kernel 2.4 if possible, 2.2 isn't tested
|
|
<LI>if sound clicks when playing from CD-ROM, turn on IRQ unmasking !
|
|
for example "hdparm -u1 /dev/cdrom" (see "man hdparm" !!!)
|
|
This is recommended anyways... (for XMMS, etc...)
|
|
Read section <A HREF="cd-dvd.html#4.1">4.1</A>.
|
|
<LI>don't use your soundcard by other application ( for ex. XMMS ) !
|
|
if you use ESD, start MPlayer with the '-vo sdl:esd' option !
|
|
<LI>Please tell us how MPlayer and your soundcard(s) worked together!
|
|
</UL></P>
|
|
|
|
|
|
<P><B><A NAME=2.3.2.2>2.3.2.2. Audio plugins</A></B></P>
|
|
|
|
<P><B>MPlayer</B> has support for audio plugins. Audio plugins can be used for
|
|
changing the properties of the audio data before the sound reaches the sound
|
|
card. They are enabled using the <CODE>-aop</CODE> switch followed by the
|
|
<CODE>list=plugin1,plugin2,...</CODE> switch. The <CODE>list</CODE> switch is
|
|
required and determines which plugins that should be used and in which order
|
|
they should be executed, example:
|
|
</P>
|
|
|
|
<P> <CODE>mplayer media.avi -aop list=resample,format</CODE></P>
|
|
|
|
<P>would run the sound through the resampling plugin followed by the format
|
|
plugin.
|
|
</P>
|
|
|
|
<P>The plugins can also have switches that changes their behaviour. These
|
|
switches are explained in detail in the sections below. A plugin will execute
|
|
using default settings if it's switches are omitted. Example of how to use
|
|
plugins in combination with plugin specific switches:
|
|
</P>
|
|
|
|
<P> <CODE>mplayer media.avi -aop
|
|
list=resample,format:fout=48000:format=0x8</CODE>
|
|
</P>
|
|
|
|
<P>would set the output frequency of the resample plugin to 44100Hz and the
|
|
output format of the format plugin to AFMT_U8.
|
|
</P>
|
|
|
|
<P>Currently audio plugins can not be used in <B>MEncoder</B>.</P>
|
|
|
|
|
|
<P><B><A NAME=2.3.2.2.1>2.3.2.2.1. Up/Downsampling</A></B></P>
|
|
|
|
<P><B>MPlayer</B> fully supports up/down sampling of the sound. This plugin can
|
|
for example be used if you have a fixed frequency sound card or if you are
|
|
stuck with an olqd sound card that is only capable of max 44.1kHz.
|
|
Limitations in your hardware are not auto detected, so you have to specify
|
|
the sample frequency explicitly. This plugin has one switch:
|
|
<CODE>fout</CODE> which is used for setting the desired output sample
|
|
frequency, it defaults to 48kHz, and is given in
|
|
<Hz>.
|
|
</P>
|
|
|
|
<P>Usage :<BR>
|
|
<CODE>mplayer media.avi -aop list=resample:fout=<required
|
|
frequency in Hz, like 44100></CODE></P>
|
|
|
|
|
|
<P><B><A NAME=2.3.2.2.2>2.3.2.2.2. Surround Sound decoding</A></B></P>
|
|
|
|
<P><B>MPlayer</b> has an audio plugin that can decode matrix encoded
|
|
surround sound. Dolby Surround is an example of a matrix encoded format.</p>
|
|
|
|
<P>Many files with 2 channel audio actually contain matrixed surround
|
|
sound.</p>
|
|
|
|
<P>To use this feature, you will need a sound-card supporting at least 4 channels.</P>
|
|
|
|
<P>Usage :<BR>
|
|
<CODE>mplayer media.avi -aop list=surround</CODE></P>
|
|
|
|
|
|
<P><B><A NAME=2.3.2.2.3>2.3.2.2.3. Sample format converter</A></B></P>
|
|
|
|
<P>If your sound card driver doesn't support signed 16bit int, this plugin can
|
|
be used to change the format to one which your sound card can understand. It
|
|
has one switch <CODE>format</CODE> which can be set to one of the numbers
|
|
found in libao2/afmt.h. This plugin is hardly ever needed and is intended for
|
|
advanced users. Observe that this plugin only changes the sample format and
|
|
not the sample frequency or the number of channels.
|
|
</P>
|
|
|
|
<P>Usage :<BR>
|
|
<CODE>mplayer media.avi -aop
|
|
list=format:format=<required output format></CODE>
|
|
</P>
|
|
|
|
|
|
<P><B><A NAME=2.3.2.2.4>2.3.2.2.4. Delay</A></B></P>
|
|
|
|
<P>This plugin delays the sound and is intended as an example of how to develop
|
|
new plugins. It can not be used for anything useful from users perspective
|
|
and is mentioned here for the sake of completeness only. Do not use this
|
|
plugin unless you are a developer.</P>
|
|
|
|
<P><B><A NAME=2.3.2.2.5>2.3.2.2.5. Software volume control</A></B></P>
|
|
|
|
<P>This plugin is a software replacement for the volume control, and
|
|
can be used in machines with broken mixer device. It can also be
|
|
used if one wants to change the output volume from <B>MPlayer</B>
|
|
without changing the PCM volume setting in the mixer. It has one
|
|
switch <CODE>volume</CODE> that is used for setting the initial
|
|
sound level. The initial sound level can be set to values between 0
|
|
and 255 and defaults to 101 which equals 0dB amplification. Use this
|
|
plugin with caution since it can reduce the signal to noise ratio of
|
|
the sound. In most cases it is best to set the level for the PCM
|
|
sound to max, leave this plugin out and control the output level to
|
|
your speakers with the mixers master volume control. If there is an
|
|
external amplifier connected to the computer (this is almost always
|
|
the case), the noise level can be minimized by adjusting the master
|
|
level and the volume knob on the amplifier until the hissing noise
|
|
in the background is gone.
|
|
</P>
|
|
|
|
<P>Usage :<BR>
|
|
<CODE>mplayer media.avi -aop
|
|
list=volume:volume=<0-255></CODE>
|
|
</P>
|
|
|
|
<P>This plugin also have a compressor or "soft-clipping" capabilities.
|
|
Compression can be used if the dynamic range of the sound is very
|
|
high or if the dynamic range of the loudspeakers is very
|
|
low. Observe that this feature creates distortion and should be
|
|
considered a last resort.
|
|
</P>
|
|
|
|
<P>Usage :<BR>
|
|
<CODE>mplayer media.avi -aop
|
|
list=volume:softclip</CODE>
|
|
</P>
|
|
|
|
|
|
<P><B><A NAME=2.3.2.2.6>2.3.2.2.6. Extrastereo</A></B></P>
|
|
|
|
<P>This plugin increases (linearly) the difference between left and right
|
|
channels (as the XMMS extrastereo plugin) which has some of "live" effect
|
|
on playback.
|
|
</P>
|
|
|
|
<P>Usage :<BR>
|
|
<CODE>mplayer media.avi -aop list=extrastereo</CODE><BR>
|
|
<CODE>mplayer media.avi -aop list=extrastereo:mul=3.45</CODE></P>
|
|
|
|
<P>The default coefficient (<CODE>mul</CODE>) is a float number that defaults
|
|
to 2.5. If you set it to 0.0, you will have a mono sound (average of both
|
|
channels), if you set it to 1.0, sound will be unchanged.</P>
|
|
|
|
|
|
<P><B><A NAME=2.3.2.2.7>2.3.2.2.7. Volume normalizer</A></B></P>
|
|
|
|
<P>This plugin maximizes the volume while maintaining distortionless
|
|
sound.
|
|
</P>
|
|
|
|
<P>Usage :<BR>
|
|
<CODE>mplayer media.avi -aop list=volnorm</CODE><BR>
|
|
|
|
</BODY>
|
|
</HTML>
|