Категорії
Misc, staff, other

[shell] Конвертация видео avi to mp4

Задача: Переконвертировать все .avi в .mp4.

Условие: Файлы на MacOS. Имена файлов на русском языке, имеют в названии пробелы, скобки “(“, двойные кавычки “:”. Возможность конвертирования во вложенных каталогах. Имя конечных файлов должно быть таким же как .avi только .mp4.

Выполнение: Как бы ничего сложного, скрипт был написан за 5 минут, но уперся в «Имена файлов на русском языке, имеют в названии пробелы, скобки “(“, двойные кавычки “:”».

Скрипт состоит из двух частей.

1 Часть: Команда конвертирования со всеми параметрами (помещена для удобства в сшник), convert.sh:

#!/bin/sh
FFMPEG=/usr/bin/ffmpeg
outfile="${1%.avi}.mp4"
$FFMPEG -y -i "$1" -f mp4 -vcodec mpeg4 -b 800k -r 25 -acodec libfaac -ab 320k -ar 44100 -ac 2 -threads 8 "$outfile"

Было решено не использовать двух проходное кодирование.

2 Часть: Собственно сама команда поиска .avi файлов, для удобства на MacOS была скомпилена в стартовый скрипт (приложение) (аналог .bat в Windows):

#!/bin/sh
Y=2
path=/Volumes/Public/VIDEO
FIND=/usr/bin/find
$FIND "$path" -maxdepth $Y -name "*.avi" -print -exec /Users/vasya/Convert/convert.sh {} \;

Автор: yuramirko

Залишити відповідь

Ваша e-mail адреса не оприлюднюватиметься. Обов’язкові поля позначені *

Домашняя страничка Andy
Записки молодого админа
Самостоятельная подготовка к Cisco CCNA
Самостоятельная подготовка к Cisco CCNP
Powered by Muff