動画をffmpegとかconvertでアニメーションgifにする。ハイッ!

ハイッ!
するよ!

ハイッ! ffmpegで一発で

command_ffmpeg = "ffmpeg -ss 9 -i '#{path}' -t 30 -an -r 100 -s 160x90 -pix_fmt rgb24 -f gif '#{giffilename}'  "
system command_ffmpeg 
  • -i #{path}でインプットファイル
  • -t 30で秒数30秒
  • -ss 9で開始オフセット秒数9秒
  • -r フレームレート
  • -s 出力画像サイズ
  • -pix_fmt rgb24でカラー
  • -f 出力タイプ
  • #{giffilename}で出力ファイル

これの良い所は簡単、一発なので速く処理できる。デメリットとしてgif色空間が固定されるのでちょっと仕上がり品質落ちる。

ハイッ! 一旦ファイルに落としてコンバート

    command_0 = "rm -f /var/smb/sdc1/video/gif/tmp/* && rm -f /var/smb/sdc1/video/gif/tmp/.*"
    command_1 = "ffmpeg -t 120 -i '#{path}' -an -r 1 -s 160x90 -pix_fmt rgb24 /var/smb/sdc1/video/gif/tmp/%010d.png"
    command_2 = "find /var/smb/sdc1/video/gif/tmp/ -type f -name '*.png' | xargs -P0 -I@ mogrify -resize 160x90 @ "
    command_3 = "convert /var/smb/sdc1/video/gif/tmp/*.png '#{giffilename}' "
    command_4 = "rm -f /var/smb/sdc1/video/gif/tmp/* && rm -f /var/smb/sdc1/video/gif/tmp/.*"
    system command_0
    system command_1
    ##system command_2
    system command_3
    system command_4
  • ffmpegでファイルに切り出し
  • convertでgifにまとめる。

綺麗にできるが処理に時間がかかりまする。
私のプロダクトではこっちを使うようにしました。

年末なので

いろいろバックアップしたいのだけれどHDD購入の許可が出ない。