ffmpegの使い方 – ファイルフォーマットを変換してみよう

 

  • mac
  • ffmpeg
  • movImageMagick
  • mov
  • gif

やること

macにffmpegとmovImageMagickを導入します。その後に、実際にmovファイル(もしmovファイルが存在していなければ、QuickTime Playerなどを用いるといいかもしれません)をgifファイルに変換するところまでやります。ffmpegを使うためには、予め brewコマンドが使えるようにHomebrewを導入しておいてください。***この記事はmacユーザーを対象にしております。

 

ffmpegとmovImageMagick

これから用いるffmpegとは、画像・動画のフォーマットを変換してくれるフリーのソフトです。多彩なオプションがあり、尚且つ安易に動きます。ffmpegのしようと併用してmovImageMagickをインストールしておくことも同時にお勧めします。movImageMagickはmovなど巨大になりがちな動画ファイルなどを、小さいサイズに圧縮してくれます。movImageMagickも安易にbrewコマンドでインストールできます。

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

では、初めて行きましょう。まずはmacOS上に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 file.mov -pix_fmt rgb24 -r 10 -s 320x240 -t 00:00:10.000 newfile.gif

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

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

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

macOS上で上記のように毎回コマンドを叩くのは面倒臭いと思うでしょう。作業効率化のためのシェルを作りました。スタート時間、ファイルの下の名前、エンド時間、新しく生成されるファイル名、これらを引数にとることで実行される関数です。是非、エイリアスに使ってみてください。最後に、そのための参考記事を下記に記します。

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

参考記事

[urlpreviewbox url=”https://off.tokyo/blog/2018/04/13/mamp%E3%81%AEdb%E3%81%AB%E3%82%A2%E3%82%AF%E3%82%BB%E3%82%B9%E3%81%99%E3%82%8B%E3%82%B7%E3%82%A7%E3%83%AB%E3%82%B9%E3%82%AF%E3%83%AA%E3%83%97%E3%83%88/”/]

藤沢瞭介(Ryosuke Hujisawa)
  • りょすけと申します。18歳からプログラミングをはじめ、今はフロントエンドでReactを書いたり、AIの勉強を頑張っています。off.tokyoでは、ハイテクやガジェット、それからプログラミングに関する情報まで、エンジニアに役立つ情報を日々発信しています!

未整理記事