我想换16kHz pcm - >使用sox的48kHz wav。 但是,pcm文件未在sox中应用。
所以,我刚刚将pcm改为raw, 然后 sox -r 16000 -e signed -b 16 -c 1 test.raw -r 48000 out.wav
我可以申请pcm文件不转换原始文件吗?
答案 0 :(得分:1)
对于PCM文件,由于PCM是无头的,你需要添加'-t raw'作为第一个参数。
sox -t raw -r 16000 -e signed -b 16 -c 1 test.raw -r 48000 out.wav
尝试一下。
还可以尝试不同的Endian设置; -L; -B; -X 虽然一次只使用一个,但只有不使用一个不起作用。
答案 1 :(得分:0)
无需将输入文件转换为raw。 Sox可以处理pcm文件。
sox input.pcm -r 48000 output.wav
输入文件可以是.pcm或.wav。
由于.wav文件包含包含音频元数据的标头(例如采样率,位精度,文件长度等),因此您无需传递有关输入文件的任何信息。因此,不需要使用:
-r 16000 -e signed -b 16 -c 1
将pcm转换为raw你刚刚删除了文件头。