abox.tools

言語: 日本語

動画の一部からGIFを作る方法

クリップ全体から作ったGIFは巨大で、その中身のほとんどは誰も見たくなかった部分です。この仕事は実のところ2つの決断です。どの数秒か、それからどの設定か。どちらも手元の端末の上で起きます。どちらの道具も何もアップロードしないからです。

Markdownで表示

短い答え

ひと続きの1シーンなら、動画からGIFの変換器を開き、動画を放り込んで、タイムラインで区間に印を付けます。変換されるのは印のあいだだけなので、前もって切っておくものはありません。幅とフレームレートを選んで、書き出せば終わりです。

1シーンを超えるもの——同じ試合の2つのゴール、前振りとオチ——なら、先に動画カッターでクリップを組み立ててから、その結果を変換器に渡します。カッターは印を付けた部分をいくつでも、再エンコードせずに1つのファイルにつなぎます。この最初の一歩は画質を何も失わず、時間も数秒しかかかりません。

受け渡しはクリックひとつです。カッターが書き出しを終えると、ダウンロードボタンの下の一列が結果をそのままコンバーターへ運ぶことを申し出て、クリップは読み込み済みの状態で届きます——途中で保存してドロップし直す手間はありません。

どちらの場合も順番は同じです。数秒を先に決め、設定は後で使う。このページの残りは、その順番がこのサイトの作るほかの何よりもGIFで効いてくる理由の説明です。

GIFの1秒はなぜあれほど高くつくのか

GIFは動画ではありません。多くて256色のパレットから描かれた完全な絵の束で、動きのことを何も知らない1987年の方式で圧縮されています。現代のコーデックはフレーム間で何が変わったかを記述しますが、GIFは同じままだった部分をおおむね繰り返します。

実際の帰結はこうです。幅480ピクセル、毎秒12フレームの10秒のGIFは、たいてい5〜10 MBになります。同じクリップのMP4の10倍で、画質はその何分の一かです。変換器のせいではなく、フォーマットがそういうものなのです。GIF変換のガイドが、それでもGIFが割に合う場合と、無音のループ動画のほうがよく働く場合を扱っています。

サイズはフレームごとに育つので、いちばん安く節約できるメガバイトは丸ごとの秒です。幅を半分にすればサイズはおよそ4分の1、フレームレートを半分にすればおよそ半分。しかし、そもそもそこにあるべきでなかった映像を切り落とせば、その費用を丸ごと節約できて、結果も良くなります。アクションから始まるGIFは、そこまで2秒歩いていくGIFよりよく読めます。

変換器のタイムラインで足りる場合

変換器のタイムラインが印を付けるのは1つの区間です。始まりと終わり、そのあいだの全部がGIFになります。欲しい瞬間がひと続きなら——どれだけ長くても——それで仕事のすべてで、カッターを前に置いても同じ2つの印に2軒目の家を与えるだけです。

印はゆるめではなく、わずかにきつめに打ちます。最後のフレームが最初のフレームの近くにあるときループは継ぎ目を隠しますし、両端から削ったフレームの1枚1枚がファイルサイズになって返ってきます。

区間のカード。タイムコード入りの映像フレームと、その下のバーに11秒と14秒で打たれた開始・終了の印。
変換ツールは自前の開始・終了の印を持っていて、長い映像から3秒を取るだけならそれだけで足ります。

先に動画カッターで切るべき場合

GIFに2つ以上の断片が要るようになった瞬間、カッターは自分の席に値します。

それから組み上がったクリップを変換器に放り込み、何にも印を付けないでください。ファイル全体が、もう、あなたの意図したちょうどそのGIFです。

設定を使う

秒が決まったら、サイズを決めるのは3つのつまみです。費用の大きい順に。

これを毎週やるなら

2つの手順がここで2つのページに住んでいるのはわざとです。各ページは1つの仕事をし、それぞれが単独で、何ひとつ端末を離れないことを証明できます。しかし両方のページが実行するものはすべてオープンソースです。MITライセンス、道具ごとに1フォルダー、各モジュールを名指しで説明するREADMEの付いた、依存なしのESモジュール。

だから同じ連鎖が毎週の一部なら、毎回手で歩き直す必要はありません。コーディングエージェントをリポジトリに向けて、カッターの区間ロジックとGIFエンコーダーを、あなたの場合そのものの形をした1枚のページに組み上げてもらってください。モジュールは読まれるために書かれていて、持ち出すことこそライセンスの目的です。