AviUtl、高画質のためのx264guiExの設定とmp4出力

2019年7月30日

今回は、AviUtlで編集した動画をmp4で書き出す方法について紹介したいと思います。使用するのはrigayaさんのx264guiExプラグインです。

x264guiEx(GitHub)

x264guiExの導入

まずは確認から。

本体のその他→出力プラグイン情報を見ます。mp4出力に必要なプラグインがないためmp4出力ができない状態です。mp4出力のためのプラグインを導入しましょう。

今ではAviUtlの導入時に一緒にx264guiExプラグインを導入するかと思いますが、今一度導入を見ていきます。

x264guiEx(GitHub)のページ、右サイドバーのReleasesから最新版をダウンロードします。

AviUtl2とAviUtl版がありますが、ここでは無印のAviUtl版で説明します。

ダウンロードしたzipファイルを解凍します。exe_filesフォルダとpluginsフォルダをコピーします。

AviUtlフォルダに貼り付けます。導入時にpluginsフォルダを作成していると、上書き確認が出ると思うので、そのまま上書きしてください。

再度本体のその他→出力プラグイン情報を確認します。x264guiExが表示されていれば導入完了です。

出力の前に覚えておきたいこと

動画を出力する際には前もって重要視することを決めておくとやることがわかりやすいです。

たとえば、「ファイルサイズが大きくなっても画質重視で」とか、「100MBの中でできるだけ高画質に」とか、「確認のためだけだからできるだけ高速で」とかですね。

同じx264guiExの設定でも、その画質は動画の内容によって大きく異なります。

動きが多い動画と動きの少ない動画では同じ設定でも結果が変わってきます。そのため、「この設定なら必ず綺麗になる」ということはありません。

また、どれだけ高画質な設定にしても、設定だけで元の動画より綺麗になることはありません。

ビットレートは高くすればするほど出力時間が長くなり、ファイルサイズも大きくなりますが、画質は必ずしも高画質にはなりません。

x264guiExの設定

本体のファイル→プラグイン出力→拡張x264出力(GUI)Ex。

ビデオ圧縮のボタンからx264guiExの設定を開きます。

デフォルト設定です。

ここから主だった設定項目を見ていきます。

x264の出力にはシングルパスとマルチパスというものがあります。

シングルパスは1回で出力するのに対し、マルチパスは複数回出力します。

シングルパスでは1回で動画を解析・出力するので出力にかかる時間は短いです。そのかわり、動画の解析が甘くなり動きの多い動画では部分的に画質が悪くなる可能性があります。

マルチパスでは1回目に動画の解析をし、2回目で解析に基づいて出力するため時間が長くなるものの、より綺麗な動画を望むことができます。

自動マルチパスは1回目から2回目の出力を自動で行います。

どっちがいいの

結論から言うと、

・ファイルサイズとか気にしないので手っ取り早く高画質にというならシングルパス – 品質基準VBR(可変レート)

・ファイルサイズやビットレートを指定して出力したいなら自動マルチパス

が適当かと思います。

よくわからないなら、まずはデフォルトのシングルパス – 品質基準VBR(可変レート)です。

シングルパス 品質基準VBR(可変レート)

シングルパス – 品質基準VBR(可変レート)では品質(Quality)で高画質かどうかを決定します。デフォルトは23で、値を小さくするほど高画質でファイルサイズが大きくなります。

詳細なビットレートやファイルサイズは出力するまでわかりません。高品質か低品質かを指定します。

試しに同じ動画を出力してみたところ、品質18は品質23の約2倍のビットレートとファイルサイズになりました。

品質を上げるとその分出力にかかる時間も長くなります。

品質23より大きな値にすると劣化が気になりはじめ、品質18より小さな値にしてもファイルサイズが大きくなるだけで目に見える画質の差は無くなっていきました。

なので、品質23~18位を目安に何度か出力して丁度いいところを見つけていきます。

ただ、冒頭でも述べた通り、動画によって最適は異なります。何度か出力してみて自分の最適を見つけると良いと思います。

自動マルチパス

続いて自動マルチパスについて見ていきます。こちらはデフォルト設定。

nul出力にチェックを入れると、1回目の出力を動画の解析だけして実際には出力しないようになります。出力しないのでその分速くなります。

