Recientemente recibí una tarjeta de sonido externa / DAC (Fiio E17) y actualmente estoy tratando de configurarla correctamente en mi instalación de Ubuntu 12.04. Al enchufarlo a través de USB, se reconoce de inmediato y aparece como un nuevo dispositivo en la configuración de audio. La reproducción también funciona bien (excepto algunos problemas menores relacionados con el volumen, que están fuera del alcance de esta pregunta).
Sin embargo, al intentar probar la reproducción de 24 bits / 96 kHz reproduciendo un archivo de audio con este tipo mplayer
, encontré un pequeño problema:
Opening audio decoder: [pcm] Uncompressed PCM audio decoder
AUDIO: 96000 Hz, 2 ch, s24le, 4608.0 kbit/100.00% (ratio: 576000->576000)
Selected audio codec: [pcm] afm: pcm (Uncompressed PCM)
==========================================================================
AO: [pulse] 96000Hz 2ch s16le (2 bytes per sample)
Como se puede ver en la salida, aunque el archivo reproducido contiene audio de 24 bits / 96 kHz, se vuelve a muestrear a 16 bits antes de la reproducción. Reproducir el mismo archivo con aplay
muestra el motivo:
Playing WAVE 'sr003-02-2496.wav' : Signed 24 bit Little Endian in 3bytes, Rate 96000 Hz, Stereo
aplay: set_params:1081: Sample format non available
Available formats:
- U8
- S16_LE
- S16_BE
- S32_LE
- S32_BE
- FLOAT_LE
- FLOAT_BE
- MU_LAW
- A_LAW
Sin embargo, /proc/asound/card1/stream0
confirma que el hardware admite 24 bits:
FiiO FiiO USB DAC-E17 at usb-0000:00:1a.0-1.1, full speed : USB Audio
Playback:
Status: Running
Interface = 3
Altset = 1
Packet Size = 388
Momentary freq = 44100 Hz (0x2c.199a)
Interface 3
Altset 1
Format: S16_LE
Channels: 2
Endpoint: 3 OUT (ADAPTIVE)
Rates: 32000, 44100, 48000, 96000
Interface 3
Altset 2
Format: S24_3LE
Channels: 2
Endpoint: 3 OUT (ADAPTIVE)
Rates: 32000, 44100, 48000, 96000
En este punto, noté que en la pestaña de hardware de la configuración de sonido, puedo seleccionar dos perfiles diferentes para la tarjeta de sonido: estéreo digital (IEC958) y estéreo analógico. Sin embargo, cambiar entre estos dos no produce ningún cambio, por lo que puedo decir.
Sin embargo, especificar el dispositivo ALSA ayuda (es decir, aplay -Dhw:1,0 sr003-02-2496.wav
funciona bien y reproduce el archivo sin volver a muestrearlo). Pero dado que Pulseaudio solo muestra un dispositivo / receptor Fiio en la configuración de sonido, no estoy seguro de cómo le diría a Pulseaudio que use el dispositivo ALSA hw:1,0
. Agregando load-module module-alsa-source device=hw:1,0
a/etc/pulse/default.pa
resultados en Pulseaudio abortando module.c: Failed to load module "module-alsa-source" (argument: "device=hw:1,0"): initialization failed.
durante el inicio.
Entonces, esa es la introducción, aquí están mis preguntas reales :
- ¿Cómo puedo determinar qué dispositivo ALSA utiliza realmente Pulseaudio cuando selecciono el Fiio E17 en la configuración de sonido?
- ¿Cómo le digo a Pulseaudio que use el dispositivo ALSA hw: 1,0 cuando selecciono el Fiio E17 en mi configuración de sonido?
Información de depuración más (con suerte útil):
- La salida de
aplay -L
- La salida de
aplay -l
- La salida de
pacmd list-sinks
- Y finalmente, en caso de que sea relevante, mi .asoundrc
mplayer -ao alsa:device=hw=1.0 sr003-02-2496.wav
y aplay -Dhw:1,0 sr003-02-2496.wav
uso el dispositivo correcto, si eso es lo que estás preguntando.
aplay sr003-02-2496.wav
y mplayer sr003-02-2496.wav
. Y sí, me gustaría usar PulseAudio si es posible.
mplayer
yaplay
?