audio - 网络音频直播

标签 audio streaming audio-streaming web-audio-api media-source

有一个音频流从移动设备发送到服务器。服务器将数据块(由于Web套接字)发送到Web。
问题是。在实况模式下播放此音频所用的内容,还应有可能倒带音频,收听之前的内容,然后再次切换到实况模式。
我考虑了诸如Media Source API这样的可能性,但是IOS上的Safari和Chrome不支持它,不是吗?但是我们需要这种支持。
此外,还有现代浏览器支持的Web Audio API,但是我不确定是否可以在实时模式下收听音频并倒回音频?
有关如何实现的任何想法或指南?

最佳答案

I considered such possibilities as Media Source API but it's not supported by Safari and Chrome on IOS, isn't it? But we need that support.


然后,您将无法使用MediaSource Extensions。谢谢苹果!

And server sends chunks of data (due web-sockets) to the web.


如果没有MediaSource Extensions,则无法使用Web套接字连接中的数据。 (除非是PCM,或者将其解码为PCM,在这种情况下,您可以使用Web Audio API,但这是完全不切实际,效率低下的,不是您应该追求的目标。)
您必须更改流式传输方式。您有几种选择:
最佳选择:HLS
如果切换到HLS,您将获得所需的兼容性,以及时光倒流的功能。这就是你应该做的。
平庸的选择:HTTP渐进式
对于大多数用例来说,这是流式传输的一种好方法,但是没有任何内置方法来处理所需的流式传输。您必须构建它,这不值得花时间,因为您只能使用HLS。
平庸的选择:WebRTC
您可以切换到WebRTC进行流传输,但是大大增加了基础架构成本和复杂性。而且,您仍然需要弄清楚如何处理搜索。您想采用WebRTC路由的唯一原因是,如果您绝对需要最低的延迟。

关于audio - 网络音频直播,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63301039/

相关文章:

math - 主动噪声消除的原理是什么?

ios - iOS Web应用程序上的HTML5音频

streaming - 如何在 Flash 中流式传输 Shoutcast radio 广播 (Shoutcast Flash Player)

streaming - X 秒后终止 avconv 流式传输

android - 访问Android 6.0所有音频输出缓冲区以通过WiFi-Direct流式传输

audio - Lua 的快速傅立叶变换 FFT?

c++ - 来自使用 ffmpeg 的文件的音频流

iphone - 通过 m3u8 流式传输到 iPhone

c# - 如何将视频游戏中的视频实时传输到另一台计算机?

audio-streaming - Icecast 的 OPUS 源客户端