我希望在音频流到达声卡之前对其进行操作。所以我想使用微软的sAPOs来操纵音频引擎中的音频流(vista音频架构)。
我的基本问题实际上是音频流的格式。我不知道,但我认为它是WAVE格式或RIFF。在这种情况下,有人可以帮助我吗? :)
答案 0 :(得分:2)
显然,格式is negotiated。
答案 1 :(得分:1)
你的APO告诉音频引擎它支持哪些输入和输出格式,引擎会给你任何你告诉它的东西(实际上并非100%准确 - 它大致正确,你需要阅读APO文档以获取完整信息)。
实际音频数据将是指定的任何内容,通常它们是32位浮点样本,幅度在-1.0和1.0之间。
答案 2 :(得分:1)
通常大多数声卡使用代表线性PCM音频的16位有符号整数:[http://en.wikipedia.org/wiki/Linear_pulse_code_modulation]但是总是情况(通常情况下)。通常,如果您的音频API尚未将此“原始”音频转换为浮点表示,那么您将需要一些代码来执行此操作,除非您特别喜欢对整数执行数学运算。
正如Larry已经指出的那样,许多API将为你处理浮点转换并简单地传递一个浮点缓冲区,惯例是它们是介于-1和1之间的值。
| K<