使用文件中的变量编写脚本

使用文件中的变量编写脚本

我的电脑上有几段视频,我想把它们缩短。例如,我有一个 30 秒的视频,我想把第 15 秒到第 20 秒的部分(5 秒的视频)剪下来。为了剪掉这段视频,我使用了 avconv。

avconv -i input.mp4 -ss 15 -acodec copy -vcodec copy -t 5 output.mp4

此命令效果很好。我有许多视频想要以同样的方式剪辑。这就是为什么我创建了一个包含以下信息的文本文件:输入名称、剪辑开始、剪辑长度、输出名称。这些都写入文本文件看起来像这样:

input.mp4 15 5 output.mp4
input1.mp4 32 10 output1.mp4
input2.mp4 10 7 output2.mp4
...

我的问题是:我该如何修改 avconv 命令才能自动剪切视频?我尝试了以下方法,但根本不起作用:

avconv -i $1 -ss $2 -acodec copy -vcodec copy -t $3 $4 < in.txt

任何想法?

答案1

在 bash 中,我建议使用类似

while read -r infile ss t outfile; do 
  avconv -i "$infile" -ss "$ss" -acodec copy -vcodec copy -t "$t" "$outfile"
done < in.txt

相关内容