如何使音频广播直播

时间:2018-12-08 20:35:39

标签: c# .net audio stream live

我需要将音频内容广播到网络,接收并在浏览器中“即时”播放。音频内容只是mp3文件列表。在客户端,它看起来应该像无状态的无休止的音频流。就像YouTube直播一样。或像在线广播一样。 但是我对此一无所知。有人可以帮我吗?它是如何工作的,使用哪种协议发送和接收数据?有什么可以帮助我的。 最好的情况是,我正在寻找.NET的解决方案,但是对于能够提供帮助的东西(至少是了解它的总体工作原理),我将感到高兴。 谢谢。

1 个答案:

答案 0 :(得分:1)

一种方法是借助ffmpeg。

您可以使用ffmpeg创建DASH或HLS播放列表https://ffmpeg.org/ffmpeg-formats.html#hls-2

FFMPEG也支持其他流媒体解决方案。

要调用ffmpeg,您必须找到与服务器在其上运行的系统(Windows,Linux)兼容的二进制文件。这是如何从C#启动外部过程:How do I start a process from C#?

要在浏览器中播放播放列表,可以使用VideoJS。它具有对DASH和HLS的内置支持:https://videojs.com/(它也可以播放音频)

建立管理/更新播放列表的逻辑,然后只需要创建可以提供播放列表文件的HTTP服务即可。 VideoJS将为您播放。

如果您使用HLS,则可能应该阅读以下内容:https://developer.apple.com/streaming/

如果您使用DASH,请阅读以下内容: https://mpeg.chiariglione.org/standards/mpeg-dash

另一种方法是使用通常不是免费的开箱即用的解决方案: