2012-03-07 4 views
3

Итак, я сделал несколько заданий с ffmpeg, а также создал свою собственную DLL, напрямую используя API ffmpeg, но для моего следующего проекта мне нужно объединить несколько изображений вместе видео с ffmpeg, а также добавление аудиоклипа mp3. Я знаю, что вы можете сделать для упорядоченных изображений, как это:Объединение неупорядоченных изображений в видео (+ MP3 audio)

image001.jpg image002.jpg image003.jpg etc... 


ffmpeg -f image2 -i img%03d.jpg -i sound.mp3 output.mpg 

Но в нашем проекте, у нас нет изображений заказанных подобные. Вместо этого изображения, которые будут использоваться для видео, в каком порядке определяется во время выполнения (одно изображение для каждого кадра видео со скоростью 30 кадров в секунду). Так видео с 10 кадрами, например, могли бы состоять из следующей последовательности изображений:

image001.jpg image002.jpg image111.jpg image012.jpg imageFun.jpg image001.jpg image002.jpg imageFun.jpg image055.jpg imageEnd.jpg 

Как бы я сделать это с помощью FFmpeg? This part of the documentation точно не помогает мне здесь.

Я действительно не хочу прибегать к использованию API ffmpeg непосредственно из C/C++, но боюсь, что мне нужно, если это невозможно «изначально».

.

Дополнение

Если это не представляется возможным с помощью FFmpeg, но с каким-либо другим программным обеспечением (который работает на Linux и может управляться из командной строки) - я все уши! ;)

+0

Это также находится в [списке рассылки] (http://ffmpeg-users.933282.n4.nabble.com/ Combine-unordered-images-to-video-MP3-audio-td4453148.html), и кажется, что это невозможно изначально, и мы должны сначала скопировать изображения, чтобы исправить порядок. Ужасно, но нам нужно будет проверить, слишком ли это влияет на производительность. – TheSHEEEP

ответ

1

Вы можете попробовать использовать cat и вывести выход на ffmpeg. Example. В примере используется *.jpg, но вы можете изменить его со всеми перечисленными вами файлами, как в cat image1.jpg image3.jpg imagedog.jpg и т. Д.

+0

Спасибо, это очень помогло. Я делаю это (в Windows, кстати): ** введите <список изображений jpeg здесь> | ffmpeg -s 640x360 -f image2pipe -vcodec jpegls -r 5 -i -i audioMp3.data -y video.mp4 ** ...... В результате видео, однако, имеет правильный звук, но только верхние 20 % изображений, которые я прокладываю. Остальное на дне серое. Любая идея, что пошло не так? – TheSHEEEP

+0

Получил это, я использовал неправильный кодек. mjpeg было бы правильным. Он работает сейчас, спасибо! – TheSHEEEP

+0

Рад, что вы нашли решение, несмотря на то, что я забыл, что вы используете Windows, а не Linux. – LordNeckbeard

Смежные вопросы