将 ffmpeg 流传输到 sox rec

Pipe ffmpeg stream to sox rec

我正在通过 ffpmeg 读取音频流,如下所示:

ffmpeg -i http://icecast.radiovox.org:8000/live.ogg -f mp3 filename

并想将其通过管道传输到 sox 命令:

rec filename rate 32k silence 1 0.1 3% 1 3.0 3%.

最终,我要实现的目标是录制脱口秀 Icecast 直播流中的音频。我只想要个人讲话的录音。每次都沉默,我想停止录音,等他们开始说话再开始录音。

你遇到了什么困难?我尝试了自己,在使用 sox 手册页中给出的示例时我注意到的唯一问题是 sox - 可能无法从几个字节理解输入格式。

尝试通过 flac,它在这里有效:

ffmpeg -i http://icecast.radiovox.org:8000/live.ogg -f flac - | sox - song.ogg silence 1 0.50 0.1% 1 2.0 0.1% : newfile : restart