我正在使用 avconv/FFmpeg 将视频源和音频源解析为广播流。目前,它使用选项通过 UDP 获取音频信息-f wav -ac 1 -i udp://localhost:6613
,因为 stdin 被视频源占用,并且音频在发送到本地端口之前由外部程序处理。
不幸的是,如果音频馈送由于任何原因而停止 - 最常见的情况是用户关闭该馈送 - avconv 只会坐在那里并“阻塞”,等待该频道上的更多输入,并且在获得输入之前它不会处理任何进一步的视频。
期望的结果是流继续传输而没有任何音频,然后在源返回后再次有音频。我也不一定非要使用 UDP - 如果有另一种方法可以从同一系统上的另一个程序接收字节流,我可以轻松切换到该方法。我只是不想浪费周期发送 0 流,而是让 avconv 在内部处理。