メインコンテンツへスキップ
見出し画像

AviutlでGIF画像を出力する方法。

    しけもち🍘

    noteの記事で使うために、AviUtlでGIF画像を出力する機会がありました。

    そこでGIF画像を出力する方法を調べた際に、ffmpegOutを利用する方法を知りました。

    この記事では、ffmpegOutを実際に利用する際に躓いたりしたこと。ループ回数などの設定方法。ノイズの少ないきれいなGIF画像を出力する方法を紹介します。

    AviUtl ExEdit2(AviUtl2)でも同様に設定を行う事でGIF画像を出力する事が可能です。

    この記事が良いなと感じたら、是非スキ♥️をお願いします。

    また間違い等ありましたら、コメント等で教えて下さい。


    はじめに

    最初にAviutlでGIF画像を出力する方法を検索したところ、Direct Animated GIF Export PluginやDirect GIF Export 2というプラグインを見つけました。

    そしてこの2つのプラグインをインストールして試してみました。

    ふたつとも動作しません・・・

    エラー表示とかも出ません・・・・

    導入が間違っているのか、プラグインのバグなのか、はたまたパソコンの相性などによるものか・・・・・

    色々と試したのですが、私の環境ではこの2つのプラグインは使えないようです🥲

    そこで別の方法がないか調べたところ、ffmpegOutというプラグインを利用する方法を見つけました。

    そしてffmpegOutを試したところきちんと動作し出力することができました。

    ということでこの記事ではffmpegOutを利用しAviutlでGIF画像を出力する方法を紹介します。


    ffmpegOutとは

    ffmpegOutとは以下の通り、AviutlでFFmpegを利用し出力ができるプラグインです⚙️

    ffmpegOut は、ffmpegを使用してエンコードを行うAviutlの出力プラグインです。

    https://github.com/rigaya/ffmpegOut

    そしてFFmpegとは、動画や音声を記録、変換、再生するためのフリーソフトウェアです。

    様々なファイル形式とコーデックをサポートしており、多彩なオプションを使用することができます。

    例えば、動画のフォーマット変換、動画から音声の抽出、動画のカットや結合など、様々なメディア処理を行うことが可能です。

    そしてFFmpegはGIFにも対応しています。

    つまり、ffmpegOutを使えばGIF画像が出力できるはずです💡✨


    GIF画像出力のやり方

    画像
    ffmpegOutの設定画面

    これがffmpegOutの設定画面です。
    ここにコマンドなどを入力して、どのように出力するかを設定します。


    GIFを出力する

    GIF画像を出力したい場合は以下の様に設定します。

    1. GIFに音声は無いので音声を有効のチェックは外します。

    2. 出力拡張子に出力したい形式の拡張子を入力します。
      今回はGIF画像を出力したいので.gifと入力します。

    3. OKを押して設定を適用します。

    これで出力を行えばGIF画像が出力できるようになります。
    シンプルにGIF画像を出力したいだけならば、これだけでOKです。

    また、ループ回数を指定したり、ノイズを減らしたりしたい場合、コマンドを入力する必要があります。

    私は出力拡張子に出力したい形式の拡張子を入力すれば良い事に気が付かずに数時間が溶けました。。。🫠🫧


    ループ回数を指定する

    繰り返す回数を指定したり、1度再生したら繰り返さないという設定を行いたいならループ回数を指定する必要があります。

    ループ回数を指定したいならコマンドに-loop ○○と入力すれば設定できます。

    ○○に入るのがループ回数で、例えば-loop 3とすれば3回ループします。
    ループ無しの場合は-1、無限ループの場合は0を指定します。
    ループ回数の設定を行わない場合は、無限ループが適用されます。


    きれいなGIFを出力

    普通にGIF画像を出力するとノイズが目立つことがあります。
    ノイズが目立ちにくいようにするには以下の様なコマンドを設定します。

    -filter_complex "[0:v] split [a][b];[a] palettegen [p];[b][p] paletteuse"

    おそらくこのコマンドは読み込んだ動画を元に256色のカラーパレットを作成し、そのカラーパレットの色を使いGIF画像を出力するものです。(間違っていたらごめんなさい🙇💦)

    GIF画像では最大256色までしか使えないため、動画の内容によってはノイズが目立つ事があります。
    なので、どの色を使えばノイズが少なくなるかを計算してカラーパレットを作成していると思います。

    ノイズが目立つのを低減させ、なおかつループを設定したい場合は以下の様に複数のコマンドを記述します。
    -loopのように ハイフンから始まるのがひと塊のコマンドです。

    -filter_complex "[0:v] split [a][b];[a] palettegen [p];[b][p] paletteuse" -loop 3

    設定のプリセット

    ffmpegOutには設定のプリセットが用意されています。

    またプリセットを新しく追加することも可能です。

    以下にGIF画像の設定のプリセットを用意しました👍

    pluginsフォルダの中のffmpegOut_stgフォルダに以下のZIPファイルを解凍したフォルダを追加すればいくつかのテンプレートが追加されます。


    参考にしたサイト

    コマンドは以下を参考にしました。

    本当にありがとうございます😌🙏

     
     
     
    はじめまして。こんにちは。しけもちと申します。 偏頭痛がするので雨音が近付くと憂鬱な気分になります。 現在は主にAviUtlに関連する事を投稿してます。 よろしくお願い致します。

    あなたへのおすすめ