我有一个.NET CF库,可以从MP3文件生成PCM格式的数据流(作为Stream对象)。我想让我的Windows Mobile手机播放我用该库解码的播客。我该如何播放PCM流?我试过PlaySound pinvoke的东西,但不起作用。它希望整首歌在内存中作为WAVE文件,这不是那么好,因为只有压缩的播客是30MB。
我正在考虑将流切换为块并将WAVE标头附加到每个块并在另一个块之后播放一个块。但是我还没有成功。
答案 0 :(得分:1)
如果你有.NET 3.5,那么你可以使用SoundPlayer组件。
来自MSDN:
SoundPlayer类提供了一个 简单的加载和接口 播放.wav文件。 SoundPlayer class支持加载.wav文件 来自文件路径,URL,流 包含.wav文件或嵌入式文件 包含.wav文件的资源。
答案 1 :(得分:1)
我正在尝试做同样的事情。我有一个我想玩的WAV / LPCM流。仍然没有解决方案。
也许有可能将这个低级别播放器移植到.NET CF,并以较小的块播放wav文件: http://www.codeproject.com/KB/audio-video/cswavplay.aspx?msg=1200579
让我更新。