自動マルチパス数は2にします。3回、4回と数を増やしても時間がかかる割にほんの気持ち程度しか差が出ないこともあるので2が適当だと思います。

目標映像ビットレートを設定します。

シングルパス – 品質基準VBR(可変レート)のときとは違い、マルチパスではビットレートを自分で設定することができます。

ビットレートは大きくするほど高画質になりますが、不要なほど大きく設定すると無駄にファイルサイズが大きくなるデメリットがあるので、動画の内容に応じた適切なビットレート設定が必要です。

目標映像ビットレートをー1にすると自動になります。これは上限ファイルサイズ(映像+音声, MB)にチェックを入れて設定します。

上限ファイルサイズを25MBと設定し、そのファイルサイズの中で最適なビットレートを自動で計算してくれます。

かつて動画投稿はさまざまな制限の中で行われてきました。2000kbpsに収めなきゃとか、5MBに収めなきゃとかやり繰りを強いられてきたため、昔からの人は自動マルチパスでビットレートを指定するのに慣れているのかなと思います。

現在ではそうした制限は無くなりつつあり、むしろ高画質のために6Mbps以上が必要みたいになってきましたね。

ニコニコ動画の投稿仕様、より詳細な推奨エンコード設定
YouTube にアップロードする動画におすすめのエンコード設定

ビットレート計算機

x264guiExの右上にビットレート計算機というのがあります。

サイズからビットレートを求めるを選択した場合。

まずは動画長さを指定します。次に動画サイズに目標のファイルサイズを指定するとそれに合わせて最適なビットレートを計算して出してくれます。

ビットレートからサイズを求める場合。

同じように動画の長さを指定。今度は目標となるビットレートを指定すると、それに合わせたファイルサイズが計算されて表示されます。

動画出力の目安に使用してみるのも良いかと思います。

その他の設定

プリセットのロードに速度の項目があります。fast側にするほど画質を犠牲に速度が速くなり、slow側にするほど速度を犠牲に画質が良くなるようですが、実際に出力してみると大きな差は見られず。

デフォルトのmediumのままで十分かと。

プロファイルもデフォルトのhighで。

色空間のcolormatrixはデフォルトで指定なしになっています。

AviUtl側では色変換の設定が自動になっており、縦の解像度が720以上ある場合はbt709になります。

x264guiExのcolormatrixをautoにするとAviUtlと同じように縦解像度が720以上のときに自動でbt709になるようです。

よくわからない場合は指定なしが無難とのことで、ここもデフォルトのまま指定なしにしています。

音声タブのビットレート指定で音質の高低を設定します。

その他のタブについては、わからないならいじらないのが無難ということでデフォルトのまま。

プリセットにはそれぞれ投稿プラットフォーム別に最適と思われる設定が用意されています。

ただし、いろんな設定が変更されるので、毎回の出力時に確認したり、デフォルトにリセットするなどして事故を回避しましょう。

いろいろいじった後は、x264guiExの左下にあるデフォルトボタンを押すと設定が初期化されます。

出力時に気を付けたいこと

最終オブジェクトと最終フレームの位置がずれていると何もない真っ黒な画面が流れ続けるので、最終フレームの位置には気を付けたいところ。

拡張編集上で右クリック→範囲設定→最後のオブジェクト位置を最終フレームにすると、オブジェクト終わりと最終フレームが一致します。

最初から最後のフレームまで音声ファイルがあると、「チッ」とか「ブツ」とかのノイズが入ることがあるので、開始数フレーム、最終数フレームは音声ファイルを置かない工夫もありだと思います。

その他、

・使用中のファイルと同じ名前にしないように
・ファイル名に環境依存文字を使用しないように
・格納するフォルダにも環境依存文字を使用しないように
・動画の縦横(特に横)の解像度を奇数にしないように

rigayaさんのx264guiEx エラーと対処方法ページ(GitHub)も参考にしてみてください。

AviUtl、mp4の読み込みと読み込めないときの解決法

今回は、AviUtlでmp4ファイルを読み込む方法と読み込めない場合の対応を紹介…
seguimiii.com

いかがだったでしょうか。
個人的に昔は自動マルチパスをよく使っていたのですが、今はシングルパス – 品質基準VBR(可変レート)も使うようになりました。

AviUtlでのx264guiExプラグインを用いたmp4出力、機会があれば是非参考にしてみてください。