Как и было обещано в конце предыдущего поста, расскажу как конвертировать видеофайлы не по одному (это долго и скучно :)), а сразу пачкой и при непосредственном участии моего любимого Midnight Commander-а.

А теперь по-быстрому: в любом редакторе (с правами root-a) открываем /etc/mc/mc.menu, который является файлом пользовательского меню MC, вызываемого через F2 и вставляем следующий блок (только не в самый конец):

+ t t
v       Batch video files conversion
	set %t
	if [ "%d" = "%D" ]; then
	    echo "The two directories must be different."
	exit 1
	fi
	format=%{Force format (examples: 3gp (mobile phone), mp4 (Apple iPhone), avi)}
	size=%{Frame size (examples: 320x240, 480x320 (Apple iPhone), 640x480)}
	rate=%{Frame rate (examples: 15, 25)}
	bitrate=%{Bitrate (examples: 300k, 800k)}
	volume=%{Volume (normal: 256, double: 512)}
	channels=%{Number of audio channels (mono: 1, stereo: 2)}
	while [ -n "$1" ]; do
	    ext=`basename "$1"`
	    ext="${ext##*.}"
	    newname=`basename "$1" .$ext`.$format
	    ffmpeg -y -i %d/"$1" -f $format -vcodec mpeg4 -s $size -r $rate -b $bitrate -vol $volume -acodec libfaac -ac 1 -ar 44100 -ab 128k %D/"$newname"
	shift
	done

Что же мы имеем после сохранения?

А имеем мы следующее: в MC, после выделения в текущей панели видеофайла(ов), готовых к конвертации, и нажатия F2, в меню появится новый пункт «v Batch video files conversion«, при выборе которого (или по клавише v), наш скриптик запросит нужные для сжатия параметры и начнёт сжимать файлы один за другим, сохраняя пережатое видео в каталоге другой панели. Т.е. последовательность такая: Insert > F2 > V. При запросе каждого из параметров, в вверху окна указаны примеры.

Еще раз повторюсь, что этот пункт меню появится, только если сначала выделить файлы. Скрипт не обрабатывает папки и их содержимое — только файлы текущего каталога.

И на всякий пожарный: скрипт не будет работать, если в обоих панелях файлового менеджера один и тот же каталог (во избежание перезаписи оригинальных файлов).

Вот вроде и всё, скриптик получился простецкий, но, сцуко, технологичный :) Конечно, скрипт мог бы спрашивать больше параметров, а не использовать готовые, но это уже сами..