FFmpeg Cookbook
EN

動画 → GIF変換ツール

動画の一部を GIF アニメにします。先にその区間に合った色の表(パレット)を作るので、色の縞が出にくくなります。幅と FPS で画質と容量を調整できます。

動画はサーバーに送られません
動画をドラッグ&ドロップ、またはクリックして選択
対応形式: MP4, MOV, AVI, MKV, WebM など / 最大 200MB
—
—
例: 5.5 → 5秒500ms から
最大 30 秒を推奨(長いとファイルが巨大になります)
高さは自動計算
変換中… 0%

対応する FFmpeg コマンド

現在の設定に対応するコマンドラインです。設定を変えるとリアルタイムで更新されます。

ffmpeg -ss 0 -t 5 -i input.mp4 -vf "fps=15,scale=320:-1:flags=lanczos,palettegen" palette.png
ffmpeg -ss 0 -t 5 -i input.mp4 -i palette.png -filter_complex "[0:v]fps=15,scale=320:-1:flags=lanczos[x];[x][1:v]paletteuse" output.gif

視覚的なイメージ

幅 × FPS が GIF のサイズを決める 240×10fps ~ 1.5 MB 320×15fps ~ 4 MB (推奨) 480×20fps ~ 12 MB 640×25fps ~ 22 MB 5秒クリップでの目安。尺を倍にするとサイズもほぼ倍になります

※ 実際の結果はソース動画の長さ・複雑さで変わります(典型例の図解)

よく使われる用途
チャット向け短尺GIFブログ用の動くプレビューSNSで使うループ動画

使い方

  1. 動画を選ぶMP4・MOV・WebM などを選びます(200MB まで)。長い動画は処理が重くなるので、短い区間に絞ります。
  2. 開始・終了時間を指定GIF にしたい範囲を秒で入力します(最大 60 秒)。10 秒以下にするとファイルが小さくなります。
  3. 幅と FPS を選択最初は幅 320px・15 fps になっています。この組み合わせで画質と容量のつり合いが取れます。
  4. 変換を実行「GIFに変換する」を押し、プレビューが出たらダウンロードします。

おすすめ設定

チャットや Slack 共有用
幅 320px・15fps・10秒以下
ファイルが小さく済みます。
ブログのキャプチャ
幅 480〜640px・15fps・5〜8秒
記事の中で文字や画面が読みやすい大きさです。
滑らかさ重視(短尺)
幅 240px・20fps・3秒以内
FPS を上げる分、幅と長さを抑えて容量を保ちます。

うまくいかないとき

GIF のファイルが大きすぎる

原因:区間が長い、FPS が高い、幅が大きい、のどれかです。

対処:区間を 5〜10 秒、幅を 320px、FPS を 10〜15 にします。

色が荒い・縞模様が出る

原因:GIF は 1 枚に 256 色までしか使えないため、グラデーションが苦手です。パレットは区間全体で 1 つなので、色の違う場面が混ざると色が足りなくなります。

対処:区間を短くして場面を 1 つに絞るか、MP4 のまま共有します。

動きが飛び飛びに見える

原因:FPS が低すぎるか、元の動画の FPS が低いです。

対処:FPS を 15 以上にするか、元の動画の FPS を確かめます。

よくある質問

GIF と MP4 はどちらが軽いですか?

同じ長さ・同じ見た目なら、ふつうは MP4 のほうがずっと小さくなります。送り先が MP4 を再生できるなら、MP4 で送るほうが軽く済みます。

透過 GIF は作れますか?

透過の設定はありません。ふつうの動画には透明な部分がないので、GIF も透明になりません。GIF の透明は「透明か不透明か」の 2 段階だけなので、半透明を含むアニメーションには APNG・WebP・WebM が向いています。

なぜ 30 秒以上を推奨していないの?

区間が長いほど GIF は大きくなり、処理に使うメモリも増えるためです。区間は最大 60 秒まで指定できます。

パレット生成(palettegen)とは?

まず区間の色を調べて、その動画に合った 256 色以内の色の表(パレット)を作り、次にその表を使って GIF を作ります(palettegen と paletteuse)。決まった色の表で変換するより、縞模様が出にくくなります。

スマホで作れますか?

はい。ただし元の動画が 50MB を超えると注意が表示されます。メモリが足りなくなりやすいので、区間を短くするか、先にトリムや圧縮をします。

GIF を Slack や Discord に貼ると重い/ぼやける

GIF は 256 色までなので、細かいグラデーションが苦手です。幅 320px・FPS 10〜15 を目安にします。それでも重いときは、GIF ではなく MP4 のまま送ります。

ループしない/1 回で止まる GIF を作りたい

このツールの GIF は、いつも繰り返し再生(ループ)になります。1 回だけ再生する GIF は、FFmpeg で作るときに `-loop 0` を `-loop -1` に変えると作れます。

元動画が縦動画でも GIF にできる?

はい。縦横比はそのままです。9:16 の縦長の動画を幅 320px にすると、高さは約 569px になります。縦に長すぎるときは、幅を 240px に下げます。

くわしい説明(設定の意味・制限・FFmpeg のコマンド)

設定の意味

開始時間 / 終了時間
GIF にする区間(秒)。長くなるほど、ファイルは大きくなります。
幅
GIF の横幅(240・320・480・640px)。高さは縦横比を保って自動で決まります。
FPS
1 秒あたりのコマ数(10・15・20)。多いほど動きは滑らかになり、ファイルは大きくなります。

使えるブラウザと制限

  • 最大ファイルサイズ:200MB
  • GIF は 256 色制限のため、グラデーションは苦手
  • 区間は最大 60 秒(30 秒以下を推奨)

同じ処理を FFmpeg のコマンドで

基本的な GIF 変換(5〜10秒)
ffmpeg -i input.mp4 -ss 5 -to 10 -vf "fps=15,scale=320:-1:flags=lanczos" -loop 0 output.gif
パレットを作らないので、決まった 256 色で変換されます。
高品質 palettegen + paletteuse
ffmpeg -i input.mp4 -ss 5 -to 10 -vf "fps=15,scale=320:-1:flags=lanczos,split[a][b];[a]palettegen[p];[b][p]paletteuse" -loop 0 output.gif
区間に合ったパレットを作るので、色の縞が出にくくなります。-loop 0 はくり返し再生、-loop -1 にすると 1 回だけ再生します。

次にやること