拡張x264出力(GUI)Exプラグイン(以下GUIEx)は、x264CLI(x264.exe)という、コマンドラインベースのAVC/H.264エンコーダーをGUIで操作できるようにしたAviUtl専用のフロントエンド(出力プラグイン)であり、x264CLIの機能をほぼすべて使えるようになっている。GUIで操作できるオプションは限定されているが、GUIに設定項目がないオプションをコマンドタブにCLI同様に記載するか、CLIモードに切り替えて全オプションをCLI時と同様に記載することで設定可能である。†GUIExを使用するためにはプラグイン(x264guiEx.auo)、設定ファイル(x264guiEx.ini)の他にいくつかのツールが必要となる。現在のverでは簡易インストーラを使うことで自動で全て用意してくれる。x264CLI:フリーでオープンソース、クロスプラットフォームだけではなく、品質と圧縮率を上回るH.264/AVCエンコーダー。x264.exeと呼ぶ人も多いが、exeはWindowsのみの実行ファイルの為、x264CLIというほうが名称としては正しい。qaac:Appleのエンコーダをベースにした、コマンドラインで動作するAAC/ALACエンコーダフロントエンド。Supportが必要。MP4Box:エンコード済の映像データと音声データを結合し、MP4ファイルを作るためのマルチプレクサー。†これ以降の説明内容は以下のバージョンの情報に準拠している。(2012/05/08リリース)※速度(--preset),チューニング(--tune),プロファイル(--profile)のみrev2762(2017/01/23リリース)現在の情報。その他のオプションのデフォルト値は非常に古い情報であるし、削除されたオプションがあるかもしれないので、十分に注意すること。各オプションの効果の説明は現在においても有用なものが少なくない。項目名の右の【】内は、対応するx264CLIのオプションとそのオプションのデフォルト。足りない情報、間違った情報、変更されたオプション等は、見つけたものが追加・修正・削除すること。映像x264.exeの指定エンコードに使用するx264.exeの場所を指定する。32bitOSの場合は32bit用のx264.exeのみ使用可。64bitOSなら32bit用か64bit用のどちらでも使用できる。64bitOSの場合は、64bit用x264.exeを使用したほうがスピードは速くなる。固定ビットレートビットレートを指定して1回だけエンコードを行う。目標となるビットレートを設定することでエンコード後の容量は予測がつけやすくなるが、ビットが大量に必要になる部分ではビットが不足し、逆にそれほど必要がない部分では無駄にビットを割り振ってしまうため、画質は良くない。x264は厳密な固定ビットレートにはエンコード出来ないため、ビットレートもきっちり指定した通りにはならない。定められた容量に抑えたいのであればマルチパスエンコードを、1回のエンコードで済ませたいのであれば品質基準VBRを用いるべし。映像の量子化量、すなわち映像をどれくらい圧縮するかの基準となる値を指定する。値が小さいほど高画質・低圧縮になり、値が大きいほど低画質・高圧縮になる。0に設定すると可逆圧縮になる。(圧縮と呼べるかはわからないが)固定量子化量では品質基準VBRの項に記したようなビットレートの節約を行わないので、固定量子化量を用いてエンコードすると、品質基準VBRを用いてエンコードしたものに比べて視覚的に同じ品質でも容量だけが大きくなる。ある開発者曰く「特殊な実験目的以外では使う価値がまったくない」とのこと。品質基準VBRでエンコードすると汚いので固定量子化量が良いと思った人は、品質基準VBRで後述のビットレート変動量を多めに調整すると良い。映像の視覚的品質を指定する。固定量子化量と同様、値が小さいほど高画質・低圧縮になり、値が大きいほど低画質・高圧縮になる。品質基準VBRでは人間の視覚では劣化を認知できないような、複雑であったり動きの激しいシーンのqp(量子化量)を上げてビットレートを節約するため、より少ない容量で高画質に見せることが出来る。エンコード後の容量に制限がない場合であれば、通常品質基準VBRを使う。PASSx264は基本的に品質基準VBRで使うものであるが、品質基準VBRを使用すると出来上がるファイルの容量や平均ビットレートは、実際にエンコードが終了するまでは分からない。世の中にはファイルサイズやビットレートに制限があるため、これを使えない(使いにくい)事情が存在する(例えばニコニコ投稿用のエンコードとか)。マルチパスとはあらかじめ1回エンコードを行って動画の情報を収集し、2回目のエンコードで指定されたビットレートをきっちり守りつつ、最善の結果を出すという方式である。PASSを選んだ場合、x264はとりあえずエンコードを1回適当に行って動画のいろいろな情報の下調べを行い、ログファイルを作って記録する。このモードでエンコードされた動画はただの下調べの結果に過ぎないのでかなり酷い出来になりがちである。PASSマルチパスの2回目(もしくは3回目、4回目...)を行う。1stPASSで収集したログファイルを頼りに、エンコードを行う。これによって出力されたファイルは、ほぼ正確に指定されたビットレートを守りつつ、視覚的品質にも優れたものとなる。(ただし、あくまでも指定されたビットレートの範囲内の品質なので、ビットレートが決定的に不足している場合はどうにもならない)。基本的に、品質よりもビットレートを目標に合わせる事の方が優先されるので、ファイルサイズがほぼ同一の品質基準VBRとマルチパスエンコードでは、品質基準VBRのほうが見た目がよいといったこともしばしば起こる。マルチパスの回数は合計2回だけで十分であるが、あまりにも動画のフレーム数が少なすぎ、また動画が動きが激しかったりシーンチェンジが頻発するものである場合は、うまくビットレートをやり繰り出来ず指定した数値を上回ってしまうことがある。このような場合のみ、3回目、4回目...を行うことで、ひょっとするとぎりぎり指定値内に収めることができるかもしれない。それでもダメな場合がほとんどではあるのだが。ちなみに2回目ですでに指定値内でエンコードできた場合は、それ以後100PASS、1000PASS、10000PASS行っても画質は変わらないか、むしろ下がるだけである。自動マルチパス自動で指定した回数のマルチパスを行う。マルチパスエンコードを行う場合、通常はまず1stPASSを行い、その後改めてNthPASSに設定し直して再度エンコードする必要がある。GUIExは最初にいきなりNthPASSを選んでも、これにチェックを入れておけば、自動で1stPASSを行う設計になっている。しても3PASS以上やりたい人は、行いたい回数だけ数値を上げればよい。nul出力マルチパス出力時に最終パス以外では動画ファイルを出力しない方式。自動マルチパス出力する際は出力された動画ファイルは自動的に上書きされるので、使用しなくても結果は変わらないが、HDDアクセスが減って少しエンコードが速くなるかもしれない。通常は自動マルチパスと一緒にチェックを入れておくといい。ターボマルチパスエンコードを行う際、必要最低限のオプション以外を使用しないことによって、1stPASSを時間短縮するモード。CLIでオフにしたいなら--slow-firstpassを付け加える。--fast-pskipに変更し、2ndPASS以降は元の設定をそのまま使う。使用した場合、ひょっとすると2回目以降のパスにおいて必要な情報が得られず画質が下がるかもしれないが、x264開発者によれば「影響はほとんどない」らしい。固定ビットレート」もしくはマルチパスにおいて、再生時間1秒あたりの目標データ量を設定(音声を除く)する。単位はキロビット毎秒(kbps)。どれくらいの数値を指定すればよいかは特に決まっていないので、通常は音声との兼ね合いや目標ファイルサイズから計算し、指定可能な最大値を入力する。マルチパスを行わない場合は指定値をオーバーしたりもするが、マルチパスエンコード時の最終出力は、あきらかに無理なものでない限り、ほぼ指定値通りとなる。一般会員は映像、音声、オーバーヘッド合計で656kbps以下にしなければならない。MODEのみの説明)シングルパスの場合はこのコマンドは使わない。1はマルチパスの1回目のパスに使う。ログを新たに書き換える。3ではログを参照しながら書き換える。Nth-passで使う。2ではログを参照し、書き換えない。最終passでそれまでのログを書き換えたくない場合使う。3と指定しておけばよい。デフォルトプリセットユーザビリティ向上のためx264にはある程度のプリセットが用意されている。普通はこれを使っているだけでも十分に綺麗にエンコードできるが、制限がきついニコニコ向けエンコードの場合、いくつかこれに追加したり変更したりしなければならないこともある。各プリセットを選択すると、オプションの該当項目のデフォルト値がプリセット値で上書きされる。Medium】ultrafastからplaceboまで全10種類。下に行くほど画質は上がるが遅くなる。placebo(プラシーボ:偽薬)は遅すぎる上に画質の向上は名前のとおり気のせいレベルという冗談のようなもの。Shikari(x264の開発者の一人)「多分1%未満」しかし世の中にはplaceboよりもさらに遅い設定を使いたがる愚者が多いのもまた事実...。映像の質の調整を行うためのもの(psy-tuning)と、再生環境に応じた調整を行うものの2種類に分類される。デフォルトはnone(変更なし)。x264CLIは映像の質の調整と、再生環境に応じた調整をそれぞれ選択できるが、GUIExはどれかひとつしか選択できないので、両方使用したい場合はどちらかをコマンドタブに追加する必要がある。ファイルサイズやビットレートに制限のあるニコニコでは、使用するとかえって悪くなることもある。<unset>は変更しないの意味。細かい粒子が漂っているような映像向け(アニメや映画の回想シーンとか)。psnr(エンコ前とエンコ後の映像を比較する時に使う計測値)が最大になるようにする。これを使用すると見た目は酷くなる事が多いので普通は使わない。psnrと同様で、ssimが最大になるようにする。これまた使えば見た目はひどくなることが結構ある。no-psytouhou:その名の通り、東方シリーズ向け。※x264CLI通常版のヘルプ(--fullhelp)からは削除されているが、x264guiExのUIからは選択できるし、x264CLIが通常版であっても問題なく使えるようだ。ヘルプ(--fullhelp)より][再生環境に応じた調整を行うtune]fastdecode:再生負荷を実用的なレベルで軽減する(画質は下がる)。これを使ってもまだ再生が重いのであれば、あとは平均fpsを落とすか、解像度を下げるか、PCを新しいものに買い換えるかしたほうがよい。0zerolatency:エンコード時のレイテンシ(エンコード前のデータがエンコーダーに入力されてから、エンコード済みのデータとして出力されるまでのタイムラグ)を最小に抑えるための設定。入れたものを少しでも早く出すために品質等は二の次になっている。基本的に放送、ストリーミング用途のための設定。high】H.264には再生環境の互換性を規定するための規格が決められており、各再生環境が対応しているプロファイルによって使用できる機能(オプション)に制限がかかる。FlashPlayerはHighプロファイルに対応しているので、特に機能制限はないと考えてよい。0)の場合はこの設定は無視される。baseline:Baselineプロファイル。旧式携帯電話や旧式iPod等はこのプロファイルでないと再生できない。0main:Mainプロファイル。PSP、iPhone等はこのプロファイルでないと再生できない。flathigh:Highプロファイル。オプションの変更なしなお各オプションの設定は、次の順番でデフォルト値の上書きを行う。1:最初にすべてのオプションをデフォルト値に設定2:速度(--preset)の設定を上書き3:チューニング(--tune)の設定を上書き4:ユーザーが個別に設定した値を上書き5:2パスエンコードの際にturboモードになっていれば(--slow-firstpassを指定していない場合)、1stパスのみturboモード用に変更6:プロファイル(--profile)の設定を上書き7:レベル(--level、後述)の設定を上書き音声FAWCheckFakeAacWav?という少々特殊な音声用ツールのためのチェックボックス。使わない場合はチェックを入れないこと。エンコーダ音声をエンコードするエンコーダを指定。通常はNeroAACエンコーダを指定する。音声エンコーダーが保存されているパスを指定。上記でNeroAACエンコーダを選択した場合、neroAacEnc?.exeの場所を指定する。デフォルトの位置と異なる場合があるので注意。音声のエンコード方式及び音声1秒間に収める目標データ量を設定。.mp4映像と音声を結合してmp4ファイルにする際に使用するmultiplexer(muxer)の指定。映像だけのエンコードならば必要はないが、音声のエンコード及び結合を行う場合は必須となる。MP4Boxが必要なので、各自ダウンロードしておくこと。拡張オプション特殊なオプションを使わない場合はチェックは入れないこと。「mp4box.exeの指定」MP4Box.exeが保存されているパスを指定する。空欄のままだと音声エンコード後、エラーとなるので必ず指定すること。tc2mp4Mod.exeの指定VFRな動画を作らない場合は空欄のままにしておくこと。.mkv映像と音声の結合してmatroskaファイルにする際に使用するmuxerの指定。「mkvmerge.exeの指定」で場所を指定する。用ではこれは使わない。Pフレームを基準に、Iフレームの品質をどれくらいまで上げてよいかを指定する。値を小さくするとIフレームとPフレームのQP係数は近くなる。ビットレート指定でのエンコードでは、大きくするとPフレームのQPがやたら高くなりがちで平均画質が下がるので、上げすぎはお奨めしない。下げすぎるとIフレームの質が低下する。デフォルトのままで問題なし。Pフレームを基準に、Bフレームの品質をどれくらいまで下げてよいかを指定する。後述のmbtree使用時は自動的に調整されるため、この値は無視される。設定値に関してはI-Pフレーム間QP係数と同様。0に設定すると固定ビットレートと同じ挙動を、1に設定すると固定量子化量と同じ挙動になる。Shikari氏によると、心理的に最適な値はデフォルトの0.6よりも大きいかもしれないとのこと(ソース)。アニメの場合は0.8程度に設定しても上げすぎではないだろう。後述のmb-treeの効き目を調節する役割も持つ。小さいほど低圧縮・高画質となり、0では可逆圧縮になる。範囲は0~(qpmaxの値)。多くのソースではqpが16を下回ってきたあたりから劣化を認知できなくなるとされる。それほど綺麗じゃなくて良いから容量を抑えたいという場合は、16あたりから徐々に増やして調整していくと良い。52以上はVBV-emargencyなる特殊処理時に使用される。この値を30~40あたりまで下げることでqpの幅を自分の意図通りに設定できるかもしれないが、x264は自動でqpを調節しているため、デフォルトから変更するのは非推奨。連続フレーム間における量子化値の最大変動幅。アニメなど場面転換前後の落差が激しい素材では増やしても良いかもしれないが、基本的にデフォルトのままで構わない。映像の色差のQPを決定する際に適用するオフセット値。低くすれば色差に関する品質が上がりファイルサイズは膨れるが、効果を視認できるかどうかは定かではない。後述のpsy-rdの設定によっても自動的に調整されるので、あまり弄らない。mb-treeレート制御【--no-mbtree】デフォルトON。チェックを外すかコマンド入力でOFF。映像を先読みしてQPの決定に重み付けを行う(時間軸で映像を観察して、後々重要になりそうな部分の品質を上げておき、どうでもよさそうなところは品質を下げる)。動きが少なくて平板な部分が多い動画につかうと、ビットレートを大幅に節約でき、その分全体的な品質の向上が見込める。--qcompの値を上げると効き目が弱くなり、下げると強くなる。40】mbtree等の処理で先読みするフレームの最大数。増やせば増やすほどメモリの使用量が上がり、上げすぎればクラッシュの原因になる。Quantization(視覚心理適応QP)マクロブロック単位でのQP可変を実行する。人間の顔がアップで映っている場合、すべて同一QPに設定すると肌がのっぺりして質感が失われる場合がある。AQを用いると髪の毛や輪郭(高周波部分)のQPを上げてビットを節約し、余ったビットを使って肌(低周波部分)のQPを下げて質感を出すといった事が出来る。使えるビット量は変わらないので、全ての部分の画質を向上する事は出来ない。人間の目で劣化が目立ちにくい部分のビットを削り、劣化が目立ちやすい部分にビットを回してくれるのがVAQである。0)はこの機能を使用しない。2)はVAQのビットレート配分をさらにメリハリをつけたものにする。1.00】AQを動作させる強さ。0に近いほど弱くなってQPの差が少なくなり、数値を大きくするほどQPの差が大きくなる(AutoVAQ使用時はQPの差はさらに激しくなる)。0でモード無効と同様の結果になる。アニメ等ディテールに乏しく低周波成分が多いものには0~0.6くらいの弱めの数値を選ぶのが一般的。FPS等のゲーム動画で壁や地面に発生するブロックノイズに悩まされてる人は、AutoVAQでここを1.0~1.5くらいにしてみるのもいいかもしれない。<RDO:Trellis>。どちらも0.0にすればoffになる(つまり、trellisのほうはデフォルトはoff)。視覚心理的に見て複雑とみられる部分や、色が激しく変化する部分などのqp値を下げ、最適化する。エンコード時に潰れやすい細部やフィルムグレインなどの表現力が高まる。初期値の1.0:0.0ではビットレートはかなり増えるのでニコニコではオフにするか0.5:0.0など低い数値にするほうがいいかも。Psy-trellisは細かいディザやグレインを残したい場合に効果的なオプション。効果が分かりにくくビットレートの消費も大きいため、プレミアム会員でビットレートに余裕がある等の場合以外は非推奨。Profileになる。p4x4はp8x8をつけないと効かない。i8x8は8x8dctが無ければ効かない。16x16のマクロブロックを、場面やフレームタイプに応じてさらに細かく分割できるようにしましょうというもの。離散コサイン変換はブロックを8x8にしてDCT処理を行なうことを可能にするためのオプション。i4x4の数が減るためビットレートが効果的に節約されて再生負荷も下がる。mainプロファイルまでしか対応していないポータブルメディアプレイヤーで再生するなどの制限がない限り、ONにしたほうがよい。他項目は量子化の際に使われるブロックサイズ。高画質を狙うならばチェックを多くつけておいたほうが良い。多くつけると再生負荷も大きくなる。p4x4は得られる画質の向上に比べてエンコード負荷が大きいので、切るのもアリ。デフォルトはp4x4以外ON。40】シーンチェンジを検出するしきい値=IDRフレームの挿入しやすさ。値を大きくするとIDRフレームの検出が多くなる。0にすると全く検出を行なわなくなり、IDRフレームの間隔が--keyintの値に固定される(--no-scenecut)。初期値から変更しなくて問題ない。シーンチェンジの検出が増えると大した場面転換でない画面の変化でもIDRフレームを挿入するようになるため、品質基準VBRではファイルサイズが大きくなり、2パスエンコードの場合は画質が落ちる。値が小さいと適正箇所にIDRフレームが入らない。シーク間隔を調整する目的以外でこれをいじる必要はない。以下の条件式を満たすとき、IDRフレームが挿入される模様。auto】IDRフレーム間の最小間隔。Pictures)サイズ。新しいIDRフレームが挿入され、次のGOPが始まるまでに連続するフレーム数の下限を指定する。min-keyintの値より短い間隔で場面転換があった場合、x264は場面転換をIフレームとしてエンコードし、新しいGOPを開始しない。映像の切り替わるところを確実にシークポイントにしたい場合はこれを1にすること。1に設定した場合、IDRフレームより前にある同じようなフレームを参照出来ず、ビットを無駄に使う可能性はある。自動の場合は、入力された映像のfpsの値か、次のkeyintの値の10分の1のうち、小さいほうの値に設定される。250】IDRフレームの最大間隔。fps×10が一般的。直前のIDRフレームとの間隔がkeyintの値になった場合、強制的にIDRフレームを挿入する。大きくするとIDRフレームの数が減って、相対的に必要なビットレートが下がる(画質があがる)かもしれないが、シークが効きにくい(下手するとまったく出来ない)動画になることもある。直前のIDRフレームとのフレーム間隔がkeyintの値に近づくとIDRフレームを挿入しやすくなるため、keyintを大きくするとscenecutによるIDRフレームの挿入も行われにくくなる。Aimer氏がフランス人だから(フランスで採用されているテレビ放送規格SECAMは25fps)。範囲0~16で、0はBフレーム無し。この値を大きくすると圧縮率が向上する可能性がある。1以上でMP4コンテナではディレイフレームが1枚発生する。2の場合は3~5推奨。最大連続数の範囲でBフレームに適するものをBフレームとし、適さないものをPフレームとする。0)にすると常に--bframesで設定した枚数を連続して使う(非推奨)。1)は高速な簡易判定を行う。2)にすると正確な判定を行うが1pass目が--bframesの数に応じて低速になる。エンコードに時間的な余裕があるなら完全(2)が良い。0】Bフレームの挿入傾向を調整。範囲は-90~100。一般的に0で問題ない。プラス方向に補正するとBフレームの使用量が増大し、マイナス方向に補正すれば減少する。どちらにしても画質が劣化する可能性のほうが高い。"normal"】none(0)、strict(1)、normal(2)の3種類。デフォルトはnormal。BフレームでIDRフレーム、Iフレーム、Pフレームだけでなく、Bフレームからの参照も許可するためのオプション。エンコードのスピードと画質は少し上昇するが、FlashPlayerで再生する場合、MP4コンテナ使用時のディレイフレームが2枚に増える。strictは実質ブルーレイディスクの規格に適合させるための方式で、normalはx264独自の方式。普通に使う分にはstrictを使用する利点はほぼ無い。open-GOP:off【--open-gop】open-GOPを使用するかどうかの設定。BD用エンコード以外でこれを使うのは地雷に等しい(よく考えないで使用すれば後悔することになる)。ちなみにこれをmp4に使用した場合、FlashPlayerではまったくseek出来ないファイルになる。CABAC:on【--no-cabac】デフォルトon。チェックをはずすかコマンド--no-cabac追加でoff。使えば画質はかなり向上するが再生負荷はそれ以上に跳ね上がる。無効にすると再生時の負荷が大幅に減少するが、ビットレートが元々足りないような動画でこれを切ると、画質は大幅にダウンする。再生負荷軽減を図る場合には真っ先に切られるオプションの第一候補。ちなみにこれを切るくらいなら他のコーデックのほうがマシと主張する者もたまにいるが、実際にはこれを切ってもH.264の性能は他のコーデック(VC-1、mpeg4-asp、VP8等)よりも上である。スライス数:0【--slices】フレームを分割処理する場合の分割数。基本的にこれは使わないほうがよいので0のまま弄らないこと。0:0】off:--no-deblockMPEG系は量子化のプロセスや動き補償の結果、隣接したブロックの符号化でアーティファクトが発生する。その動作からインループ・フィルターともいわれる。Strength(強度)とThreshold(閾値)のパラメータがあるが、+方向に動かして強くするとぼやけた感じに、-方向に動かすとくっきりとした感じの絵となる。映像がぼやけているように感じられる場合、ビットレートが十分であれば0より小さい値に設定しても良いかもしれない。0から値を動かすとSSIMやPSNRは低下するため、動かすにしても±1程度に収めておいたほうが無難だと思われる。輪郭を強調したいのであればエッジレベル強調などのフィルタを使用すべし。デコードが重くなるオプションなので、再生負荷軽減のため画質劣化を許容できるのであれば切るのもあり。--bff】インターレースでエンコードする際のみonにする。--tffでトップフィールドファースト、--bffでボトムフィールドファーストになる。FlashPlayerはインターレース非対応なので、これは使ってはいけない。Search【"tesa"】」の5種類。diaは最も精度が低く、tesaは最も精度が高い。速度はdiaが最も速く、tesaが最も遅い(5種の処理時間比較グラフ)。精度が高いほうが画質、圧縮効率が良いが、多くの場合esaやtesaを指定してもumhとほとんど変わらない。Search(tesa)は膨大な時間が掛かるため、余程時間に余裕がある場合でなければ使わない方が良い(特にtesaは現在までに何度か高速化のための手直しをされてきたが、それでもまだまだ遅い)。Multi-Hexagonを使うのが良い。Searchも、あまり動きの激しくない素材ならばよいかもしれない。7】0から11までの12段階。10(QP-RD)以上を使う場合は後述の--aq-modeを1か2、--trellisを2にする必要がある。高いほど画質が上がるが遅くなる。0は実験的な用途以外では使わない方が良い。動き探索につかわれるpredictor(予測器)の距離。meがdiaかhexの場合は4~16まで、meがumh、esa、tesaの場合はx264guiでは4~64まで指定できる。動画の解像度が高い場合は、ある程度大きな数字にした方が効果が高くなるが、非常に時間がかかる。SD解像度で8~16、HD解像度でも24あれば十分といわれている。現在の一般的な動画においてこれ以上の値に設定しても、得られる効果はplaceboと判断されるケースがほとんどであろう。大きくし過ぎると誤判定を起こすこともあるため、やりすぎはよくない。色情報による動き検出を使うかのオプション。チェックを外すか上記コマンド入力でOFF。"Spatial"】B-Framesの中に「ダイレクト」というマクロブロックタイプがあった時に、そこで使うモーションベクトルの予測方式。Autoでフレーム毎に最適な方式を選ぶ。Spatialは2D優先、Temporalは3Dの時間軸を考慮して圧縮を行なう。圧縮率は後者が優れているが、副作用で残像が残る可能性があるので、Autoにしておくのが良い。Noneは最も遅い上に画質も最悪なので、使わない方がいい。参照に使えるフレームの最大距離数。範囲1~16(0を指定すると1として扱われる)。2以上で複数参照可能になる。これを高くしすぎると動画を再生する際のメモリ消費量が増え、PC以外の再生ハード(BDプレーヤー、PS3、PSP、iPod等)での再生において、互換性に問題が生じることがよく起こる。増やすとエンコードにかかる時間が増えるので、せいぜい6程度までにしておくほうが無難である。【--no-mixed-refs】デフォルトはon。チェックを外せばoff(CLIなら上記コマンド追加でoff)。サブブロック単位で参照するフレームを変える。画質、圧縮効率は上がり、エンコード、デコードは遅くなる。2】デフォルトはBフレームはon、チェックを外すか上記コマンド--no-weightbを追加でoff。B-Frame、P-Frameに参照する前後(Pは前方だけ)のフレームからの距離に応じた補正をかける。2で正確な重み付け予測ができる。1での効果はいまいちのよう。Duplicates)になっている。refs)[r1802での変更]よりも効果が高い。2を使うと映像が壊れる(ブロックが発生する)現象が確認されている。これにはFlashPlayer10.0も含まれており、修正は10.1で行われた。0-100000】デフォルトは0(off)。Wienerフィルタを使ったDCTドメインのノイズリダクション。MPlayerやAviSynthの相当品(hqdn3d)より高速で、実用範囲は100-200。H.264規格には本来存在しないが、素材の圧縮工程に入る前に適用するので、再生機器やデコーダの機能とは関係なく使える(単にAviSynthでフィルタをかけるようなもの)。前述の--psy-rdと効果が対立するため、どちらかしか使えない。両方使用しようとすると両方無効となる。スキップMB検出:on【--no-fast-pskip】デフォルトon、チェックをはずすか上記コマンド追加でoff。スキップ検出の非使用。offにするとエンコードは遅くなるが、特にいいことはない。DCT係数間引き:on【--no-dct-decimate】デフォルトon、チェックをはずすか上記コマンド追加でoff。動画圧縮は映像の細かい部分を省略するようなもので、その為に様々な手法を組み合わせて使う。decimateもその一つ。切ると忠実度は上がるが、必要なビットレートも上がる。デフォルトのONのままで構わない。画質を向上させたいならビットレートを上げるかcrfをより小さい値に設定するのが筋。最終マクロブロックのみか、常時かを選択。Transform)で失われた情報を回復させて画質を若干向上させるモードを使用するかどうかのオプション。Encode)で数字が大きいほど画質優先で遅くなる。Matrix)のこと。デフォルトのflatマトリクスかjvtマトリクス、もしくは自分で用意したファイルを選択する。量子化マトリクスは格子状にならんだ数字(数学で言う行列)で、個々の数字をquantum(量子/量子化マトリクスの値)として扱う。この個々の数字が元の映像データをどのくらい破棄するかを決める。個々の数字が大きなマトリクスは映像がソフトになり、小さなマトリクスは映像のディティール保持率があがる。Profile以下)。Profileの機能で、デコーダ側のサポートが必要となる。x264の場合、下手にいじってもいいことはないのでflat推奨。"undef"】YUV-RGB変換をプレーヤー(デコーダーやフィルターやレンダラー)が行う際に使用するマトリクス(行列)を強制する。BT.470bg)、HD解像度(縦が720以上)の場合はBT.709と呼ばれる行列を使用することと国際規格で決められている。これは本来、再生側が解像度から自動的に判別するのが望ましいのではあるが、世の中にはそうなっていないものも多く存在する(わざとだったり、単なる無知によるものだったり原因は様々である)ため、動画にこの情報を埋め込むことで再生側に使用する行列を指定することが必要な場合がある。FlashPlayerはしばしば仕様を変更し、FlashPlayer11.3現在では、HWアクセラレーションの有無にかかわらず、フラグを反映するようになった。(指定されていない場合はBT.709が使用される。"undef"】CIE(国際照明委員会)が1931年に定めたxy色度図における各色の座標を指定する。意味がわかって正しく指定できる人のみが設定できる(意味はわかっていても正しく指定できない場合が多い)。いった場合は仕方がないのでundef(再生環境におまかせ)にする。"undef"】ガンマ特性を指定する。これまた意味がわかっていて正しく指定できる人のみが設定できる。意味はわかっても指定できないのでundef(再生環境におまかせ)にする。入力された映像のYUVのlevelがfullrange(YUVすべて0~255)か否(Y:16-235,UV:16-240)かを指定する。拡張色調補正フィルタやYC伸張フィルタ等を使っていなければ、offのまま(チェック無し)でよい。0:0】SampleAspectRatio?(別名PAR:PixelAspectRatio?)の設定。再生側に情報として渡されるピクセル単位のアスペクト比の情報。無指定なら1:1と同じ。これは指定していても無視されるので、いじる意味がない。エンコード前にフィルタでリサイズや黒ベタ追加、クリッピング等をきっちり行っておくこと。"info"】x264がLogに書き出す情報の種別。通常はinfo(変更なし)で構わない。画質を追求したりしたければ、まずはこのログの読み方を覚えよう。読み方に関してはこちらを参照PSNR:off【--psnr】SSIM:off【--ssim】エンコード時にPSNRやSSIMを計算するかどうかの設定。チェックを入れるとPSNR、SSIMを計算し、エンコード終了時にログに計算結果を表示する。計算する場合は、エンコードにかかる時間がほんの若干増える。levels」のページなどを参照のこと。現在のx264は、levelの自動調節機能を実装している。4.1とすれば、--refは自動的に3まで減る等)。これを指定しない場合は、x264は使用されたオプション類からLevelを計算する。"undef"】NTSCやPALといった国際標準規格に沿って作られている動画である場合にのみ指定する。投稿用エンコの場合はundef(定義なし)のままが一番よい。delimiterを使用する場合のみチェックをonにする。BD用にエンコードする場合以外では使用してもいいことはまずないので、チェックは要らない。0】x264のスレッド数の指定。0だと自動でCPU数を検索し、Core2Quadなら6、Corei7ならHTT有効だと12のように論理CPU数の1.5倍の数値になる(推奨)。エンコード以外の作業を並行して行いたい場合、これを指定して使用するCPUスレッドを下げても良いが、CPUをフルに使えなくなるのでまずプロセスの優先度を下げることを勧めたい。CPU使用率が低いからと言って自動の値より大きくしても、効果はないかむしろ悪くなるだけなのでいじる必要はない。スライスベースマルチスレッド:off【--sliced-threads】デフォルトoff、チェックでスレッド分割をスライスベースでサポートする。使うと総エンコ時間が長くなり、圧縮率と画質は落ちる。BDエンコ用、もしくはHDサイズのリアルタイムストリーミング用オプション。AviUtlでリアルタイムストリーミング用エンコードを行うことはまずありえないので、使うとすればBD用エンコードと言うことになる。向けエンコードでは使用する必要も意義もまったくない。format(v1かv2)を使用することにより、自動的にVFR化された動画を作るためのオプション。コマンド上記のGUIで設定できないオプションはここに直接コマンドを記載することで使用する。コマンドを記載した場合は必ず右下の「画面に反映」ボタンを押すこと(押さなかった場合は無視される)。ここにGUIでも設定できるオプションを記載した場合は、GUIにおける設定はこちらの内容で上書きされる。追加したほうがいいかもしれないオプションdts-compressmp4出力する際に、Bフレーム由来の音ずれの発生を防ぐためのオプション。まともな再生環境であればこれ(音ずれ)は通常起こらないのだが、FlashPlayerはあまりまともではないので起こる(1、2フレーム程度、映像が遅れて表示される)。以前はこれ(dts-compressまたは初期ディレイカット)を使うと、エコノミー時間帯用にsmileサーバーによってエンコードされた動画の品質が異常に落ちるため非推奨とされていたが、どうやら2010年末あたりに改善されたらしい。よって、ニコニコ投稿用動画であれば使用はアリ。拡張設定x264には本来存在しない、拡張x264出力プラグイン独自の機能を設定する。自動フィールドシフトv7対応デフォルトはオフ。AviUtlの自動フィールドシフトプラグインを使用している場合以外はチェックを入れてはいけない。YUY2->YV12変換にSSE2を使用SSE2搭載CPU(Pentium4以降)であれば、チェックを入れたほうがエンコード速度は速くなるだろう。Timecode.txt出力デフォルトはオフ。オンにすると、Timecodev2ファイルが映像ファイルと同時に出力される。ソースがVFR(可変フレームレート)の場合はチェックをいれ、エンコード後にtc2mp4mod?などで出力したTimecodev2と動画をmuxする。一般的な動画はCFR(固定フレームレート)で関係ないので、よくわからない場合はオフで問題ない。非afs時でもAviUtlのキーフレーム検出をスキップするデフォルトはオン。チェックを入れると、AviUtlのキーフレーム設定を無視する代わりに、すぐにエンコードが始まる。AviUtlのキーフレーム設定を利用してIDRフレーム挿入をコントロールする場合以外は常にチェックをしておくこと。sync(AviUtlのファイル->環境設定->優先度の設定と同じ)。この手の優先度設定はnormal以上にすると不具合の原因になることがほとんどであるため、AviUtl、x264ともにnormal以上は使わないのが普通である。どちらもいじらないか、x264の優先度はむしろlowかlowestに下げるほうがよい。一時ファイル出力先を指定する。エンコード前の入力ファイルの場所と保存先の場所が同じ物理ドライブになっている場合は、これで別の物理ドライブの場所を指定しておくことでHDDの読み書き時に発生するボトルネックを解消できるだろう。MODE」ボタンを押すと、x264.exeをCLIで使用するのとほぼ同じ状態になる。--fullhelp)を転載する。GUIを使えば、読み込んだH.264動画のエンコード時のオプションコマンドを(ある程度?)知ることができます。ジャンル(実写、スポーツ、アニメ、3Dゲーム、2Dゲーム、etc.)によって適切なオプションはかなり変わりますが、自身がよくエンコードするジャンルで高画質なH.264動画を見つけられたら、その動画から直接オプションを調べられるため、巷の解説よりもはるかに参考にできると思われます。†ネット上には様々な情報が氾濫していますが、x264について書かれた日本語情報は勘違いと虚偽に満ちているものが少なくありません。(もちろん正確なものもあります)もしあなたがより精度の高い情報を手に入れたいなら、海外のサイトに行きましょう。Discussionx264の公式フォーラム(英語オンリー)。ここにある情報は非常に正確です(もし間違った情報が投稿された場合、即座に開発チームメンバーや世界中のエンコオタクからツッコミをくらいます)。Forum世界的に有名なDVDリッピング/動画エンコード関連の総合フォーラム(英語オンリー)AviSynth、MediaPlayerClassic-homecinemaといった有名なアプリケーションの公式フォーラムが置かれています。Doom10が発足するまでは、x264の公式フォーラムもここにありました。discussion"ここに入る場合は文字コードをUTF-8にしておきましょう。anime/東方ファンの溜まり場で、なんと日本語での発言もオーケー。†ページを編集した時は、なるべく此処に履歴を残しましょう。最新の10件を表示しています。コメントページを参照rigaya氏のguiEx.auoがだいたい安定したようなので、以前のgui.aouのページをコピーして内容を修正した。20:33:45colormatrix関連の記述を変更。06:55:24最近はsubmeに11が追加されたよ。12:35:40最近のヤツと項目が変わってる部分があるんだね。12:23:55すごく分かり易くて学ばせてもらいました。最新版を元に、切に更新希望します。最新版に修正しました。13:10:21CLIの--fullhelpをr2762に更新。古い情報に対する注意喚起を追加。全てのDefault値を確認する気力は無かった。touhouに関する情報を追加。13:07:36touhouは通常版fullhelpに載っていないので、「8"+1"種類」とした。MeWiki?」のURLを更新。