我有一个波形音频文件,我想像这样在多个点进行修剪。
音频长度为 1 小时,我想保留前 3 分钟以及 6 分钟到 30 分钟的部分。换句话说,我想删除 3 分钟到 6 分钟和 30 分钟到 60 分钟的部分。
我可以用 ffmpeg 来做这样的事。
ffmpeg -i audio.wav -t 00:03:00 -c copy 01.wav
ffmpeg -i audio.wav -ss 00:06:00 -t 00:24:00 -c copy 02.wav
ffmpeg -i 01.wav -i 02.wav -filter_complex '[0:0][1:0]concat=n=2:v=0:a=1[out]' -map '[out]' output.wav
但如果可能的话,我想把它写在一行中,并附带选项。如果可以从命令行使用,我就不会坚持使用 ffmpeg。
有办法吗?
答案1
使用 Sox。命令如下:
sox inputfile.wav outputfile.wav trim 0 =3:00 =6:00 =24:00
请参阅这里。
在修剪参数中,每对值都是从入点到出点。0 是入点,3:00 是出点,然后是 6:00 入点和 24:00 出点。= 符号表示相对于开始。