У меня есть несколько видео на моем ПК, которые я хотел бы сократить. Например, у меня есть 30-секундное видео, где я хочу, чтобы секция была от 15 до 20 секунд (5-секундное видео). Чтобы сократить это, я использую avconv.
avconv -i input.mp4 -ss 15 -acodec copy -vcodec copy -t 5 output.mp4
Эта команда работает довольно хорошо. У меня есть много видео, которые я хочу вырезать так же. Вот почему я создал текстовый файл, содержащий информацию: input-name, start of cut, length of cut, output-name. Они записаны в в .txt , который выглядит следующим образом:
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
Есть идеи?
В ударе я предложил бы что-то как
while read -r infile ss t outfile; do
avconv -i "$infile" -ss "$ss" -acodec copy -vcodec copy -t "$t" "$outfile"
done < in.txt