如何用arecord录制单声道?
How to record mono with arecord?
我正在使用 SpeechRecognition 文本转语音包。然而,它对 WAV 文件的输入必须是单声道的。当我使用 arecord -D plughw:0 --duration=5 -f cd -vv ~/test.wav
并使用 aplay test.wav
播放时,我得到(播放):
Playing WAVE 'test.wav' : Signed 16 bit Little Endian, Rate 44100 Hz, Stereo
如何让 arecord
以单声道录制?我也尝试添加 --channels=1
但是当它开始记录并显示有关其 (Plug PCM: Route conversion PCM
) 设置的信息时,它总是显示:
...
channels : 2
...
我的 USB PnP Sound Device
的设置显示频道为 1。
即使我已将其设置为 1,它也会以立体声播放。怎么了?
你的问题比较奇怪,不过我一般都是用sox来记录或者转换的
您可以使用rec命令直接录制:
rec -r 16000 -c 1 -d 5 ~/test.wav
在这种情况下,另请参阅此问题:https://raspberrypi.stackexchange.com/questions/4715/sox-alsa-sound-recording-issue
或者您可以将 wav 文件从立体声转换为单声道:sox ~/test.wav -c 1 ~/test_mono.wav
文档和示例:http://linux.die.net/man/1/sox
我正在使用 SpeechRecognition 文本转语音包。然而,它对 WAV 文件的输入必须是单声道的。当我使用 arecord -D plughw:0 --duration=5 -f cd -vv ~/test.wav
并使用 aplay test.wav
播放时,我得到(播放):
Playing WAVE 'test.wav' : Signed 16 bit Little Endian, Rate 44100 Hz, Stereo
如何让 arecord
以单声道录制?我也尝试添加 --channels=1
但是当它开始记录并显示有关其 (Plug PCM: Route conversion PCM
) 设置的信息时,它总是显示:
...
channels : 2
...
我的 USB PnP Sound Device
的设置显示频道为 1。
即使我已将其设置为 1,它也会以立体声播放。怎么了?
你的问题比较奇怪,不过我一般都是用sox来记录或者转换的
您可以使用rec命令直接录制:
rec -r 16000 -c 1 -d 5 ~/test.wav
在这种情况下,另请参阅此问题:https://raspberrypi.stackexchange.com/questions/4715/sox-alsa-sound-recording-issue
或者您可以将 wav 文件从立体声转换为单声道:sox ~/test.wav -c 1 ~/test_mono.wav
文档和示例:http://linux.die.net/man/1/sox