コンテンツライターとして、記事に画像を追加する必要があります。場合によっては、概念を少し簡単に説明するために、ビデオまたはgif画像を追加する方がよい場合があります。読者は、テキストよりもビデオまたはgif形式の出力を見ると、ガイドを簡単に理解できます。先日、フレームショットについて書きました 、Linux用の機能豊富で強力なスクリーンショットツール。今日は、ビデオまたは一連の画像から高品質のGIF画像を作成する方法を紹介します。 ギフスキーに会う 、クロスプラットフォーム、オープンソース、コマンドライン Pngquantに基づく高品質のGIFエンコーダー 。
不思議に思う人のために、pngquantはコマンドラインの不可逆PNG画像コンプレッサーです。私を信じてください、pngquantは私が今まで使った中で最高のPNGコンプレッサーの1つです。 PNG画像を最大70%圧縮します 元の品質を失うことなく、完全なアルファ透明度を維持します。圧縮された画像は、すべてのWebブラウザおよびオペレーティングシステムと互換性があります。 GifskiはPngquantに基づいているため、効率的なGIFアニメーションを作成するためにpngquantの機能を使用します。 Gifskiは、フレームごとに数千色を使用するアニメーションGIFを作成できます。 Gifskiにはffmpegも必要です ビデオをPNG画像に変換します。
LinuxにGifskiをインストールする
FFMpegとPngquantがインストールされていることを確認してください。
FFmpegは、ほとんどのLinuxディストリビューションの公式リポジトリで利用できるため、デフォルトのパッケージマネージャーを使用してインストールできます。インストール手順については、次のガイドを参照してください。
- LinuxにFFmpegをインストールする方法
Pngquantは、デフォルトのリポジトリでも使用できます。 LinuxにPngquantをインストールするには、次のガイドを参照してください。
- Pngquant –LinuxでPNG画像を圧縮するためのコマンドラインユーティリティ
前提条件をインストールした後、Gifskiをインストールします。 カーゴを使用してインストールできます 錆の場合 プログラミング言語がシステムにインストールされています。
$ cargo install gifski
Linuxbrewでも入手できます パッケージマネージャー。
$ brew install gifski
カーゴやLinuxbrewをインストールしたくない場合は、リリースページから最新のバイナリ実行可能ファイルをダウンロードしてください。 gifskiを手動でコンパイルしてインストールします。
GifskiGIFエンコーダーを使用して高品質のGIFアニメーションを作成する
PNG画像を保存した場所に移動し、次のコマンドを実行して、画像のセットからGIFアニメーションを作成します。
$ gifski -o file.gif *.png
ここで、file.gifは最終的な出力gifアニメーションです。
Gifskiには、次のような他の追加機能もあります。
- 特定の寸法のGIFアニメーションを作成します
- 1秒あたりの特定のアニメーション数を表示する
- 特定の品質でエンコードする
- より速くエンコードします
- 画像は、並べ替えではなく、指定された順序で正確にエンコードします。
たとえば、width=800やheight=400などの特定のサイズのGIFアニメーションを作成するには、次のコマンドを使用します。
$ gifski -o file.gif -W 800 -H 400 *.png
gifアニメーションで必要な1秒あたりのアニメーションフレーム数を設定できます。デフォルト値は20 。
たとえば、1秒あたり1つのアニメーションフレームを使用するには、次のコマンドを使用します。
$ gifski -o file.gif --fps 1 *.png
1〜100のスケールで特定の品質でエンコードできます。明らかに、品質が低いとファイルが小さくなり、品質が高いとgeizegifアニメーションが大きくなる可能性があります。
$ gifski -o file.gif --quality 50 *.png
多数の画像をエンコードすると、Gifskiの時間が長くなります。エンコードプロセスを通常の3倍の速度にするには、次のコマンドを実行します。
$ gifski -o file.gif --fast *.png
品質が10%低下し、より大きなアニメーションファイルが作成されることに注意してください。
(並べ替えではなく)指定された順序で画像を正確にエンコードするには、-nosortを使用します オプション。
$ gifski -o file.gif --nosort *.png
GIFをループさせたくない場合は、-一度を使用するだけです。 オプション。
$ gifski -o file.gif --once *.png
ビデオファイルからGIFアニメーションを作成する
ビデオからアニメーションファイルを作成することも可能です。これがFFmpegが役立つところです。まず、以下のようにビデオを最初にPNGフレームに変換します。
$ ffmpeg -i video.mp4 frame%04d.png
上記のコマンドは、video.mp4から「frame0001.png」、「frame0002.png」、「frame0003.png」などの画像ファイルを作成し(%04dはフレーム番号を作成します)、現在の作業に保存しますディレクトリ。
読者の一人としてデニスク コメントセクションに記載されているように、上記のコマンドは、ビデオファイルの長さに応じて数千の出力フレーム画像を生成します。出力画像の数を制限したい場合は、 -tを使用できます 以下のようなオプション。
$ ffmpeg -i video.mp4 -t 10 frame%04d.png
-t 10 オプションは、ffmpegにビデオの10秒後に停止するように指示します。
画像ファイルを変換したら、次のコマンドを実行してアニメーションGIFファイルを作成します。
$ gifski -o file.gif *.png
詳細については、ヘルプセクションを参照してください。
$ gifski -h
これは、Gifskiを使用して作成されたサンプルアニメーションファイルです。

Gifskiを使用して作成されたアニメーションGIFファイル
ご覧のとおり、GIFファイルの品質は本当に素晴らしいです。
詳細については、以下のプロジェクトのWebサイトを参照してください。