Файл всегда пропускается и никогда не кодируется.

аюсь выполнить команду find bash для обработки сотен видеофайлов с именамиvideo-original.mp4 но находятся в подкаталогах родительского каталога.

Вот пример структуры каталогов:

videos
├── 01a
│   └── video-original.mp4
├── 01b
│   └── video-original.mp4
├── 02a
│   └── video-original.mp4
├── 02b
│   └── video-original.mp4
├── 03a
│   └── video-original.mp4
└── 03b
    └── video-original.mp4

Я использую следующую команду:

find ./ -name 'video-original.mp4' -exec bash -c 'ffmpeg -i "$0" -f mp4 -vcodec libx264 -preset veryslow -profile:v high -acodec aac -movflags faststart video.mp4 -hide_banner' {} \;

У меня проблема в том, что он сохраняет файлvideo.mp4 в родительскомvideos каталог, а не в подкаталоге рядом с оригиналомvideo-original.mp4

После этого я хочу удалить файлvideo-original.mp4, В настоящее время мой процесс влечет за собой ожидание перекодирования всех видео, а затем, после его завершения, ввод отдельной команды для удаления файлаvideo-original.mp4:

find ./ -name 'video-original.mp4' -exec bash -c 'rm -rf "$0"' {} \;

И мой последний шаг будет извлечь скриншот новогоvideo.mp4 в 10 секунд и сохранить его какthumbnail.jpg, Опять же, в настоящее время я делаю это как отдельный шаг, который я выполняю после завершения двух предыдущих шагов.

find ./ -name 'video.mp4' -exec bash -c 'ffmpeg -i "$0" -ss 00:00:10 -vframes 1 thumbnail.jpg' {} \;

То, что я хотел бы сделать, это объединить эти три шага в одну команду, чтобы конечный результат был:

videos
├── 01a
│   ├── thumbnail.jpg
│   └── video.mp4
├── 01b
│   ├── thumbnail.jpg
│   └── video.mp4
├── 02a
│   ├── thumbnail.jpg
│   └── video.mp4
├── 02b
│   ├── thumbnail.jpg
│   └── video.mp4
├── 03a
│   ├── thumbnail.jpg
│   └── video.mp4
└── 03b
    ├── thumbnail.jpg
    └── video.mp4

Наконец, было бы здорово сохранить это как скрипт bash и включить его в мой путь в/usr/local/bin или же~/bin как исполняемый файл, чтобы я мог просто выдать командуreencode и это побежит. Было бы еще лучше, если бы входной файл мог иметь любой видеофайл, например,random_name.mp4 или жеrandom_name.mov или жеrandom_name.webmв основном любой видео файл (но пропускаяvideo.mp4 на этапе кодирования).

Ответы на вопрос(1)

Ваш ответ на вопрос