如何批量编辑wav文件?

如何批量编辑wav文件?

我需要从一批 wav 文件中截断前 3 秒。有没有办法从命令行或使用 Linux 本机程序来完成此操作?

谢谢。

答案1

您可以使用sox(请参阅man sox其选项)来处理一个文件:

sox music.wav shortermusic.wav trim 3

时序值为时:分:秒,如果省略部分,则默认为最小间隔,因此这里我们可以使用3三秒。负值是从文件末尾开始测量的。

之后,这只是使用循环遍历文件集的情况

mkdir trimmed
for m in *.wav
do
    printf 'Trimming: %s\n' "$m"
    sox "$m" trimmed/"$m" trim 3
done

修剪后的文件将被放入一个子目录中,trimmed这样您就不会意外地修剪它们两次

如果您已经ffmpeg安装,您可以直观地检查文件的持续时间:

ffprobe music.wav 2>&1 | grep Duration

或一点点更优雅地很快:

ffprobe -v error -show_entries format=duration -of default=noprint_wrappers=1:nokey=1 music.wav

相关内容