ffmpeg で動画をjpeg画像に切り出し。連続サムネイルをつくる
ffmepg を使って動画をサムネイル画像に変換する
次のコマンドで画像に切り出せる
ffmpeg -i hogegeho.mpeg -f image2 frame%d.jpg
切り出せる・・・けど,一秒間毎に画像24枚出来る。10秒なら240枚出来ます。超大変
動画は一秒24フレーム程度です(25fps前後が一般的らしい)
10秒目が欲しいときは次のように
ある秒数だけを切り出したい。
ffmpeg -vframes 1 -i in.flv -ss 10 -f image2 out.jpg
-
-vframes
- 開始点から何フレームを取り出すか。1枚が欲しいので1フレーム=1を指定。
-
-ss
- 開始からのスキップ秒(シーク秒のSかも)
動画なので,頭から再生しないとサムネイルが取り出せないので300秒先とかは
それなりに時間が掛かるんじゃないのかな。
一秒一枚ずつ連続ショット
ffmpeg -vframes 1 -i in.flv -ss 10 -r 1 -f image2 out.jpg
一秒1フレームだけ取れればいいので
-
-r
- 一秒を何フレームにするか
これで取ることが出来る。
数分/数秒に1枚ですか?それはオプション調べるより,画像出力して不要画像消しちゃえばいいと思うよ。
3秒に一回のファイルだけを残す。
Dir.glob("./**/*").each{| name |
n = File.basename(name)
ext = File.extname(n)
n = n.sub(ext, "")
i = n.to_i
next unless i
File.unlink i if i %3 == 0
}