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

How online radio live stream music and are there available resources to build one with Node.js?

我对 'How live streaming web application works' 有点好奇。最近我想建立一个类似在线广播的东西,可以通过所有客户端进行直播,比如音乐、演讲等。我对 Java Spring MVC 和 Node.js 非常熟悉。如果有一些资源使用上述技术,那么了解它是如何工作的对我来说真的很有帮助。提前致谢。

有两篇关于它的好文章:

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

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

流程将如下所示:

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。 old method 非常相似...而不是 PUT,动词是 SOURCE。 (还有一些其他的细微差别,但这就是要点。)