Я працюю над системою Mac у відеокомпанії, де мені потрібно очистити багато папок і папок, що містять великі проміжні відеофайли.
Тому я шукав спосіб пакетного перетворення багатьох .mov-файлів у файли h.264 .mp4 за допомогою ffmpeg. Я знайшов кілька кодів, щоб зробити пакетне перетворення за допомогою сценарію, подібного до
for f in '*.mov';
do ffmpeg -i $f -c:v libx264 -f mp4 "${%f.mov}.mp4" ;
done
Однак це працює лише в поточній папці, в якій виконується сценарій, і я шукаю спосіб знайти .mov файли рекурсивно та пакетно конвертувати їх усі.
На даний момент рішення, яке працює для мене, відчуває трохи жорстокої сили; Я просто використовую пошук і виконання ffmpeg;
find . -name '*.mov' -type f -exec ffmpeg -i {} -c:v libx264 -f mp4 {}.mp4
Однак одна з проблем, яка у мене виникає, полягає в тому, що я не можу замінити .mov на .mp4 у цьому форматуванні, тому вихід буде додавати .mp4 до {}, а файли закінчуються як * .mov .mp4
Крім того, я здогадуюсь, що це не найбезпечніший чи найприємніший спосіб перегляду партії.
Мені було цікаво, чи існує більш безпечний або менш інтенсивний спосіб створення партії для ffmpeg, який може навіть вирішити мою проблему іменування, або спосіб зробити команду 'for f in * mov' знайти відео рекурсивно до 5 + папки глибокі.
Будь-яка допомога буде дуже вдячна.