Преобразование последовательности изображений в видео - это надежный способ создания замедленной съемки, слайд-шоу или анимации. Одним из наиболее универсальных инструментов для решения этой задачи является FFmpeg.
FFmpeg (Fast Forward Moving Picture Experts Group) - это утилита командной строки с открытым исходным кодом, которая содержит различные библиотеки и программы для обработки мультимедийных данных. И он предлагает целый ряд настраиваемых опций для преобразования последовательности изображений в высококачественное видео.
Итак, если вам интересно, как преобразовать последовательность изображений ffmpeg в видео, это подробное руководство поможет вам выполнить эту задачу независимо от вашего уровня подготовки.
В этой статье
Часть 1. Какой формат последовательности изображений поддерживает FFmpeg?
К счастью, ffmpeg поддерживает широкий спектр форматов последовательности изображений. Ниже приведены некоторые форматы последовательности изображений, которые может обрабатывать ffmpeg:
- JPEG: .jpeg, .jpg
- PNG: .png
- TIFF: .tiff, .tif
- BMP: .bmp
- GIF: .gif
- PPM: .ppm
- PGM: .pgm
- PBM: .pbm
- PNM: .pnm
- WebP: .webp
Часть 2. Как преобразовать последовательность изображений в формате FFmpeg в видео
Чтобы преобразовать последовательность изображений в видео с помощью FFmpeg, вам необходимо выполнить ряд шагов. Хотя эти шаги могут показаться сложными для пользователей, не имеющих технического образования, мы объяснили их максимально простым способом, чтобы помочь вам понять, как это работает.
Шаг 1. Подготовка последовательности изображений
- Правила присвоения имен: Убедитесь, что ваши изображения называются в последовательном порядке Например, image-001.png, image-002.png, image-003.png и т.д Это помогает FFmpeg распознавать порядок расположения изображений.
- Согласованный формат: убедитесь, что все изображения имеют одинаковый формат (например, все .png или .jpg) и одинаковые размеры.
Шаг 2. Установка FFmpeg
Прежде чем продолжить, убедитесь, что в вашей системе установлен инструмент FFmpeg. Вы можете проверить это, выполнив команду:
В Windows: Нажмите Windows + R на клавиатуре. Затем введите ffmpeg.exe -версия и нажмите enter.
На Mac: Откройте “Окно терминала” и введите ”ffmpeg-версия".
Если FFmpeg не установлен, загрузите и установите его с официального веб-сайта FFmpeg.
Шаг 3. Преобразуйте последовательность изображений в видео.
Если у вас есть серия изображений с последовательными именами (например, image-0001.png, image-0002.png и т.д.), введите следующую команду в ffmpeg tool;
ffmpeg -частота кадров 25 -i изображение-%03d.png-c:v libx264 -r 30 -пиксельный вывод yuv420p.mp4
Вот что означает приведенная выше команда;
- -частота кадров 25: Устанавливает входную частоту кадров равной 25 кадрам в секунду. Отрегулируйте это значение в зависимости от того, насколько быстро вы хотите воспроизводить видео.
- -i image-%03d.png: Указывает шаблон входного файла. %03d - это заполнитель для последовательных чисел с нулевым заполнением (например, 001, 002).
- -c:v libx264: Для сжатия видео используется кодек H.264, который широко поддерживается и обеспечивает хорошее качество.
- -r 30: Устанавливает частоту кадров на выходе равной 30 кадрам в секунду. Это можно настроить по мере необходимости.
- -pix_fmt yuv420p: Устанавливает формат пикселей в yuv420p, что обеспечивает совместимость с большинством проигрывателей.
- output.mp4: Название выходного видеофайла.
Однако, если ваши изображения не пронумерованы последовательно, но имеют постоянное расширение (например, .png), вы можете использовать шаблон "глобус" для преобразования их в видео. Команда для использования “Glob Pttern” такова:
ffmpeg -framerate 30 -pattern_type glob -i ".png" -c:v libx264 -pix_fmt yuv420p output.mp4
Шаг 4. Дополнительные параметры
- Указание начального фрейма: Используйте -start_number, если ваша последовательность начинается с номера, отличного от 001.
ffmpeg -framerate 25 -start_number 100 -i image-%03d.png-c:v libx264 -r 30 -pix_fmt yuv420p output.mp4
- Добавление аудио: Добавление аудио к вашему видео - отличный способ сделать его просмотр более интересным. Вы можете добавить звуковую дорожку с помощью опции -i. Вот команда;
ffmpeg -framerate 25 -i image-%03d.png-i audio.mp3 -c:v libx264 -c:a aac -r 30 -pix_fmt yuv420p output_with_audio.mp4
- Зацикливание изображений
Чтобы зацикливать каждое изображение на определенную продолжительность, используйте опции -loop и -t:
ffmpeg -loop 1 -t 5 -i image1.png-loop 1 -t 5 -i image2.png-loop 1 -t 5 -i image3.png-filter_complex "[0:v][1:v][2:v]concat=n=3:v=1:a=0" -c:v libx264 -pix_fmt yuv420p output.mp4
- Добавление эффектов перехода
Для добавления эффектов плавного перехода между изображениями:
ffmpeg -i image1.png-i image2.png-i image3.png-filter_complex "[0:v]fade=t=in:st=0:d=1,fade=t=out:st=4:d=1[v0]; [1:v]fade=t=in:st=0:d=1,fade=t=out:st=4:d=1[v1]; [2:v]fade=t=in:st=0:d=1,fade=t=out:st=4:d=1[v2]; [v0][v1][v2]concat=n=3:v=1:a=0,format=yuv420p[v]" -map "[v]" output_with_fades.mp4
Советы по преобразованию изображений в видео в формате FFmpeg
- Убедитесь, что все изображения находятся в том же каталоге, в котором вы запускаете команду FFmpeg.
- Отрегулируйте -частоту кадров и -изменения, чтобы контролировать скорость и плавность воспроизведения видео.
- Если у вас возникнут проблемы с воспроизведением на определенных устройствах, убедитесь, что формат пикселей установлен на yuv420p.
Часть 3. Почему у меня не получается преобразовать последовательность изображений в видео в формате FFmpeg?
Существует несколько причин, по которым у вас может не получиться преобразовать последовательность изображений в видео в формате FFmpeg. В этой части мы рассмотрели некоторые распространенные причины этой проблемы и предложили наилучшее решение для ее устранения.
-
Неправильный размер файла изображений
Это одна из основных причин, по которой у вас может не получиться преобразовать последовательность изображений в видео в ffmpeg. Возможно, изображения в последовательности изображений слишком маленькие или слишком большие, и ffmpeg не сможет точно рассчитать и определить, как изображения связаны.
cat jpg2mp4.sh test -d "$1" || exit tmpdir=$(mktemp -d -p .) counter=0 find $1 -iname '.jpg' | while read.jpgdo convert -resize 1440x1080 .jpg$tmpdir/IMG_$(printf "%04d" $counter).JPG counter=$((counter + 1)) done echo ffmpeg -i $tmpdir/IMG_%4d.JPG test.mp4
-
Непоследовательное присвоение имен файлам
Ffmpeg также может не преобразовать последовательность изображений в видео, если изображения не пронумерованы последовательно или в нумерации есть пробелы.
Кроме того, если есть пробелы, вы можете переименовать файлы или использовать шаблон глобализации, чтобы включить все файлы.
-
Пустые или поврежденные входные файлы
Если некоторые файлы изображений пусты или повреждены, это также может привести к тому, что ffmpeg не сможет преобразовать последовательность изображений в видео.
-
Неверный синтаксис команды
Возможно, в команде FFmpeg содержится синтаксическая ошибка.
Вот исправленный пример команды, включающий в себя некоторые из упомянутых решений:
- ffmpeg -framerate 25 -start_number 100 -i image-%03d.png-c:v libx264 -r 30 -pix_fmt yuv420p output.mp4
Эта команда устанавливает входную частоту кадров в 25 кадров в секунду, запускается с image-100.png, использует кодек H.264, устанавливает выходную частоту кадров в 30 кадров в секунду и использует пиксельную форму yuv420p
Часть 4. Более простой способ преобразовать последовательность изображений без использования FFMPEG
Как упоминалось ранее, пользователям без технического образования может быть сложно использовать ffmpeg для преобразования последовательности изображений в видео. Вот почему мы рекомендуем использовать для конвертации программное обеспечение для редактирования видео Wondershare Filmora.
Видеоредактор Filmora - это передовое программное обеспечение для редактирования видео, предназначенное для облегчения различных задач редактирования видео, включая преобразование последовательности изображений в видео. Этот инструмент может похвастаться множеством интересных функций, включая готовые шаблоны, зеленый экран, отслеживание движения и многое другое.
Кроме того, в Filmora есть встроенные инструменты искусственного интеллекта, такие как интерполяция видео с помощью искусственного интеллекта, генератор музыки с использованием искусственного интеллекта, интеллектуальная вырезка с использованием искусственного интеллекта, создание эскизов с использованием искусственного интеллекта и многое другое, которые помогут вам упростить задачи редактирования видео.
Основные возможности функции "Последовательность изображений в видео" в Filmora
- Прямой импорт: Легко импортируйте папку с последовательно пронумерованными файлами изображений (например, JPG) непосредственно во временную шкалу проекта без сложных процессов преобразования.
- Регулировка скорости: Отрегулируйте скорость воспроизведения последовательности изображений для создания эффектов замедленной съемки.
- Интеграция с облаком: Импортируйте изображения непосредственно из облачных сервисов, таких как Google Drive и Dropbox, что упрощает рабочий процесс.
- Параметры экспорта:Экспортируйте готовое видео в различных форматах (например, MP4, MOV, AVI) и разрешениях в соответствии с различными потребностями проекта.
Шаг 1: Установите приложение Filmora Video Editor на свой Mac или ПК и запустите приложение.
- Нажмите “Создать новый проект”, затем нажмите кнопку "Импорт" и перейдите в папку с изображениями. Затем вы можете импортировать “Последовательность изображений”, которую хотите преобразовать в видео. Выберите первое изображение из вашей последовательности и установите флажок "Последовательность изображений".
Шаг 2. После успешного импорта последовательности изображений перетащите их на “Временную шкалу”. Затем начните настраивать параметры в соответствии с вашими требованиями.
- Вы можете добавлять эффекты, титры и многое другое, чтобы улучшить качество видео на выходе.
Шаг 3. После настройки нажмите “Экспорт” и выберите формат видео на выходе.
- Вы также можете настроить частоту кадров видео. Затем выберите путь для сохранения файла и нажмите «Экспорт».
Заключение
Преобразовать последовательность изображений в видео с помощью FFmpeg несложно, если вы понимаете, как с этим работать. Все, что вам нужно, - это следовать инструкциям, которыми мы поделились.
Однако, если вам нужен более простой способ конвертировать последовательность изображений в видео без использования ffmpeg, видеоредактор Filmora - это то, что вам нужно.