メインコンテンツへスキップ

無料GIF圧縮

アニメーションGIFを軽量化:Discordの絵文字256 KBやステッカー512 KBなどのサイズ上限に収めるか、色数・幅・フレームを自分で指定できます。ブラウザ上で動作し、GIFはアップロードされません。

ここにファイルをドロップするか、クリックして選択

GIF, HEIC, HEIF · デバイス上で処理

または Ctrl+V でクリップボードから貼り付け

ファイルを参照

ファイルがデバイスを離れることはありません。すべての処理はブラウザ内でローカルに行われます。

使い方

このページはGIFのサイズとフレームを読み取り、ffmpeg(WebAssemblyにコンパイルされ、ブラウザ内で動作)を2パスで使います。まずGIF自身の色からカラーパレットを作り、次にそのパレットで各フレームを書き直して、変化した部分だけを保存します。サイズ上限に収めるときは、収まるまで、まず色数を減らし、次にフレームを1つおきにし、最後に幅を小さくします。

  1. 1
    GIFを開く
    GIFをドロップするか「ファイルを選択」を押します。サイズ・フレーム数・長さが表示されます。
  2. 2
    目的を選ぶ
    Discord絵文字(256 KB)やステッカー(512 KB)などの上限に収める「サイズに収める」か、色数・幅・フレームを指定する「設定を選ぶ」を選びます。
  3. 3
    圧縮する
    「GIFを圧縮」を押します。初回のみ動画エンジンをダウンロードし、その後はオフラインで動作します。
  4. 4
    比較してダウンロード
    2つのGIFがサイズとともに並んで再生されます。小さいほうをダウンロードしてください。

GIFはこのブラウザ内で圧縮され、アップロードされることはありません。

ガイド

実例

4 MB、480 × 270 ピクセルで、1 フレームが 100 分の 8 秒、全 60 フレームの GIF があるとします。ファイルを選ぶと、ページに「480×270 · 60フレーム · 4.8秒」と表示されます。「目的」を「サイズに収める」のまま、「サイズ上限」も初期値の「Discord絵文字(256 KB)」(262,144 バイト)にして、「GIFを圧縮」を押します。ファイルは目標の 4 倍以上あるため、最初のパスから小さい幅で始まります。480 × √(2 × 262,144 ÷ 4,194,304) ≒ 170 ピクセル、256 色、全フレームです。このパスの結果が 300,000 バイトなら、次は 170 ピクセルのまま 128 色に下げます。500,000 バイトなら、代わりにフレームを 1 つおきにします。700,000 バイトなら、幅を 98 ピクセルに縮めます。ファイルが収まった時点で止まり、パスは最大 8 回です。結果が 250,000 バイトなら「94%削減:244.1 KB」と表示され、「name_compressed.gif」としてダウンロードされます。

使用する設定と制限事項

  • まずは「サイズに収める」から始めます。 「目的」の初期値は「サイズに収める」です。「サイズ上限」を「Slack絵文字(128 KB)」「Discord絵文字(256 KB)」「Discordステッカー(512 KB)」「1 MB」「5 MB」「10 MB(Discordアップロード)」から選ぶと、収まるまでツールが GIF を小さくし続けます。この名前はあくまでプリセットで、サイズは 1 KB = 1,024 バイトで数えています。アップロード先のサイトの最新の上限を確認してください。選んだサイズよりすでに小さい GIF の場合はその旨が表示されますが、圧縮すればさらに小さくなることもあります。
  • 何をどの順番で変えるかを知っておきます。 「サイズに収める」では、色数を減らす(256、128、64、32)、フレームを 1 つおきにする、幅を小さくする、の順に試し、各パスは前のパスの結果から始まります。次にどの手順を取るかは、直前の結果が目標をどれだけ上回っていたかで決まります。目標の 1.6 倍以内なら色数を減らし、2.2 倍以内なら(8 フレーム以上の GIF に限り)フレームを 1 つおきにし、それ以上なら幅を狭くします。幅は 48 ピクセルより小さくはならず、8 パスで終了します。ページには「収まるまで、まず色数を減らし、次にフレームを1つおきにし、最後に幅を小さくします。」と説明されています。
  • 細かく指定したいときは「設定を選ぶ」を使います。 このモードでは、選んだとおりの設定で 1 回だけ処理します。「色数」は 256、128、64、32 から選べます(最初は 128)。「幅」には「元のサイズ」が、GIF 自身の幅つきで「元のサイズ(600px)」のように表示されるほか、480、320、240、128 px のうち GIF より狭いものが表示されます。「フレーム」は「すべてのフレームを残す」「2フレームに1つ残す(速度は同じ)」「3フレームに1つ残す(速度は同じ)」から選べます。フレームを間引くと、動きはなめらかさが減ります。
  • 絵柄に合ったディザリングを選びます。 「ディザリング」には 3 つの選択肢があります。初期値の「パターン(最小サイズ)」、「拡散(グラデーションが最もなめらか)」、「なし(べた塗り・イラスト向け)」です。写真やグラデーションには拡散、べた塗りの絵にはなし、ファイルサイズを最優先するならパターンを使います。どちらの目的でも有効で、設定を変えると前回の結果はクリアされます。
  • 元より大きなファイルが返ってくることはありません。 再エンコードした GIF が元のファイルより小さくならない場合は、ツールは元のバイト列をそのまま残し、「このGIFはすでに十分最適化されているため、元のファイルを残しました。色数を減らすか、幅を小さくしてみてください。」と表示します。この場合、ダウンロードされるのは新しい名前が付いた元のファイルです。これは、すでに最適化されている GIF でよく起こります。小さいファイルができた場合は、元のループ設定(1 回だけ再生する GIF を含む)が引き継がれます。
  • GIF の数え方を確認し、MP4 も検討します。 ツールは、ピクセルをデコードせずに GIF のヘッダーとフレーム一覧を読み取り、ファイルサイズの隣に画像サイズ、フレーム数、再生時間を表示します。再生時間を計算するときは、ブラウザでの再生に合わせて、フレームの遅延が 100 分の 0 秒または 1 秒のものを 0.1 秒として数えます。ページには「さらに小さくできます:多くのチャットアプリやサイトでは、MP4もGIFと同じように再生されます。そのときはGIFからMP4を使ってください。」とも表示されます。ツールは一度に 1 つの GIF を処理します。初回は約 31 MB の動画エンジンをダウンロードし、以後はブラウザに保存されます。GIF はブラウザ内で処理され、アップロードされません。

