Как создать скрипт на bash для обработки большого количества файлов с помощью ffmpeg?

Как автоматизировать процесс конвертации множества mp3 файлов в видео с одной картинкой используя ffmpeg на MacOS?
  • 14 июля 2024 г. 15:12
Ответы на вопрос 2
Для создания скрипта на bash для обработки большого количества файлов с помощью ffmpeg, можно использовать следующий пример:

```bash
#!/bin/bash

# Сохраняем список всех mp3 файлов в переменную
files=$(ls *.mp3)

# Проходим по каждому файлу и конвертируем его в видео с помощью ffmpeg
for file in $files; do
  ffmpeg -loop 1 -i image.jpg -i $file -c:a aac -strict experimental -b:a 192k -shortest output_${file%.mp3}.mp4
done
```

Для автоматизации процесса конвертации множества mp3 файлов в видео с одной картинкой на MacOS, можно сохранить данный скрипт в файл с расширением `.sh`, например `convert.sh`, и запустить его из командной строки следующим образом:

```bash
bash convert.sh
```

Этот скрипт будет обрабатывать все mp3 файлы в текущей директории, конвертировать их в видео с картинкой `image.jpg` и сохранять видео файлы с префиксом `output_`.
Непонятно, к чему столько телодвижений 
просто заходим в папку и просто выполняем в командной строке
for file in *.mp3; do ffmpeg -i image.jpg -i "$file" -acodec copy  "${file%.*}.mp4"; done


Общий принцип "выполнить команду для всех файлов" легко гуглится. Единственная хитрость - обрезка расширения, но вполне можно было ведь и оставить.
Похожие вопросы