FFmpeg」タグアーカイブ

FFmpegで動画を連結するコマンド

1. 連結したい動画をテキストファイルに書き出します。

$ vi list.txt
$ cat list.txt
file '/path/to/file1.avi'
file '/path/to/file2.avi'
file '/path/to/file3.avi'

2. FFmpegを実行します。

$ ffmpeg -f concat -safe 0 -i list.txt -c copy output.avi

エンコードもしたい場合は、次のような感じにできます。

$ ffmpeg -f concat -safe 0 -i list.txt -c:v mpeg4 -acodec libmp3lame output.mp4

リンク

Concatenate – FFmpeg
https://trac.ffmpeg.org/wiki/Concatenate

FFmpeg FAQ
http://ffmpeg.org/faq.html

FFmpegで動画から静止画像を出力する方法

FFmpegで動画ファイルから静止画像を出力したい場合は、次のようなコマンドを実行します。

$ ffmpeg -an -i video.mp4 %04d.png

0001.png0002.png0003.png、…のような連番ファイルが出力されます。

一部のみ抜き出したい場合は-ssオプションで開始時刻を、-tオプションで長さを指定します。

$ ffmpeg -an -ss 00:05:00 -t 00:01:00 -i video.mp4 %04d.png

静止画像から動画を作成する方法

逆に、静止画像ファイルから動画を作成する場合は

$ ffmpeg -framerate 30 -i %04d.png video.mp4

のようにします。

スタートフレームを変更したい場合は-start_numberオプションを、長さを指定したい場合は-vframesオプションが使えます。

$ ffmpeg -framerate 30 -start_number 123 -vframes 600 -i %04d.png video.mp4

アニメーションGIFの作り方

0000.png, 0001.png, 0002.png, …の連番PNGファイルからアニメーションGIFを作るコマンド

ffmpeg編

$ ffmpeg -framerate 30 -i %04d.png output.gif

convert編(ImageMagick)

$ convert -delay 10 -loop 0 *.png output.gif

-loopは繰り返し数。(0は無限)

リンク

Command-line Options @ ImageMagick
http://www.imagemagick.org/script/command-line-options.php