【问题标题】:On the performance of an audio live streaming application关于音频直播应用的性能
【发布时间】:2017-01-19 14:53:49
【问题描述】:

我想开发一个应用程序,允许用户从他的计算机实时流式传输音频并通过网络进行广播。

我主要关心的是这个应用程序的性能。我希望将声音的质量保持在最高水平,并且我希望尽可能少的“延迟”。

我是否可以使用 AJAX、NodeJS 或 Ruby(Ruby on Rails?)等基于 Web 的语言达到这样的性能水平,还是应该考虑使用 C/C++ 等更底层的语言?

谢谢!

【问题讨论】:

    标签: audio web streaming low-level broadcasting


    【解决方案1】:

    应用程序的声音性能受您选择的语言影响不大。这种性能水平是通过使用正确的协议通过网络发送音频流来实现的。一个常见的错误是使用用户 TCP 协议的 HTTP,因为它有很多证书需要验证,这会延迟实时流式传输的信息。 Facebook、Instagram、Skype、Lync 等所有大型流媒体公司使用的最佳协议是 UDP 协议,由于要检查的证书级别最低,因此速度非常快。

    上面提到的公司使用不同的编程语言来构建流媒体服务器并获得几乎相同的结果,所以我认为协议会有所不同。

    如果你愿意,你可以使用 Java,我有朋友在 8x8 工作,这是美国最好的直播公司之一,他们使用 JAVA 来构建服务器和客户端。

    【讨论】:

    • 那么像 AJAX 或 NodeJS 这样的技术都使用 HTTP 协议进行通信吗?我不想重新发明轮子,所以你知道任何好的基于 Web 的技术可以让我使用 UDP 协议吗?
    • HTTP 有使用 UTD 协议实现的请求,您提到的所有技术都包括 http 请求
    猜你喜欢
    • 1970-01-01
    • 2015-03-05
    • 2013-06-03
    • 1970-01-01
    • 2019-05-10
    • 2020-11-27
    • 1970-01-01
    • 1970-01-01
    • 2015-11-27
    相关资源
    最近更新 更多