javascript - 通过 nodejs 服务器 + socket.io 从 mp3 文件同步流式传输音乐

标签 javascript node.js streaming websocket socket.io

我的服务器上有一个 mp3 文件。

我希望所有访问该 url 的客户都能同步收听该音乐。

也就是。

假设文件播放了 6 分钟。

我在上午 10:00 开始播放这首歌

上午 10:03 发出的请求应该从歌曲的第 3 分钟开始收听。

我所有的客户都应该同步收听这首歌。

如何使用 nodejs 和 socket.io 实现这一点?

最佳答案

编辑:如果您想完全按照要求进行操作,链接上的答案更匹配:

https://stackoverflow.com/a/26029102/67945

我最初的回答与 ipv4 多播的好处无关。


您正在寻找的是流媒体。

随着您的听众基数的增长,使用流媒体(相对于每个客户端都有自己的开放连接)的好处特别明显,但提要仍然使用相同的带宽。否则您会很快陷入带宽问题。

流式传输是一种协议(protocol)(如 http),您可以 check a list of Streaming Servers here

一个非常流行(且免费)的流媒体服务器是 IceCast .
使用一点 Flash 你可以拥有 a client player .

关于javascript - 通过 nodejs 服务器 + socket.io 从 mp3 文件同步流式传输音乐,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9231182/

相关文章:

javascript - 为什么引导模式关闭事件 "stack"?

javascript - 如何用钩子(Hook)取消 sails.js 升力

node.js - 配置 nginx-ingress 在字节到达时将其转发到底层 HTTP 服务

node.js - SequelizeJS : Best way to get min ID and max ID in a table

servlets - 如何使用 ffmpeg 创建播放列表/不同带宽?

java - 尝试在 yahoo streaming-benchmark 上运行 STORM_TEST 时出错

javascript - html javascript 折叠 Accordion

javascript - 单击按钮时隐藏显示脚本

node.js - 如何将 RxJs observable 的结果作为 Node.js 的剩余响应返回

node.js - 如何正确地 require mocha.opts 中的模块?