0

所以我有一个字节流:我可以保存带有 .mp3 扩展名的文件,它可以正常播放,但你会怎么做才能进行实时播放?它实际上是一个 mp3,但它是流式传输的,因此它位于一个字节数组中。您可以使用 .mp3 扩展名保存它,它会很好地播放,如果它是一个 mp3 文件,为什么不能从流中播放?我如何从流中播放它。

            byte[] d1 = mywave
            //System.IO.File.WriteAllBytes(@"C:\" + t.ToString() + ".mp3", d1);
            MemoryStream buff = new MemoryStream(d1);
            SoundPlayer sp = new SoundPlayer(buff);
            sp.Play();

抛出波头已损坏。/ 无效操作异常

那么我将如何在流上创建音频标头?

4

3 回答 3

0

我没有“玩过”它,但可能是因为它是 mp3 ......

The SoundPlayer class cannot play other file types, such as .wma or .mp3.    
If you want to play other file types, you can use the Windows Media Player control

http://msdn.microsoft.com/en-us/library/system.media.soundplayer(v=vs.100).aspx

于 2013-03-09T00:39:42.890 回答
0

SoundPlayer 类播放 WAV 文件,而不是 MP3。有几个库可以播放 MP3,请参阅MSDN 论坛帖子。

于 2013-03-09T00:39:53.280 回答
0

您可以通过文件开头的音频文件代码更改前 4 个字节!

..如果那是你需要的..祝你好运

于 2013-03-09T00:17:48.403 回答