有效地流式传输具有较大静音间隙的音频

Efficiently streaming audio with large gaps of silence

我想创建一个网页,用户可以在其中收听某个区域的各种 public 安全广播流。一个典型的设置涉及 运行 一个传统的无线电扫描仪来制作一个音频流。

我的目标是拥有一个包含许多不同流的页面,每个流都可以选择 "on" 或 "off",并且它们可以同时播放。

天真的方法只是将传统的音频流方法扩展为每个无线电频道一个流,但我担心带宽需求和可靠性。用户报告他们的流中断并不得不重新连接。

我的下一个想法是通过 FFMPEG 实例缓冲流并将它们记录到磁盘,同时消除静音,然后使用一些代码监控输出到 "push" 新的音频剪辑给听众。

我还没有编写任何代码,我正在寻找有关整体方法的建议。

我的解决方案对我来说似乎过于复杂,有人知道非常适合长时间静音音频的音频编解码器或流媒体解决方案吗?或者我的想法是最好的方法吗?你能想到什么改进吗?

The naive approach would just be to scale up the traditional audio stream method with one stream per radio channel

这是我推荐的做法。简单,低延迟,对服务端和客户端没有特殊要求。

however I am concerned about the bandwidth demands and reliability

这个的带宽是最小的。我建议使用 Opus 以获得最佳带宽质量。另外,考虑使用 VBR 进行编码。当没有声音时,你最终会得到非常低的带宽,而当有实际内容时,你会使用更多的带宽。这类似于您正在考虑执行的操作,但已内置到编解码器中。