2012-08-06 140 views

回答

1

示例代码将播放来自文件的原始PCM数据。诀窍是将数据从wav文件转换为这种格式。微软的WAV文件是这样的:

https://ccrma.stanford.edu/courses/422/projects/WaveFormat/

的Wav文件只存储原始的PCM数据。你只需从wav文件中去掉头文件并将其余文件转储到文件中(扩展名不重要,但我喜欢使用.raw)。也就是说,您可以编写一个程序:将字节44之后的所有内容复制到一个新文件中,或者直接将所有内容读入缓冲区。将任一格式传递给pulseaudio示例,并且您应该很好。

需要注意的事项:文件和系统的字节顺序;一位深度;渠道数量。这些位于wav标题中,您可能必须在播放数据之前先阅读它们并告诉pa_simple。虽然,我不确定pa_simple是否为您检测到这些信息。我喜欢使用异步实现,并且直接输入格式。

-E