如何在 C# 中从内存流中播放 MP3?

Posted

技术标签:

【中文标题】如何在 C# 中从内存流中播放 MP3?【英文标题】:How can I play an MP3 from a memory stream in C#? 【发布时间】:2010-12-22 11:35:25 【问题描述】:

我正在尝试播放 MP3 声音,但我需要从内存流中播放它(我没有实际文件)。我最好的选择是什么? mciSendString 接受文件名作为参数,但不接受内存流。 winmm的PlaySound可以播放mp3文件吗?

谢谢!

【问题讨论】:

这真的是一个纯 C 的问题吗?如果没有,请包含其他标签。 嗨罗恩。您应该回到之前的问题,并将对您最有帮助的答案标记为“已接受”答案。这会让人们更有动力帮助你。 Play Audio from a Stream using C#的可能重复 【参考方案1】:

Alvas.Audio 见下方代码

//Memory stream with mp3 audio data
MemoryStream ms = new MemoryStream();
Mp3Reader mr = new Mp3Reader(ms);
PlayerEx plex = new PlayerEx();
plex.OpenPlayer(mr.ReadFormat());
plex.AddData(mr.ReadData());
plex.StartPlay();

【讨论】:

以上是关于如何在 C# 中从内存流中播放 MP3?的主要内容,如果未能解决你的问题,请参考以下文章

从内存流播放 mp3/wav 文件到网页

从内存流中读取存储的 PDF

查找流 (mp3) 信息(持续时间、比特率)

从 WPF 中的内存流(不包含 wav 标头)播放

在 C# 中从特定时间点将 Mp3 文件合并在一起

如何在 ActionScript 3 中从缓冲区 (ByteArray/Stream) 播放 MP3 声音?