我正在使用libFlac将单声道波形文件转换为flac。
我正在使用Wikipedia中wav部分的示例文件,该文件可以为downloaded here
libFlac随附的example code在文档中说,它仅支持16位立体声文件。
根据libFlac文档,该库支持1-8个通道,因此应该没有任何问题。
我尝试将示例代码更改为仅通过替换行即可简单地编码单声道文件
//channels = 2;
channels = 1;
其余的代码看起来应该可以支持一个通道,而没有任何问题,但是当我尝试对单声道文件进行编码时,我得到了损坏的音频。 (原始音频,但音频中带有“孔”)。
是否有一个libFlac示例支持编码单声道文件?
最佳答案
最后,问题是采样率。我使用的mono wav文件的采样率为8000,当我将其编码为8000采样率的flac时,即使使用了sox之类的实用程序,音频也被破坏了
当我将wav编码为flac文件(采样率为16000)时,文件已正确编码。
我将就此问题向libFlack发布。