我有一个关于语音识别的项目。虽然我使用了库" sndfile.h"但我仍然在阅读输入声音。我有一个问题:函数sf_readf_float()
读取的数据是时域信号,不是吗?如果没有,那么它是什么?是否有任何公式将其转换为时域信号?
答案 0 :(得分:0)
是的,libsndfile返回的数据是时域数据:来自输入文件的音频样本。函数sf_readf_float
以“帧”返回样本,一帧是在给定时间点来自每个通道的一组样本。此外,sf_readf_float
将样本缩放到[-1.0,1.0]范围内 - 有关详细信息,请参阅this note
。
查看sndfile-tools,例如使用libsndfile读取声音文件的代码。 sndfile-mix-to-mono示例应该是一个很好的起点。