2009-07-06 134 views
2

我有一个.NET CF库,用于从MP3文件生成PCM格式的数据流(作为Stream对象)。我想让我的Windows Mobile手机播放我用该库解码的播客。我怎样才能播放PCM流?我已经尝试过PlaySound pinvoke的东西,但不起作用。它预计整首歌曲将作为WAVE文件存储在内存中,这并不好,因为压缩的播客只有30MB。在.NET上播放PCM音频流CF

我正在考虑将流切片为块,并将WAVE头添加到每个块并在其他块之后播放一个块。但我还没有成功。

回答

1

如果你有.NET 3.5,那么你可以使用SoundPlayer组件。

从MSDN:

的声音播放类提供了加载和播放 一个.wav文件 简单的界面。 SoundPlayer 类支持从文件路径,URL,加载.wav文件 ,该文件 包含.wav文件或包含.wav文件的嵌入式 资源。

1

我正在尝试做同样的事情。我正在播放WAV/LPCM流。仍然无解。

也许可能端口这种低级别的球员到.NET CF,并发挥更小的块的wav文件: http://www.codeproject.com/KB/audio-video/cswavplay.aspx?msg=1200579

通知我。

+1

顺便说一句,忘了提及:SoundPlayer的工作原理与PlaySound一样,它在播放之前会将整个wav文件加载到内存中。 – 2009-08-12 12:41:51