ffmpegでmovをgif画像へ変換 – mac

ffmpegを導入してmovファイルをgifファイルへ変換してみます。用途はQiitaやGitHubにgif動画を貼り付けたいからです。ffmpegを使ってgifファイルに動画を変換すれば、このように動画としてQiitaやGitHubに貼り付けて再生することができます。文字だけで説明しづらい操作方法や動画を使って気軽に意図を伝えたい時に便利ですね

hitokage_optimized.gif

ffmpeg とは

ffmpegとは、あらゆる画像・動画のフォーマットを変換してくれるフリーのソフトです。安易に使えて多彩なオプションがあるので使いこなすことができれば世界が広がります。

手順

細かいコマンドは下記を参照ください。大まかに流れを説明すると、まずQuickTime Playerで画面録画からmovファイルを生成し(この手順は省きます)ます。保存場所をデスクトップにして保存。brewコマンドでffmpegをインストールするんですが、インストールした後movをgifへ変換する前にmovImageMagickをインストールします。movImageMagickはmovを小さいサイズに圧縮してくれます。movImageMagickも安易にbrewコマンドでインストールできます。これで準備は整いました。ffmpegコマンドを使ってmovをgifへ変換します。

ffmpegが存在していないことを確認

まずは自分のパソコンにffmpegがすでに入ってないか確認しましょう。

$ ffmpeg -version
-bash: ffmpeg: command not found

ffmpeg の最新版をインストール

下記のコマンドでffmpegを導入できます。

brew install ffmpeg

imagemagick をインストール

ffmpegを導入したら忘れずにimagemagickもダウンロードしてしまいましょう。下記のコマンドでimagemagickをインストールできます。これで大きなファイルを圧縮し小さいサイズに変換することができるようになりました。

brew install imagemagick

mov を gif へ変換

ここまで来たら準備完了です。下記のコマンドでmovファイルをgifファイルに変換します。下記の例では0秒から10秒までの指定範囲を切り抜きgifを生成しています。再生時間が長いとファイルが大きくなるので、なるべき必要な部分だけを変換することをオススメします。

ffmpeg -ss 00:00:00.000 -i hitokage.mov -pix_fmt rgb24 -r 10 -s 320x240 -t 00:00:10.000 hitokage.gif 

la -lhでファイルのサイズを確認

試しに下記のコマンドでgifファイルのサイズを確認してみましょう。きっと小さいサイズで変換されているはずです。

ls -lh

作業効率化のためのシェル

ffm() {

#$1 start time
#$2 file name
#$3 end time
#$4 new file name and type

ffmpeg -ss 00:00:$1.000 -i $2 -pix_fmt rgb24 -r 10 -s 320x240 -t 00:00:$3.000 $4

}

使い方

$ ffm 00 test.mov 10 newfile.gif