为什么 ALSA 仅以 44100Hz 录制?

为什么 ALSA 仅以 44100Hz 录制?

我正在尝试在 Ubuntu 14.04.3 Server 上设置音频录制。我需要以 16000Hz 录制音频,并且我正在使用外部 USB 声卡,它肯定支持此采样率。

但是,当我尝试时:

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

我总是收到以下警告:

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

这种情况总是发生。我也尝试了不同的音频设备,但它只给我 44100Hz。

这是我的/etc/asound.conf

pcm.custom {
        type hw
        card UA25EX
}

ctl.custom {
        type hw
        card UA25EX
}

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

我也尝试在该文件中明确设置采样率,但这只会导致配置错误,从而无法再找到该设备。

那么我该怎么做才能以 16000Hz 的频率录音?

编辑

> 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 kHz。

相关内容