libFlac示例无法编码单声道wav文件

时间:2011-11-03 11:18:08

标签: audio wav encode avaudiorecorder

我正在使用libFlac将单波文件转换为flac。

我正在使用维基百科中wav部分的示例文件,可以是downloaded here

libFlac附带的example code在文档中说它只支持16位立体声文件。

根据libFlac文档,该库支持1-8个通道,因此应该没有任何问题。

我尝试更改示例代码,只需简单地替换行

即可编码单声道文件
//channels = 2;
channels = 1;

代码的其余部分看起来应该支持一个通道而没有任何问题,但是当我尝试编码单声道文件时,我得到了损坏的音频。 (原始音频但音频中有“孔”)。

是否有人有一个支持编码单声道文件的libFlac示例?

1 个答案:

答案 0 :(得分:0)

最后,问题是采样率。我使用的单声道wav文件的采样率为8000,当我将其编码为采样率为8000的flac时,音频已损坏,即使使用sox等实用程序

当我将wav编码为采样率为16000的flac文件时,文件编码正确。

我会向libFlack发布有关此事的问题。