🎬 FFmpeg個人リファレンス

画像から動画を作る(スライドショー化)

静止画から動画を作ります。連番画像をつなぐ方法と、 1枚を一定時間表示する方法、BGMを付ける方法を押さえれば十分です。

1. 連番画像から動画を作る

img001.png, img002.png, … のような連番をつなぎます。

ffmpeg -framerate 2 -i img%03d.png -c:v libx264 -pix_fmt yuv420p slideshow.mp4
  • -framerate 2 … 1秒あたり2枚(1枚0.5秒表示)
  • -pix_fmt yuv420p … 多くのプレイヤー/SNSで再生できる互換設定

2. 1枚の画像を動画にする(指定秒数)

# 1枚を10秒間表示する動画
ffmpeg -loop 1 -i photo.jpg -t 10 -c:v libx264 -pix_fmt yuv420p -vf "scale=1280:720" out.mp4

3. 画像+音声で動画を作る

音声の長さに合わせて自動で終了させます(-shortest)。

ffmpeg -loop 1 -i photo.jpg -i audio.mp3 -c:v libx264 -tune stillimage -c:a aac -b:a 192k -pix_fmt yuv420p -shortest out.mp4
メモ
1枚絵+音声は、Podcast音源をYouTubeに上げるときの定番。Kindle紹介動画でも使えます。

サイズが奇数だとエラーになる場合

H.264は幅・高さが偶数である必要があります。自動で偶数に丸めるには次を加えます。

-vf "scale=trunc(iw/2)*2:trunc(ih/2)*2"