Почему ALSA записывает только на частоте 44100 Гц?

Я пытаюсь настроить аудиозапись на сервере Ubuntu 14.04.3. Мне нужно записывать звук в 16000 Гц, и я использую внешнюю звуковую карту USB, которая определенно поддерживает эту частоту дискретизации.

Тем не менее, когда я пытаюсь:

 arecord -f S16_LE -r 16000 -D default -c 1 test.wav

Я всегда получаю следующее предупреждение:

Warning: rate is not accurate (requested = 48000Hz, got = 44100Hz)

И это происходит всегда. Я также пробовал разные аудиоустройства, но это дает только 44100 Гц.

Вот мой /etc/asound.conf:

pcm.custom {
        type hw
        card UA25EX
}

ctl.custom {
        type hw
        card UA25EX
}

pcm.!default pcm.custom
ctl.!default ctl.custom

Я также попытался установить частоту дискретизации в этом файле явно, но это приводит только к неправильной конфигурации, так что устройство больше не найдено.

Так что я могу сделать, чтобы записать в 16000 Гц?

РЕДАКТИРОВАТЬ

> arecord -d 1 -v test.wav
Recording WAVE 'test.wav' : Unsigned 8 bit, Rate 8000 Hz, Mono
arecord: set_params:1233: Sample format non available
Available formats:
- S16_LE


> cat /proc/asound/U0x41e0x30d3/stream0
Playback:
  Status: Stop
  Interface 1
    Altset 1
    Format: S16_LE
    Channels: 2
    Endpoint: 1 OUT (ADAPTIVE)
    Rates: 48000, 44100

Capture:
  Status: Stop
  Interface 2
    Altset 1
    Format: S16_LE
    Channels: 1
    Endpoint: 2 IN (ASYNC)
    Rates: 48000, 44100

1 ответ

Решение

Так называемая "Sound Blaster Play!" Устройство поддерживает только 44,1 и 48 кГц.

Другие вопросы по тегам