よくある問題とその解決方法

「このファイルはGIFではありません。アニメーションの.gifファイルを選んでください。」と表示される
ツールは、ファイル名ではなく、ファイルの先頭のバイトを確認します。.gif に名前を変えた PNG、WebP、MP4 は、ドロップした時点で、たいてい「photo.gif は PNG ファイルのため、このツールでは開けません。」のようなメッセージで拒否されます。「GIFではありません」というメッセージが出るのは、ファイルが GIF87a または GIF89a で始まらず、種類も特定できなかった場合、GIF ヘッダーを入れるには短すぎる場合、フレームがない、または幅か高さが 0 の場合(破損したファイルなど)です。アニメーションを本物の GIF として書き出し直して、もう一度選んでください。
「GIFを小さくしすぎずにサイズ上限に収めることができませんでした。より短いGIFか、大きめの上限をお試しください。」と表示される
ファイルが収まる前に、ツールが試せる手順を使い切りました。8 回のパスを行ったか、幅が 48 ピクセルに達したかのどちらかです。最後に作られたものはダウンロードできます。「サイズ上限」を大きくするか、別のツールで先にアニメーションを短くしてください(このツールでは、先頭や末尾のフレームを切り取れません)。ページには、MP4 ならさらに小さくなることも表示されます。
「このGIFはすでに十分最適化されているため、元のファイルを残しました。色数を減らすか、幅を小さくしてみてください。」と表示される
再エンコードした GIF が同じサイズか、より大きくなったため、ツールは大きなファイルを返さずに元のファイルを残しました。「設定を選ぶ」では、色数を 64 または 32 にするか、幅を狭くしてください。「サイズに収める」では、ファイルのサイズより小さい「サイズ上限」を選んでください。すでに収まっている GIF は 1 回しか処理されません。ページには、MP4 ならさらに小さくなることも表示されます。
「エンコーダーの読み込みに失敗しました。インターネット接続を確認してもう一度お試しください。」と表示される
動画エンジン(約 31 MB)をダウンロードできませんでした。ページは、GIF を選んだ時点でこのダウンロードを開始し、待っている間はボタンに「エンジンを読み込み中…(タップでキャンセル)」と表示されます。接続を確認して、もう一度「GIFを圧縮」を押してください。一度ダウンロードされたエンジンはブラウザに保存されます。
「ブラウザがこのファイルの処理中にメモリ不足になりました。このデバイスには大きすぎます。クリップを短くするか、ファイルサイズを小さくするか、デスクトップコンピュータをお試しください。」と表示される
音声・動画ツールと違い、このツールはファイルを選んだ時点ではファイルサイズを確認せず、処理中は GIF 全体がブラウザのメモリに保持されます。フレーム数が非常に多い GIF や、画像の大きな GIF では、メモリが足りなくなることがあります。パソコンを使うか、先に別の場所で GIF を短くしてください。

比較

「サイズに収める」は手間いらずで、設定をツールが選び、収まった最初の結果で止まります。「設定を選ぶ」は結果が予測しやすい 1 回だけの処理ですが、目標に届かないことがあります。どちらの場合も、このツールが行うのは、既存の GIF の色数、フレーム、幅を減らすことだけです。トリミング、カット、高速化、逆再生、フレームの編集はできず、一度に 1 つの GIF しか扱えません。エンコーダーは ffmpeg のパレット方式で、非可逆の GIF エンコード手順はないため、それを備えたパソコン用の最適化ソフトのほうが、同じ GIF からより小さなファイルを作れる場合があります。それよりも大きく小さくするには形式を変えるのが効果的で、ページ自体も MP4 を案内しており、多くのチャットアプリやサイトで GIF と同じように再生されるとしています。その代わり、アップロードもインストールも不要です。

関連ツール

よくある質問