如何使用Node.js在线广播直播音乐以及是否有可用资源来构建一个?

如何使用Node.js在线广播直播音乐以及是否有可用资源来构建一个?,node.js,live-streaming,Node.js,Live Streaming,我对“实时流媒体web应用程序是如何工作的”不太感兴趣。最近,我想构建一个类似于在线广播的东西,可以通过所有客户端执行实时流,比如音乐、语音等。我非常熟悉Java Spring MVC和Node.js。如果有一些资源使用上述技术,了解它的工作原理对我来说将非常有帮助。提前感谢。有两篇关于它的好文章: 您还可能会发现本模块很有帮助: 最好的方法是将Node.js用作源应用程序,并将流的实际服务留给现有服务器。如果您可以通过编写源端获得所需的所有灵活性,那么就没有理由在web上重新发明流

我对“实时流媒体web应用程序是如何工作的”不太感兴趣。最近,我想构建一个类似于在线广播的东西,可以通过所有客户端执行实时流,比如音乐、语音等。我非常熟悉Java Spring MVC和Node.js。如果有一些资源使用上述技术,了解它的工作原理对我来说将非常有帮助。提前感谢。

有两篇关于它的好文章:

您还可能会发现本模块很有帮助:


最好的方法是将Node.js用作源应用程序,并将流的实际服务留给现有服务器。如果您可以通过编写源端获得所需的所有灵活性,那么就没有理由在web上重新发明流媒体

流程将如下所示:

Your Radio Source App --> Icecast (or similar) --> Listeners
在应用程序内部:

Raw audio sources --> Codecs (MP3, AAC w/ADTS, etc.) --> Icecast Source Client
基本上,您需要为您的用例使用任何您想要的方法来创建原始PCM音频流。从那里,您将把该流发送到少数编解码器,这些编解码器配置了不同的比特率。您使用的比特率和质量取决于您的用户的带宽可用性,并与您喜欢的质量进行权衡。这些天,我通常有64k的数据流用于坏的移动连接,256k的数据流用于好的连接。只要你有至少128k的数据流在那里,你就可以输出可接受的质量

Icecast源客户机现在可以是一个简单的HTTP PUT。这是非常相似的。。。动词不是
PUT
,而是
SOURCE
。(还有其他一些细微的区别,但这就是要点。)

下面的内容对您有帮助吗?有什么评论吗?