Скрипт на bash для кодирования видео?

В каталоге есть много папок, в этих папках есть еще папки. В некоторых из этих папок есть файлы txt.
С помощью команды
find path/to/total/folder -name "*.txt" -exec dirname {} \;

извлекаю пути к директориям, содержащим txt файл.
Как дальше передать эти пути, чтобы ffmpeg конвертировал видео только в этих директориях?
  • Вопрос задан
  • 3008 просмотров
Пригласить эксперта
Ответы на вопрос 3
jcmvbkbc
@jcmvbkbc
"I'm here to consult you" © Dogbert
man xargs?
Ответ написан
Комментировать
MusicMan_08
@MusicMan_08 Автор вопроса
Результатом выполнения этой команды
find path/to/total/folder -name "*.txt" -exec dirname {} \;

я получаю к примеру 3 директории, которые содержат txt.
Как заставить ffmpeg кодировать видео определенного типа в этих директориях?
Можно пожалуйста пример?
Ответ написан
MusicMan_08
@MusicMan_08 Автор вопроса
find video -name "*.txt" | xargs dirname | sort -u | xargs -I {} find \{} -name "*.MP4" | while read movie; do ffmpeg -i "$movie" -vcodec prores -profile:v 3 -acodec copy "${movie%.*}Final.mov"; done

выдает вот такое:
usage: dirname path
если найдено более 1-ой директории, содержащийся в выводе find.
Если директория одна - то кодирование проходит как положено.
Как сделать, чтобы кодирование шло параллельно в разных директориях?
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы