English version in process.
22 ноября 2015 г.
FFmpeg. Пакетная обработка.

FFmpeg удобная штука! Возможность в любой момент открыть и перекодировать файл любого формата предает уверенности в работе.

Но что если этих файлов много?

Можно организовать пакетную обработку.

Для этого нужно создать текстовый файл с расширением .sh и любым именем, например conv.sh

nano conv.sh

И копировать в него следующий скрипт:

#!/bin/bash
MOVIES=/Volumes/Victory/
find "$MOVIES" -name '*.MP4' -exec sh -c 'ffmpeg -i "$0" -map 0 -c copy "${0%%.MP4}.mov"' {} \; exit;

Вот что нужно поменять в этом скрипте:

/Volumes/Victory/ – путь к папке в которой лежат файлы, все что находится во вложенных папках тоже будет обработано.
.MP4 – это расширение файлов которые будут перекодированы, менять надо в двух местах.
-map 0 -c copy – команда для ffmpeg, менять под свои нужды. Подробнее про команды тут
.mov – Расширение файла на выходе.

Выходим из nano (ctrl+x), Y, Enter.

Теперь нужно дать права на запуск файла conv.sh, команда:

chmod 755 conv.sh

Запускаем!

./conv.sh

Если вы всё сделали правильно начнется транскодирование всех файлов с выбранным расширенимем по указанному пути включая вложенные папки. Новые файлы буду созданы рядом со старыми.