无限期地从麦克风录音

无限期地从麦克风录音

我正在使用应用程序“arecord”(在 Arch Linux 下)。我想从麦克风捕获声音并将其保存到磁盘。

这是我的命令:

arecord -f dat -d 2 --channels 1 -D hw:1,0 /tmp/test.wav

这将捕获两秒(-d->持续时间)的文件,然后将其保存到磁盘。这基本上有效。

我想做的是录制一个“无限”的音轨(没有固定持续时间)并将该曲目立即保存到磁盘。无需等待它完成。因此,如果我在录音时关闭机器(或者停电),音轨将保存在磁盘上直到那一刻。

这可能吗?

答案1

摘自arecord 的手册页:

-d, --duration=#
          Interrupt after # seconds. A value of zero means infinity. The default is zero, so if this option is omitted then the record/play‐
          back process will run until it is killed.

这是我用来无限录制声音的命令木之房明郎使用 48 kHz 采样率的 USB 麦克风:

arecord --device="hw:1,0" --format=S16_LE --rate=48 rec_$(date "+%F_%H-%M-%S").wav

这个答案关于如何指定要使用的设备。

要将 WAVE 文件转换为 mp3,您可以使用ffmpeg:

ffmpeg -i rec.wav -acodec mp3 rec.mp3

相关内容