1
0
mirror of https://github.com/mpv-player/mpv synced 2024-12-11 17:37:23 +00:00
mpv/DOCS/xml/es/audio.xml
nauj27 97e7f799d8 sync
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@11741 b3059339-0415-0410-9bf9-f77b7e298cf2
2004-01-03 23:08:26 +00:00

1221 lines
41 KiB
XML

<?xml version="1.0" encoding="iso-8859-1"?>
<!-- synced with 1.13 -->
<sect2 id="audio-dev">
<title>Dispositivos de salida de audio</title>
<sect3 id="sync">
<title>Sincronización de Audio/Video</title>
<para>
La interfaz de audio de <application>MPlayer</application> se llama
<emphasis>libao2</emphasis>. Actualmente contiene los siguientes
controladores:
</para>
<informaltable>
<tgroup cols="2">
<thead>
<row><entry>Controlador</entry><entry>Comentario</entry></row>
</thead>
<tbody>
<row><entry>oss</entry><entry>
controlador OSS (ioctl) (soporta hardware AC3 passthrough)
</entry></row>
<row><entry>sdl</entry><entry>
controlador SDL (soporta demonios de sonido como <emphasis role="bold">ESD</emphasis>
y <emphasis role="bold">ARTS</emphasis>)
</entry></row>
<row><entry>nas</entry><entry>
controlador NAS (Network Audio System)
</entry></row>
<row><entry>alsa5</entry><entry>
controlador nativo ALSA 0.5
</entry></row>
<row><entry>alsa9</entry><entry>
controlador nativo ALSA 0.9 (soporta hardware AC3 passthrough)
</entry></row>
<row><entry>sun</entry><entry>
controlador de sonido SUN (<filename>/dev/audio</filename>) para usuarios de BSD y Solaris8
</entry></row>
<row><entry>macosx</entry><entry>
controlador MacOSX nativo
</entry></row>
<row><entry>win32</entry><entry>
controlador Win32 nativo
</entry></row>
<row><entry>arts</entry><entry>
controlador ARTS nativo (mayormente para usuarios de KDE)
</entry></row>
<row><entry>esd</entry><entry>
controlador ESD nativo (mayormente para usuarios de GNOME)
</entry></row>
</tbody>
</tgroup>
</informaltable>
<para>
Los controladores para tarjetas de sonido en Linux tienen problemas
de compatibilidad. Por ese motivo <application>MPlayer</application>
tiene la característica de tener <emphasis>propiamente</emphasis>
codificados los controladores de sonido que lo habilitan para
mantener una sincronización audio/video correcta. Desgraciadamente,
algunos autores de controladores no tienen cuidado en codificar esta
característica debido a que no es necesaria para reproducir MP3s o
efectos de sonido.
</para>
<para>
Otros reproductores de medios como
<ulink url="http://avifile.sourceforge.net">aviplay</ulink>
o <ulink url="http://xine.sourceforge.net">xine</ulink>
posiblemente funcionen out-of-the-box con estos controladores porque
usan métodos simples con temporización interna. Las mediciones muestran
que sus métodos no son tan eficientes como el de
<application>MPlayer</application>.
</para>
<para>
Usando <application>MPlayer</application> con un controlador de sonido
correctamente escrito nunca debe resultar en pérdida de sincronización
de A/V relacionada con el audio, excepto con archivos muy mal creados
(consulte la página de manual para solucionar el problema si ocurre).
</para>
<para>
Si piensa que tiene un controlador de audio en mal estado, pruebe la
opción <option>-autosync</option>, lo que debe solucionar sus problemas.
Vea la página de manual para información detallada.
</para>
<itemizedlist>
<title>Algunas notas:</title>
<listitem><para>
Si tiene un controlador OSS, primero pruebe <option>-ao oss</option> (este
es el que se usa por defecto). Si experimenta cortes, tirones o algo fuera
de lo normal, pruebe <option>-ao sdl</option> (NOTA: necesita tener las
bibliotecas SDL y los archivos de cabecera instalados). El controlador
de audio SDL le ayudará en muchos casos y también soporta ESD (GNOME) y
ARTS (KDE).
</para></listitem>
<listitem><para>
Si tiene la versión 0.5 de ALSA, entonces casi siempre tendrá que usar
<option>-ao alsa5</option>, porque ALSA 0.5 tiene un código de emulación
de OSS que falla, y puede <emphasis role="bold">hacer fallar
<application>MPlayer</application></emphasis> con un mensaje como este:
<screen>
DEMUXER: Demasiados (945 en 8390980 bytes) paquetes de video en el buffer!<!--
--></screen>
</para></listitem>
<listitem><para>
En Solaris, use el controlador de audio de SUN con la opción <option>-ao sun</option>,
si no lo hace no funcionará ni el video ni el audio.
</para></listitem>
<listitem><para>
Si el sonido se entrecorta mientras se reproduce desde un CD-ROM, active
el enmascaramiento de IRQ, e.g. <command>hdparm -u1 /dev/cdrom</command>
(<command>man hdparm</command>). Normalmente siempre es buena idea y se
describe con más detalle en la sección de <link linkend="drives">CD-ROM</link>.
</para></listitem>
</itemizedlist>
</sect3>
<sect3 id="experiences">
<title>Experiencias con tarjetas de sonido, recomendaciones</title>
<para>
En Linux, es altamente recomendado el uso de un kernel 2.4.x. El kernel 2.2
no ha sido probado.
</para>
<para>
Los controladores de sonido de Linux son principalmente proporcionados
mediante una versión libre de OSS. Estos controladores han sido reemplazados
por <ulink url="http://www.alsa-project.org">ALSA</ulink> (Advanced Linux Sound
Architecture (Arquitectura Avanzada de Sonido en Linux)) en las series de
desarrollo de 2.5. Si su distribución no tiene ALSA puede que quiera
probar esos controladores si tiene problemas con el sonido. Los controladores
ALSA son generalmente superiores a OSS en compatibilidad, rendimiento y
características. Pero algunas tarjetas de sonido solo están soportadas
por los controladores de sonido comerciales OSS de
<ulink url="http://www.opensound.com/">4Front Technologies</ulink>.
Estos también tienen soporte para varios sistemas no-Linux.
</para>
<informaltable>
<tgroup cols="8">
<colspec colname="c1"/>
<colspec colname="c2"/>
<colspec colname="c3"/>
<colspec colname="c4"/>
<colspec colname="c5"/>
<colspec colname="c6"/>
<colspec colname="c7"/>
<colspec colname="c8"/>
<spanspec spanname="driver" namest="c2" nameend="c5"/>
<spanspec spanname="ossfree" namest="c2" nameend="c2"/>
<spanspec spanname="alsa" namest="c3" nameend="c3"/>
<spanspec spanname="osspro" namest="c4" nameend="c4"/>
<spanspec spanname="others" namest="c5" nameend="c5"/>
<thead>
<row>
<entry morerows="2" valign="middle">TARJETA DE SONIDO</entry>
<entry spanname="driver">CONTROLADOR</entry>
<entry morerows="2" valign="middle">Max kHz</entry>
<entry morerows="2" valign="middle">Max Canales</entry>
<entry morerows="2" valign="middle">Max Opens
<footnote id="maxopens">
<para>el número de aplicaciones que pueden usar el dispositivo
<emphasis>a la vez</emphasis>.</para>
</footnote>
</entry>
</row>
<row>
<entry spanname="ossfree">OSS/Free</entry>
<entry spanname="alsa">ALSA</entry>
<entry spanname="osspro">OSS/Pro</entry>
<entry spanname="others">otros</entry>
</row>
</thead>
<tbody>
<row>
<entry>VIA onboard (686/A/B, 8233, 8235)</entry>
<entry>
<ulink url="http://sourceforge.net/project/showfiles.php?group_id=3242&amp;release_id=59602">via82cxxx_audio</ulink>
</entry>
<entry>snd-via82xx</entry>
<entry></entry>
<entry></entry>
<entry>4-48 kHz o 48 kHz solo, dependiendo del chipset</entry>
<entry></entry>
<entry></entry>
</row>
<row>
<entry>Aureal Vortex 2</entry>
<entry>no</entry>
<entry>no</entry>
<entry>OK</entry>
<entry>
<ulink url="http://aureal.sourceforge.net">Linux Aureal Drivers</ulink>
<ulink url="http://makacs.poliod.hu/~pontscho/aureal/au88xx-1.1.3.tar.bz2">tamaño del buffer incrementado a 32k</ulink>
</entry>
<entry>48</entry>
<entry>4.1</entry>
<entry>5+</entry>
</row>
<row>
<entry>SB Live!</entry>
<entry>Analog OK, SP/DIF no funciona</entry>
<entry>Ambos OK</entry>
<entry>Ambos OK</entry>
<entry>
<ulink url="http://opensource.creative.com">Creative's OSS driver (soporte SP/DIF)</ulink>
</entry>
<entry>192</entry>
<entry>4.0/5.1</entry>
<entry>32</entry>
</row>
<row>
<entry>SB 128 PCI (es1371)</entry>
<entry>OK</entry>
<entry>?</entry>
<entry></entry>
<entry></entry>
<entry>48</entry>
<entry>stereo</entry>
<entry>2</entry>
</row>
<row>
<entry>SB AWE 64</entry>
<entry>max 44kHz</entry>
<entry>48kHz sounds bad</entry>
<entry></entry>
<entry></entry>
<entry>48</entry>
<entry></entry>
<entry></entry>
</row>
<row>
<entry>GUS PnP</entry>
<entry>no</entry>
<entry>OK</entry>
<entry>OK</entry>
<entry></entry>
<entry>48</entry>
<entry></entry>
<entry></entry>
</row>
<row>
<entry>Gravis UltraSound ACE</entry>
<entry></entry>
<entry></entry>
<entry></entry>
<entry></entry>
<entry></entry>
<entry></entry>
<entry></entry>
</row>
<row>
<entry>Gravis UltraSound MAX</entry>
<entry>OK</entry>
<entry>OK (?)</entry>
<entry></entry>
<entry></entry>
<entry>48</entry>
<entry></entry>
<entry></entry>
</row>
<row>
<entry>ESS 688</entry>
<entry>OK</entry>
<entry>OK (?)</entry>
<entry></entry>
<entry></entry>
<entry>48</entry>
<entry></entry>
<entry></entry>
</row>
<row>
<entry>C-Media cards (¿cuáles?)</entry>
<entry>no OK (silbido) (?)</entry>
<entry>Tarjetas C-Media (CMI8338/8738)</entry>
<entry>OK</entry>
<entry></entry>
<entry></entry>
<entry>OK SP/DIF funciona con ALSA 0.9.x</entry>
<entry>?</entry>
<entry></entry>
<entry></entry>
<entry>44</entry>
<entry>estéreo</entry>
<entry>1</entry>
</row>
<row>
<entry>Tarjetas Yamaha (*ymf*)</entry>
<entry>no OK (?) (quizá <option>-ao sdl</option>)</entry>
<entry>OK solo con ALSA 0.5 con emulación OSS
<emphasis role="bold">Y</emphasis> <option>-ao sdl</option> (!) (?)</entry>
<entry></entry>
<entry></entry>
<entry></entry>
<entry></entry>
<entry></entry>
</row>
<row>
<entry>Tarjetas con chips envy24 (como Terratec EWS88MT)</entry>
<entry>?</entry>
<entry>?</entry>
<entry>OK</entry>
<entry></entry>
<entry>?</entry>
<entry></entry>
<entry></entry>
</row>
<row>
<entry>PC Speaker o DAC</entry>
<entry>OK</entry>
<entry>no</entry>
<entry></entry>
<entry>
<ulink url="http://www.geocities.com/stssppnn/pcsp.html">Linux PC speaker OSS driver</ulink>
</entry>
<entry>El controlador emula 44.1, quizá más.</entry>
<entry>mono</entry>
<entry>1</entry>
</row>
</tbody>
</tgroup>
</informaltable>
<para>
La realimentación sobre este documento siempre es bienvenida. Por favor
díganos como funcionan juntos <application>MPlayer</application> y su(s)
tarjeta(s) de sonido.
</para>
</sect3>
<sect3 id="af">
<title>Filtros de audio</title>
<para>
Los plugions de audio viejos han sido reemplazados por una nueva capa de
filtros de audio. Los filtros de audio son usados para cambiar propiedades
de los datos de audio antes de que el sonido alcance la tarjeta de sonido.
La activación y desactivación de los filtros normalmente se hace de manera
automática pero puede también forzarse. Los filtros son activados cuando
las propiedades de los datos de audio difieren de los requeridos por la
tarjeta de sonido y desactivados si no son necesarios. La opción
<option>-af filtro1,filtro2,...</option> se usa para forzar la activación
automática de filtros o para insertar filtros que no se activan de manera
automática. Los filtros son ejecutados en el orden en el que aparecen en
la lista separados por comas.
</para>
<para>
Ejemplo:
<screen>mplayer -af resample,pan <replaceable>movie.avi</replaceable></screen>
debe enviar el sonido a través del filtro de muestreo seguido del filtro pan.
Observe que la lista no debe contener espacios, si no fallará.
</para>
<para>
Los filtros también tienen opciones que cambian su comportamiento. Estas opciones
son explicadas en detalle en las secciones siguientes. Un filtro se ejecutará
usando la configuración por defecto si se omiten las opciones. Aquí hay un ejemplo
de cómo usar los filtros en combinación con las opciones específicas del filtro:
<screen>mplayer -af resample=11025,pan=1:0.5:0.5 -channels 1 -srate 11025 <replaceable>media.avi</replaceable></screen>
debe establecer la frecuencia de salida mediante el filtro de muestreo a 11025Hz y
reducir el audio a 1 canal usando el filtro pan.
</para>
<para>
La ejecución general de la capa de filtros es controlada usando la
opción <option>-af-adv</option>. Esta opción tiene dos subopciones:
</para>
<para>
<option>force</option> es un pequeño campo que controla cómo los filtros
se insertan y que optimizaciones de velocidad/precisión se usarán:
</para>
<variablelist>
<varlistentry>
<term><option>0</option></term>
<listitem><para>
Usa inserción automática de filtros y optimiza de acuerdo a la velocidad de la CPU.
</para></listitem>
</varlistentry>
<varlistentry>
<term><option>1</option></term>
<listitem><para>
Usa inserción automática de filtros y optimiza para la velocidad más alta.
<emphasis>Advertencia:</emphasis> Algunas características en los filtros de
audio pueden fallar sin avisar, y la calidad del sonido puede verse afectada.
</para></listitem>
</varlistentry>
<varlistentry>
<term><option>2</option></term>
<listitem><para>
Usa inserción automática de filtros y optimiza para calidad.
</para></listitem>
</varlistentry>
<varlistentry>
<term><option>3</option></term>
<listitem><para>
No usa inserción automática de filtros ni optimización.
<emphasis>Advertencia:</emphasis> Posiblemente esto hará fallar
a MPlayer.
</para></listitem>
</varlistentry>
<varlistentry>
<term><option>4</option></term>
<listitem><para>
Usa inserción automática de filtros igual que el 0 de más arriba,
pero usa procesamiento en coma flotante cuando es posible.
</para></listitem>
</varlistentry>
<varlistentry>
<term><option>5</option></term>
<listitem><para>
Usa inserción automática de filtros como el 1 de más arriba,
pero usa procesamiento en coma flotante cuando es posible.
</para></listitem>
</varlistentry>
<varlistentry>
<term><option>6</option></term>
<listitem><para>
Usa inserción automática de filtros como el 2 de más arriba,
pero usa procesamiento en coma flotante cuando es posible.
</para></listitem>
</varlistentry>
<varlistentry>
<term><option>7</option></term>
<listitem><para>
No usa inserción automática de filtros como el 3 de más arriba,
y usa procesamiento en coma flotante cuando es posible.
</para></listitem>
</varlistentry>
</variablelist>
<para>
<option>list</option> es un alias de la opción -af.
</para>
<para>
La capa de filtros también se ve afectada por las siguientes opciones
generales:
</para>
<variablelist>
<varlistentry>
<term><option>-v</option></term>
<listitem><para>
Incrementa el nivel de información mostrada y hace que la mayoría de
los filtros impriman mensajes de estado extras.
</para></listitem>
</varlistentry>
<varlistentry>
<term><option>-channels</option></term>
<listitem><para>
Esta opción establece el número de canales de salida que desea que
use su tarjeta de sonido. Esto también afecta al número de canales
que se decodifican desde el medio. Si el medio contiene menos canales
de los que se solicitan desde los filtros de canales (vea más abajo)
automáticamente serán insertados. La ruta será la ruta por defecto para
el filtro de canales.
</para></listitem>
</varlistentry>
<varlistentry>
<term><option>-srate</option></term>
<listitem><para>
Esta opción selecciona la tasa de muestreo que quiere que use su tarjeta
de sonido (por supuesto las tarjetas tienen límites en este aspecto). Si
la frecuencia de muestreo de su tarjeta de sonido es diferente de la que
tiene el medio actual, el filtro de muestreo (vea más abajo) debe ser insertado
en la capa de filtros de audio para compensar la diferencia.
</para></listitem>
</varlistentry>
<varlistentry>
<term><option>-format</option></term>
<listitem><para>
Esta opción establece el formato de muestreo entre la capa de filtros de
audio y la tarjeta de sonido. Si el formato de muestreo solicitado de su
tarjeta de sonido es diferente del que tiene el medio actual, un filtro de
formato (vea más abajo) será insertado para rectificar la diferencia.
</para></listitem>
</varlistentry>
</variablelist>
<sect4 id="af_resample">
<title>Super/Submuestreo</title>
<para>
MPlayer soporta completamente super/sub-muestreo de sonido a través
del filtro <option>resample</option>. Puede ser usado si
tiene una frecuencia fija para la tarjeta de sonido o si tiene una tarjeta
de sonido antigua que solo tiene como capacidad máxima 44.1kHz. Este filtro
es activado automáticamente si es necesario, pero también puede ser habilitado
explícitamente en la línea de órdenes. Tiene tres opciones:
</para>
<variablelist>
<varlistentry>
<term><option>srate &lt;8000-192000&gt;</option></term>
<listitem><para>
es un entero usado para establecer la frecuencia de muestreo de salida
en Hz. El rango válido para éste parámetro es de 8kHz a 192kHz. Si
la frecuencia de muestreo de entrada y de salida son la misma o si
este parámetro es omitido el filtro automáticamente es descargado. Una
frecuencia de muestreo alta normalmente mejora la calidad el audio,
especialmente usada en combinación con otros filtros.
</para></listitem>
</varlistentry>
<varlistentry>
<term><option>sloppy</option></term>
<listitem><para>
es un parámetro binario opcional que permite que la frecuencia de salida
sea ligeramente diferente que la frecuencia dada por <option>srate</option>.
Esta opción puede ser usada si el inicio de la reproducción es extremadamente
lento. Está activado por defecto.
</para></listitem>
</varlistentry>
<varlistentry>
<term><option>type &lt;0-2&gt;</option></term>
<listitem><para>
es un entero opcional entre <literal>0</literal> y <literal>2</literal> que
elije el método de muestreo a usar. Aquí <literal>0</literal> representa
interpolación lineal como método de muestreo, <literal>1</literal> representa
muestreo usando un banco de filtros de poli-fase y procesamiento con enteros y
<literal>2</literal> representa muestreo usando un banco de filtro de poli-fase
y procesamiento en coma flotante. La interpolación lineal es extremadamente
rápida, pero sufre de peor calidad de sonido especialmente cuando se usa
para sobre-muestreo. La mejor calidad se obtiene con <literal>2</literal>
pero este método también sufre de una gran carga de la CPU.
</para></listitem>
</varlistentry>
</variablelist>
<para>Ejemplo:
<screen>mplayer -af resample=44100:0:0</screen>
debe establecer la frecuencia de salida del filtro de muestreo a 44100Hz usando
escalado exacto de la frecuencia de salida y la interpolación lineal.
</para>
</sect4>
<sect4 id="af_channels">
<title>Cambiando el número de canales</title>
<para>
El filtro <option>channels</option> puede ser usado para añadir y quitar
canales, también puede usarse para enrutar o copiar canales. Es activado
automáticamente cuando la salida de la capa de filtro de audio difiere de
la capa de entrada o cuando es pedido por otro filtro. Este filtro se descarga
a sí mismo si no es necesario. El número de opciones es dinámico:
</para>
<variablelist>
<varlistentry>
<term><option>nch &lt;1-6&gt;</option></term>
<listitem><para>
es un entero entre <literal>1</literal> y <literal>6</literal> que es usado
para establecer el número de canales de salida. Esta opción es requerida, dejarla
vacía resultará en un error en tiempo de ejecución.
</para></listitem>
</varlistentry>
<varlistentry>
<term><option>nr &lt;1-6&gt;</option></term>
<listitem><para>
es un entero entre <literal>1</literal> y <literal>6</literal> que es usada para
especificar el número de enrutamientos. Este parámetro es opcional, Si se omite
se usará el enrutamiento por defecto.
</para></listitem>
</varlistentry>
<varlistentry>
<term><option>from1:to1:from2:to2:from3:to3...</option></term>
<listitem><para>
son pares de números entre <literal>0</literal> y <literal>5</literal>
que definen donde debe ser enrutado cada canal.
</para></listitem>
</varlistentry>
</variablelist>
<para>
Si solo se da <option>nch</option> se usa el enrutado por defecto, funciona
de la siguiente manera: Si el número de canales de salida es mayor que el
número de canales d eentrada se insertarán canales vacíos (excepto al mezclar
de mono a estéreo, entonces el canal mono es repetido en ambos canales de salida).
Si el número de canales de salida es menor que el número de canales de entrada
los canales sobrantes serán truncados.
</para>
<para>
Ejemplo 1:
<screen>mplayer -af channels=4:4:0:1:1:0:2:2:3:3 <replaceable>media.avi</replaceable></screen>
cambiará el número de canales a 4 y establecerá 4 rutas que cambian
el canal 0 y el canal 1 y dejan el canal 2 y 3 intactos. Observe que
si el medio contiene dos canales serán reproducidos, canales 2 y 3
deben contener silencio pero 0 y 1 pueden seguir siendo intercambiados.
</para>
<para>
Ejemplo 2:
<screen>mplayer -af channels=6:4:0:0:0:1:0:2:0:3 <replaceable>media.avi</replaceable></screen>
cambiará el número de canales a 6 y establecerá 4 rutas que copian
el canal 0 a los canales 0 a 3. CAnal 4 y 5 contendrán silencio.
</para>
</sect4>
<sect4 id="af_format">
<title>Conversor del formato de muestreo</title>
<para>
El filtro <option>format</option> convierte entre diferentes formatos de muestreo.
Se activa automáticamente cuando es necesario por la tarjeta de sonido u otro
filtro.
</para>
<variablelist>
<varlistentry>
<term><option>bps &lt;number&gt;</option></term>
<listitem><para>
puede ser <literal>1</literal>, <literal>2</literal> o <literal>4</literal> y
denota el número de bytes por muestra. Esta opción es requerida, dejarla vacía
resulta en un error en tiempo de ejecución.
</para></listitem>
</varlistentry>
<varlistentry>
<term><option>f &lt;format&gt;</option></term>
<listitem><para>
es una cadena de texto que describe el formato de muestreo. La cadena es
una concatenación de: <option>alaw</option>, <option>mulaw</option> o
<option>imaadpcm</option>, <option>float</option> o <option>int</option>,
<option>unsigned</option> o <option>signed</option>, <option>le</option> o
<option>be</option> (little o big endian). Esta opción es requerida,
dejarla vacía resultará en un error en tiempo de ejecución.
</para></listitem>
</varlistentry>
</variablelist>
<para>
Ejemplo:
<screen>mplayer -af format=4:float <replaceable>media.avi</replaceable></screen>
establecerá el formato de salida a 4 bytes por muestra en datos en coma flotante.
</para>
</sect4>
<sect4 id="af_delay">
<title>Retardo</title>
<para>
El filtro <option>delay</option> retarda el sonido en los loudspeakers de manera
que el sonido de diferentes canales llega a la posición del oyente simultáneamente.
Esto solo es útil si tiene más de 2 loudspeakers. Este filtro tiene un número
variable de parámetros:
</para>
<variablelist>
<varlistentry>
<term><option>d1:d2:d3...</option></term>
<listitem><para>
son números en coma flotante que representan retardos en ms que deben
ser impuestos en los diferentes canales. El retardo mínimo es 0ms y el
máximo es 1000ms.
</para></listitem>
</varlistentry>
</variablelist>
<para>
Para calcular el retardo requerido para los diferentes canales haga lo siguiente:
</para>
<orderedlist>
<listitem><para>
Mida la distancia a los loudspeakers en metros en relación con la posición
del oyente, dando las distancias de s1 a s5 (para un sistema 5.1).
No hay punto en compensación para el sub-woofer (no debe oir la diferencia
de ningún modo).
</para></listitem>
<listitem><para>
Reste las distancias s1 a s5 de la máxima distancia p.e.
s[i] = max(s) - s[i]; i = 1...5
</para></listitem>
<listitem><para>
Calcule el retardo requerido en ms como
d[i] = 1000*s[i]/342; i = 1...5
</para></listitem>
</orderedlist>
<para>
Ejemplo:
<screen>mplayer -af delay=10.5:10.5:0:0:7:0 <replaceable>media.avi</replaceable></screen>
retardará delantero izquierdo y derecho en 10.5ms, los dos canales traseros
y el sub en 0ms y el canal central en 7ms.
</para>
</sect4>
<sect4 id="af_volume">
<title>Control de volumen por software</title>
<para>El control de volumen de software está implementado mediante el
filtro de audio <option>volume</option>. Use este filtro con precaución
porque puede reducir la relación señal ruido para el sonido. En la mayoría
de los casos es mejor establecer el nivel para el sonido PCM al máximo, dejar
este filtro sin usar y controlar el nivel de salida de sus altavoces con el
control de volumen master del mezclador. En el caso de que su tarjeta
de sonido tenga un mezclador PCM digital en lugar de analógico, y oiga
distorsión, use el mezclador MASTER en su lugar. Si hay un amplificador externo
conectado al ordenador (este es casi siempre el caso), el nivel de ruido puede
minimizarse ajustando el nivel del master y el volumen knob del amplificador
hasta que desaparezca el sonido de silbido de fondo. Este filtro tiene dos
opciones:
</para>
<variablelist>
<varlistentry>
<term><option>v &lt;-200 - +60&gt;</option></term>
<listitem><para>
es un número en coma flotante entre <literal>-200</literal> and <literal>+60</literal>
que representa el nivel de volumen en dB. El valor por defecto es 0dB.
</para></listitem>
</varlistentry>
<varlistentry>
<term><option>c</option></term>
<listitem><para>
es un control binario que cambia clipping por soft activado y desactivado.
Soft-clipping puede hacer el sonido mucho más suave si se usan altos niveles
de volumen. Active esta opción si el rango dinámico de los loudspeakers es
muy bajo. Tenga cuidado ya que esta característica crea distorsión y debe
ser considerada como última opción.
</para></listitem>
</varlistentry>
</variablelist>
<para>
Ejemplo:
<screen>mplayer -af volume=10.1:0 <replaceable>media.avi</replaceable></screen>
amplificará el sonido por 10.1dB y hard-clip si el nivl de sonido es demasiado alto.
</para>
<para>
Este filtro tiene una segunda característica: Mides el nivel de sonido máximo
y lo muestra, después MPlayer termina. Esta estimaciónd el volumen puede
usarse para establecer el nivel de sonido en MEncoder de manera que el rango
dinámico máximo sea utilizado.
</para>
</sect4>
<sect4 id="af_equalizer">
<title>Ecualizador</title>
<para>
El filtro <option>equalizer</option> representa un ecualizador de 10 bandas
gráficas en octavas, implementado usando filtros paso banda IIR de orden 10.
Esto significa que funciona sin importar el tipo de audio que está siendo
reproducido. Las frecuencias centrales para las 10 bandas son:
</para>
<informaltable>
<tgroup cols="2">
<thead>
<row>
<entry>Banda No.</entry><entry>Frecuencia central</entry>
</row>
</thead>
<tbody>
<row><entry>0</entry><entry>31.25 Hz</entry></row>
<row><entry>1</entry><entry>62.50 Hz</entry></row>
<row><entry>2</entry><entry>125.0 Hz</entry></row>
<row><entry>3</entry><entry>250.0 Hz</entry></row>
<row><entry>4</entry><entry>500.0 Hz</entry></row>
<row><entry>5</entry><entry>1.000 kHz</entry></row>
<row><entry>6</entry><entry>2.000 kHz</entry></row>
<row><entry>7</entry><entry>4.000 kHz</entry></row>
<row><entry>8</entry><entry>8.000 kHz</entry></row>
<row><entry>9</entry><entry>16.00 kHz</entry></row>
</tbody>
</tgroup>
</informaltable>
<para>
Si la tasa de muestreo de sonido que está siendo reproducido es menor que
la frecuencia central para una banda de frecuencia, entonces esta banda
es deshabilitada. Un fallo conocido con este filtro es que las características
para la banda más alta no son completamente simétricas si la tasa de muestreo
es cercana a la frecuencia dentral de la banda. Este problema puede ser
solucionado sobre-muestreando el sonido usando el filtro de remuestreo
antes de que se use este filtro.
</para>
<para>
Este filtro tiene 10 parámetros:
</para>
<variablelist>
<varlistentry>
<term><option>g1:g2:g3...g10</option></term>
<listitem><para>
son números en coma flotante entre <literal>-12</literal> y <literal>+12</literal>
representando la ganancia en dB para cada banda de frecuencia.
</para></listitem>
</varlistentry>
</variablelist>
<para>
Ejemplo:
<screen>mplayer -af equalizer=11:11:10:5:0:-12:0:5:12:12 <replaceable>media.avi</replaceable></screen>
amplificará el sonido en la región superior e inferior de frecuencia mientras
cancela casi por completo alrededor de 1kHz.
</para>
</sect4>
<sect4 id="af_panning">
<title>Filtro de panning</title>
<para>
Use el filtro <option>pan</option> para mezclar canales arbitrariamente.
Básicamente se trata de una combinación del conrol de volumen y el filtro
de canales. Hay dos usos principalmente para este filtro:
</para>
<orderedlist>
<listitem><para>
Mezclando varios canales a solo unos pocos, estéreo a mono por ejemplo.
</para></listitem>
<listitem><para>
Variando el &quot;ancho&quot; del altavoz central en un sistema de sonido surround.
</para></listitem>
</orderedlist>
<para>
Este filtro es dificil de usar, y requiere algunos arreglos antes de
obtener los resultados deseados. El número de opciones para este filtro
depende el número de canales de salida:
</para>
<variablelist>
<varlistentry>
<term><option>nch &lt;1-6&gt;</option></term>
<listitem><para>
es un entero entre <literal>1</literal> and <literal>6</literal> y es usado
para establecer el número de canales de salida. Esta opción es requerida, dejarla
vacía resultará en un error en tiempo de ejecución.
</para></listitem>
</varlistentry>
<varlistentry>
<term><option>l00:l01:l02:..l10:l11:l12:...ln0:ln1:ln2:...</option></term>
<listitem><para>
son números en coma flotante entre <literal>0</literal> y <literal>1</literal>.
<option>l[i][j]</option> determina cuantos de los canales de entrada j son
mezclados en el canal de salida i.
</para></listitem>
</varlistentry>
</variablelist>
<para>
Ejemplo 1:
<screen>mplayer -af pan=1:0.5:0.5 -channels 1 <replaceable>media.avi</replaceable></screen>
mezclará de estéreo a mono.
</para>
<para>
Ejemplo 2:
<screen>mplayer -af pan=3:1:0:1:0.5:0.5 -channels 3 <replaceable>media.avi</replaceable></screen>
dará 3 canales de salida dejando canales 0 y 1 intactos, y mezclando
canales 0 y 1 en un canal de salida 2 (que puede ser enviado a un
sub-woofer por ejemplo).
</para>
</sect4>
<sect4 id="af_sub">
<title>Sub-woofer</title>
<para>
El filtro <option>sub</option> añade un canal de sub woofer al flujo de
audio. Los datos de audio usados para crear el canal de sub-woofer son
una media del sonido en el canal 0 y el canal 1. El sonido resultante es
entonces filtrado paso-baja por un filtro de Butterworth de 4º orden con
una frecuencia de corte por defecto de 60Hz y añadido a un canal separado
en el flujo de audio. Advertencia: Desactive este filtro cuando reproduzca
DVDs con sonido Dolby Digital 5.1, de otro modo este filtro puede estropear
el sonido del sub-woofer. Este filtro tiene dos parámetros:
</para>
<variablelist>
<varlistentry>
<term><option>fc &lt;20-300&gt;</option></term>
<listitem><para>
es un número opcional en coma flotante usado para establecer la frecuencia
de corte del filtro en Hz. El rango válido es 20Hz a 300Hz. Para el mejor
resultado pruebe la frecuencia de corte tan baja como sea posible. Esto
mejorará la experiencia de sonido estéreo o surround. La frecuencia de
corte por defecto es 60Hz.
</para></listitem>
</varlistentry>
<varlistentry>
<term><option>ch &lt;0-5&gt;</option></term>
<listitem><para>
es un entero opcional entre <literal>0</literal> y <literal>5</literal>
que determina el número de canal en el que insertera el sub-canal de audio.
Por defecto el número de canales es <literal>5</literal>. Observe que el
número de canales automáticamente será incrementado a
<replaceable>ch</replaceable> si es necesario.
</para></listitem>
</varlistentry>
</variablelist>
<para>
Ejemplo:
<screen>mplayer -af sub=100:4 -channels 5 <replaceable>media.avi</replaceable></screen>
añadirá un canal de sub-woofer con una frecuencia de corte de
100Hz al canal de salida 4.
</para>
</sect4>
<sect4 id="af_surround">
<title>Decodificador de Surround-sound</title>
<para>
Sonido codificado con matriz de codificación de surround puede ser
decodificado con el filtro <option>surround</option>. Dolby Surround es
un ejemplo de formato codificado en matriz. Algunos archivos con audio
en 2 canales actualmente contienen audio surround en matrices. Para usar
esta característica necesita una tarjeta de sonido que soporte al menos
4 canales. Este filtro tiene un parámetro:
</para>
<variablelist>
<varlistentry>
<term><option>d &lt;0-1000&gt;</option></term>
<listitem><para>
es un número en coma flotante opcional entre <literal>0</literal> y
<literal>1000</literal> usado para establecer el tiempo de retardo en ms
para los altavoces traseros. Este retardo debe se establecido de la siguiente
manera: si d1 es la distandia desde la posición del oyente hasta los altavoces
frontales y d2 es la distancia desde la posición del oyente hasta los
altavoces traseros, entonces el retardo d debe ser de 15ms si &lt;= d2 y
a 15 + 5*(d1-d2) si d1 &gt; d2. El valor por defecto para d es 20ms.
</para></listitem>
</varlistentry>
</variablelist>
<para>
Ejemplo:
<screen>mplayer -af surround=15 -channels 4 <replaceable>media.avi</replaceable></screen>
añadirá decodificación de sonido surround con 15ms de retardo para el
sonido de los altavoces traseros.
</para>
</sect4>
<sect4 id="af_export">
<title>Exportador de audio</title>
<para>
Este filtro de audio exporta la señal entrante de otro proceso usando mapeado
de memoria (<literal>mmap()</literal>). Las zonas de memoria mapeada contienen
una cabecera:
<programlisting>
int nch /* número de canales */
int size /* tamaño del buffer */
unsigned long long counter /* Usado para mantener la sincronización, es
actualizado cada vez que se exportan nuevos
datos */
</programlisting>
El resto son datos de 16bit de carga (no-interpolados).
</para>
<variablelist>
<varlistentry>
<term><option>mmapped_file</option></term>
<listitem><para>
El archivo que quiere que este filtro exporte. Por defecto se mapea a
<filename>~/.mplayer/mplayer-af_export</filename>.
</para></listitem>
</varlistentry>
<varlistentry>
<term><option>nsamples</option></term>
<listitem><para>
Número de muestras por canal. Por defecto es <literal>512</literal> muestras.
</para></listitem>
</varlistentry>
</variablelist>
<para>
Ejemplo:
<screen>mplayer -af export=/tmp/mplayer-af_export:1024 medio.avi</screen>
debe exportar 1024 muestras por canal a <filename>/tmp/mplayer-af_export</filename>.
</para>
</sect4>
</sect3>
<sect3 id="audio-plugins">
<title>Plugins de audio (desaprobado)</title>
<note><para><emphasis role="bold">Los plugins de audio han sido desaprobados
por los filtros de audio y serán eliminados pronto.</emphasis></para></note>
<para>
<application>MPlayer</application> tiene soporte para plugins de audio. Los
plugins de audio pueden usarse para cambiar las propiedades de los datos de
audio antes de que alcancen la tarjeta de sonido. Se activan usando el
conmutador <option>-aop</option> que toma el argumento
<option>list=plugin1,plugin2,...</option>. El argumento <option>list</option>
es requerido y determina qué plugins deben usarse y en qué orden deben ser
ejecutados. Ejemplo:
<screen>mplayer <replaceable>media.avi</replaceable> -aop list=resample,format</screen>
enviará el sonido a través del plugin de remuestreo seguido por el plugin
de formato.
</para>
<para>
Los plugins también pueden tener conmutadores que cambian su comportamiento.
Estos conmutadores son explicados en detalle en las secciones siguientes. Un
plugin se ejecutará usando la configuración por defecto si se omiten los
conmutadores. Aquí hay un ejemplo de cómo usar los plugins en combinación con
conmutadores específicos del plugin:
<screen>mplayer <replaceable>media.avi</replaceable> -aop list=resample,format:fout=44100:format=0x8</screen>
establecerá la frecuencia de salida del plugin de remuestreo a 44100Hz y el
formato de salida del plugin de formato a AFMT_U8.
</para>
<para>
Actualmente los plugins de audio no pueden usarse en
<application>MEncoder</application>.
</para>
<sect4 id="updn-sampling">
<title>Sobre/Submuestreo</title>
<para>
<application>MPlayer</application> soporta por completo sobre/submuestreo del sonido.
Este plugin puede usarse si tiene una tarjeta de sonido con una frecuencia fija o si
tiene una tarjeta de sonido antigua que solo es capaz como máximo de usar 44.1 kHz.
Las limitaciones en su hardware no son detectadas, por lo que debe especificar la
frecuencia de muestreo explícitamente. Este plugin tiene un conmutador: <option>fout</option>
que se usa para establecer la frecuencia de muestreo de salida deseada. Por defecto es
48 kHz, y viene dada en Hz.
</para>
<para>
Uso:
<screen>
mplayer <replaceable>media.avi</replaceable> -aop list=resample:fout=<replaceable>freq</replaceable></screen>
donde <literal><replaceable>freq</replaceable></literal> es la frecuencia
en Hz, como <literal>44100</literal>.
</para>
<note>
<para>
La frecuencia de salida no debe ser escalada por encima del valor por defecto.
Escalar por encima de este valor puede causar que los flujos de audio y video
sean reproducidos en movimiento lento además de distorsión del audio.
</para>
</note>
</sect4>
<sect4 id="surround-decode">
<title>Decodificación de Sonido Surround</title>
<para>
<application>MPlayer</application> tiene un plugin de audio que puede decodificar
sonido codificado con matriz de sonido surround. Dolby Surround es un ejemplo de un
formato codificado en matriz. Algunos archivos con 2 canales de audio actualmente
contienen sonido surround en matriz. Para usar esta característica necesita una
tarjeta de sonido que soporte al menos 4 canales.
</para>
<para>
Uso:
<screen>mplayer <replaceable>media.avi</replaceable> -aop list=surround</screen>
</para>
</sect4>
<sect4 id="sample-format-conv">
<title>Conversor de formato de muestreo</title>
<para>
Si su controlador de la tarjeta de sonido no soporta tipos de datos
enteros de 16-bit con signo, este plugin puede usarse para cambiar el formato
a uno que su tarjeta de sonido pueda entender. Tiene un conmutador,
<option>format</option>, que puede establecer a uno de los números encontrados
en <filename>libao2/afmt.h</filename>. Este plugin puede ser complicado, es dificil
que sea necesario usarlo y se supone que es para usuarios avanzados. Tenga en mente
que este plugin solo cambia el formato de muestreo y no la frecuencia de muestreo
o el número de canales.
</para>
<para>
Uso:
<screen>
mplayer <replaceable>media.avi</replaceable> -aop list=format:format=<replaceable>outfmt</replaceable></screen>
donde <literal><replaceable>outfmt</replaceable></literal> es el
formato de salida requerido.
</para>
</sect4>
<sect4 id="audio-delay">
<title>Retardo</title>
<para>
Este plugin retarda el sonido y está hecho como un ejemplo de cómo
se pueden desarrollar nuevos plugins. No puede ser usado para nada útil
desde el punto de vista de los usuarios y se menciona aquí únicamente por
completitud. No use este plugin a menos que sea un desarrollador.
</para>
</sect4>
<sect4 id="sw-volume">
<title>Control de volumen por software</title>
<para>
Este plugin es un reemplazo de sofware para el control de volumen, y puede
ser usado en máquinas con un dispositivo mezclador en mal estado. También
puede usarse si se quiere cambiar el volumen de salida de
<application>MPlayer</application> sin cambiar la configuración de volumen
PCM en el mezclador. Tiene un conmutador <option>volume</option> que se usa
para establecer el nivel inicial de sonido. El nivel inicial de sonido puede
ser establecido con valores entre 0 y 255 y por defecto toma 101 que es igual
a 0dB de amplificación. Use este plugin con cuidado porque puede reducir la
relación señal ruido para el sonido. En la mayoría de los caos es mejor
establecer el nivel para el PCM al valor máximo, dejar este plugin sin usar
y controlar el nivel de salida de sus altavoces con el control de volumen
principal del mezclador. Si hay un amplificador externo conectado al ordenador
(lo que casi siempre es el caso), el nivel de ruido puede minimizarse ajustando
el nivel del principal y el volumen knob en el amplificador hasta que el
ruido del silbido de fondo deje de oirse.
</para>
<para>
Uso:
<screen>
mplayer <replaceable>media.avi</replaceable> -aop list=volume:volume=<replaceable>0-255</replaceable></screen>
</para>
<para>
Este plugin tiene también capacidades de compresor o "recortador-software".
La compresión puede usarse si el rango dinámigo del sonido es muy alto
o si el rango dinámico de los loudspeakers es muy bajo. Queda avisado de que
esta característica crea distorsión y debe ser considerada como último
recurso.
</para>
<para>
Uso:
<screen>
mplayer <replaceable>media.avi</replaceable> -aop list=volume:softclip</screen>
</para>
</sect4>
<sect4 id="extrastereo">
<title>Extrastereo</title>
<para>
Este plugin (linealmente) incrementa la diferencia entre los canales izquierdo y
derecho (como el plugin extraestereo de <application>XMMS</application>) lo que
es algunas veces una especie de efecto "live" durante la reproducción.
</para>
<para>
Uso:
<screen>
mplayer <replaceable>media.avi</replaceable> -aop list=extrastereo
mplayer <replaceable>media.avi</replaceable> -aop list=extrastereo:mul=3.45<!--
--></screen>
El coeficiente por defecto (<option>mul</option>) es un número en coma flotante
que por defecto vale 2.5. Si lo establece en <literal>0.0</literal>, obtendrá
sonido mono (la media de ambos canales). Si lo establece en <literal>1.0</literal>,
el sonido no tendrá cambios, si lo establece a <literal>-1.0</literal>, los canales
izquierdo y derecho serán intercambiados.
</para>
</sect4>
<sect4 id="volnorm">
<title>Normalizador de volumen</title>
<para>
Este plugin maximiza el volumen sin distorsionar el sonido.
</para>
<para>
Uso:
<screen>mplayer <replaceable>media.avi</replaceable> -aop list=volnorm</screen>
</para>
</sect4>
</sect3>
</sect2>