Недавно я получил внешнюю звуковую карту / ЦАП (Fiio E17) и сейчас пытаюсь правильно настроить ее в своей установке Ubuntu 12.04. При подключении через USB он сразу распознается и отображается как новое устройство в настройках звука. Воспроизведение также работает в основном нормально (за исключением некоторых незначительных проблем, связанных с громкостью, которые выходят за рамки этого вопроса).
Однако при попытке проверить воспроизведение 24 бит / 96 кГц с помощью воспроизведения такого аудиофайла mplayer
я столкнулся с небольшой проблемой:
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)
Как видно из выходных данных, даже если воспроизводимый файл содержит звук 24 бит / 96 кГц, перед воспроизведением он ресэмплируется до 16 бит. Воспроизведение того же файла aplay
показывает причину:
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
Тем не менее, /proc/asound/card1/stream0
подтверждает, что оборудование поддерживает 24 бит:
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
В этот момент я заметил, что во вкладке «Оборудование» настроек звука я могу выбрать два разных профиля для звуковой карты: Digital Stereo (IEC958) и Analog Stereo. Переключение между этими двумя не приводит к каким-либо изменениям, насколько я могу судить.
Хотя указание устройства ALSA действительно помогает (то есть aplay -Dhw:1,0 sr003-02-2496.wav
работает нормально и воспроизводит файл без повторной выборки). Но поскольку Pulseaudio показывает только одно устройство / приемник Fiio в настройках звука, я не уверен, как сказать Pulseaudio использовать устройство ALSA hw:1,0
. Добавление load-module module-alsa-source device=hw:1,0
к /etc/pulse/default.pa
результатам в PulseAudio ABORTING с module.c: Failed to load module "module-alsa-source" (argument: "device=hw:1,0"): initialization failed.
во время запуска.
Итак, вот введение, вот мои актуальные вопросы :
- Как определить, какое устройство ALSA фактически использует Pulseaudio, когда я выбираю Fiio E17 в настройках звука?
- Как настроить Pulseaudio на использование устройства ALSA hw: 1,0 при выборе Fiio E17 в настройках звука?
Еще немного (надеюсь, полезно) отладочной информации:
- Выход из
aplay -L
- Выход из
aplay -l
- Выход из
pacmd list-sinks
- И, наконец, если это уместно, мой .asoundrc
mplayer -ao alsa:device=hw=1.0 sr003-02-2496.wav
и aplay -Dhw:1,0 sr003-02-2496.wav
использую правильное устройство, если это то, что вы спрашиваете.
aplay sr003-02-2496.wav
и mplayer sr003-02-2496.wav
. И да, я хотел бы использовать PulseAudio, если это возможно.
mplayer
иaplay
командные строки?