それマグで!

知識はカップより、マグでゆっくり頂きます。 takuya_1stのブログ

習慣に早くから配慮した者は、 おそらく人生の実りも大きい。

ffmpeg で動画のサムネイルをズバッと作る

ディレクトリ中の動画を一気にサムネイルにする。ruby使うと楽だった。

  • Dir.glob でファイルをすべて出して。
  • ffmpegに掛ける。
#!/usr/bin/env ruby
Dir.glob("*.mp4").map{|e| "ffmpeg   -i '#{e}'  -r 1 -f  image2 -ss 20  -t 00:00:21 -vframes 1 '#{e}%d.jpg'"}.each{|e| `#{e}`}

ファイルを探す

Dir.glob("*.mp4")

変換コマンドに掛ける

.map{|e| "ffmpeg   -i '#{e}'  -r 1 -f  image2 -ss 20  -t 00:00:21 -vframes 1 '#{e}%d.jpg'"}.each{|e| `#{e}`}

連続キャプチャが欲しい時は

-r
-r 1 をつける

JPEGだと画質がいまいち奈々ときはPNGでもいいと思います

RubyのMapが非同期的に分散処理出来ればいいのにね。ProcオブジェクトがMahrshalできないんで、Mapの引数のProcでサーバーをまたぐのが不便なんだよねぇ。