Пакетное преобразование 50 изображений (с одним и тем же аудиофайлом) в 50 видео с помощью FFmpeg

Пакетное преобразование 50 изображений (с одним и тем же аудиофайлом) в 50 видео с помощью FFmpeg

У меня есть 50 изображений с разными названиями.

В той же папке яимена.txtфайл, содержащий имена всех изображений в этой папке, например:

apples.jpg
oranges.jpg
blackberries.jpg
etc.

И у меня есть один аудиофайл,звук.wav

Я хочу смешать каждое изображение с файлом sound.wav, чтобы создать 50 видеороликов:

apples.mp4
oranges.mp4
blackberries.mp4
etc.

Есть идеи?

Вот скрипт, который помог мне конвертировать каждое изображение вручную:

ffmpeg -loop 1 -y -i oranges.jpg -i sound.wav -shortest oranges.mp4

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

Спасибо

решение1

Ты можешьперебрать строки файлав пакетном файле Windows:

for /F "tokens=*" %%A in (names.txt) do [process]

Здесь замените [process]на:

ffmpeg -loop 1 -y -i %%A -i intro5.wav -shortest %%~nA_movie.mp4

Где %Aв строке имя файла, а %%~nAгде имя без расширения.

Связанный контент