4章 aviutlでアニメエンコード "出力設定編"1-1

ここでは、「4章 aviutlでアニメエンコード "出力設定編"1-1」 に関する記事を紹介しています。

お世話になってるサイト様の新着記事

相互RCC設置しました。申請はこちらからお願いします→相互リンク/相互RCC
上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。
さて、前回3章のフィルタ設定編ではaviutlのフィルタ設定を行ないました

序章 我が家のエンコード環境とエンコード導入について
1章 aviutlでアニメエンコード "導入編"
2章 aviutlでアニメエンコード "初期設定編"
3章 aviutlでアニメエンコード "フィルタ設定編"
4章 aviutlでアニメエンコード "出力設定編"1-1
4章 aviutlでアニメエンコード "出力設定編"1-2

今回は4章 "出力設定編"1-1です

出力パラメータは一番知りたい情報だと思ってます。参考になれば幸いです!
では、さっそく説明に入ります。

h.264+AACなmp4ファイルを作成するので、x264guiというものを使用します

x264gui出力の設定

x264gui出力は動画を読み込まないと使用できません
まずは何か動画を読み込みましょう
次に「ファイル」→「プラグイン出力」→「拡張 x264 出力(GUI)」→「ビデオ圧縮」とクリックします
以下の画面が出ます↓




x264gui出力の設定?

ここでは最初に設定しなくてはいけない部分を設定します
まずは、右側の音声から設定していきます

「エンコーダ」→neroAACエンコーダを選択
「neroAACEnc.exeの指定」→1章で入れた場所を指定します

とりあえずこれでOKです


ここからは結構説明も難しいので、なるべく写真を参考にしてもらいたいと思います
ここをいじるとどんな効果があるの?ってのを詳しく知りたい方は
拡張 x264 出力(GUI)の設定項目とその機能について
をご覧になれば項目の意味や適正値が分かってくると思います

当然ここでも解説しながら進めていきたいと思います


x264gui出力の設定?ビットレート?

[nul出力]
マルチパス出力時に各PASS工程に使用した一時ファイル最後に削除する書き出し方法
自動マルチパス出力する際は削除の手間が省ける
通常は自動マルチパスと一緒にチェックを入れておくといい

[自動マルチパス]
自動で指定した回数のマルチパスを行う

[ビットレート(kbps)]
動画1秒間に収める目標データ量を設定(音声を除く)
適正なビットレートというものは無い
私は「シングルパス品質基準VBR」を使用し、20程度指定しています

[マルチパス]
通常1回しか行なわない処理を2回、3回と行ない、精度を高めてエンコードする方法
Nth-passを指定して、自動マルチパス設定に指定した回数分処理する
2回にすると処理時間も2倍になる

[ステータスファイル]
マルチパスエンコードで使う統計ファイルのパスと名前を指定
全てのパスが同じログファイルを参照しない限り、正しく動作しない


x264gui出力の設定?レート設定?


○ビットレート
[I-Pフレーム間QP係数(%)]
IフレームとPフレームの量子化値換算係数
Iに適用された平均量子化値にここの値を掛けたものがPに適用される
値を小さくするとIフレームとPフレームのQP係数は近くなる
大きくするとPフレームの平均画質が下がるので、上げすぎはお奨めしない
私は60にしてます

[B-Pフレーム間QP係数(%)]
P フレームとBフレームの量子化値換算係数
Pに適用された平均量子化値にここの値を掛けたものがBに適用される
私は40にしてます

[ビットレート変動量(%)]
割り当てビットレートの変動許容量
値が小さいと急激なシーンの変化時にデータレートを無駄遣いする可能性あり
頻繁かつ急激に変化するようなソースでは増やすと効果があるかもしれません
私は少し増やして70にしてますが、初期値で問題ないと思います

○量子化の限度
[QPの下限]
最小量子化値(0に近いほど低圧縮・高画質)

[OPの上限]
最大量子化値(51は最高圧縮・最低画質)

[QP変動幅の最大]
連続フレーム間における量子化値の最大変動幅
アニメなど場面転換前後の落差が激しい素材では増やすと効果あります
よく動くアニメなどでは私も増やしてます

○シーンカット
[シーンカット閾値]
シーンチェンジを検出するしきい値=I-Frameの挿入しやすさ
値を大きくするとたくさん入るが、不必要に入り、bitを無駄にするかもしれないです
シーンチェンジの検出が増えるとファイルサイズが大きくなり、画質が向上
適切な値を初期値の40周辺から探る感じが吉
default値である40だと、アニメーションでは足りないということが多々あり
60以上必要な場合もあるだろう
私は動くアニメでは70。動きまくるアニメは75にしてます

[IDRフレーム間隔の下限]
IDR-frames 間の最小間隔
アニメは1でいいです

[IDRフレーム間隔の上限]
GOPの最大間隔
H264/AVCの最大GOP間隔は純粋にシークのスムーズさを決めるだけ
大きくしても画質に変化無し
240程度でいいでしょう


x264gui出力の設定?マクロブロック?


○マクロブロックタイプの指定
[8x8 離散コサイン変換]
[8x8, 8x16 and 16x8 Pフレーム動き補償]
[8x8, 8x16 and 16x8 Bフレーム動き補償]
[4x8, 4x8 and 8x4 Pフレーム動き補償]
[8x8 イントラ動き補償]
[4x4 イントラ動き補償]

16x16のマクロブロックを、場面やフレームタイプに応じてさらに細かく分割できるようにしましょうというもの
8x8 離散コサイン変換をONにするとHigh Profileになり画質向上
チェック推奨です
細かく指定するとファイルサイズと再生負荷が増える
※「4x8, 4x8 and 8x4 Pフレーム動き補償」はあまり意味がないようなのでOFFでいいと思います

○Bフレーム設定
[Bフレームの最大連続数]
連続する最大のB-Frames数。範囲0?16で、0はB-Frame無し
この値を大きくすると圧縮率が向上。MP4コンテナではディレイフレームが1枚発生する。2?5推奨
私は6にしてますが、好みの問題ですので気にしないでください

[適応的Bフレーム挿入]
最大連続数の範囲でBフレームに適するものをBフレームし、適さないものをPフレームとする。0にするとOFF
1は高速だが簡易判定を行い、2にすると正確な判定を行うが1pass目が--bframesの数に応じて低速になります
2の完全にすると時間はかかるが、連続Bフレームをうまく自動調節してくれる
圧縮率も向上
私はファイルサイズを抑えるために2の完全を常に使用してます

[傾向]
B-Frameの挿入傾向を調整。高い程Bを使う傾向が増える。低い程減る
一般的に0で問題ない。プラス方向に補正するとB-Frameの使用量が増大
無理矢理増やすと逆に画質が劣化する

[参照距離]
複数参照フレームの最大数。範囲1?16。1は複数参照しない
一般的には多くても3?4程度まで

[参照フレーム化]
B-Frameからの参照も許可するためのオプション
B-Frameも参照フレームに使い、ディレイフレームが2枚に増える
ONにしたほうが画質が向上することが多いです
逆に低下するときもある

[重み付け予測]
B-Frameに参照する前後のフレームからの距離に応じた補正をかける
フェードインやフェードアウトの圧縮効率改善を狙ったもので、「適応的Bフレーム挿入」が2の完全の時は正確な重み付け予測ができます
1の簡易では微妙

[混合参照]
サブブロック単位で参照するフレームを変える
画質、圧縮効率は上がり、速度は落ちる。デコードも重くなる
ON推奨です


x264gui出力の設定?詳細?


○動き予測
[動き予測アルゴリズム]
上から1?6とすると、1は処理早いが圧縮率悪い
数字が大きくなるにつれて、精度が上がり圧縮率向上。しかし、処理遅い
Hexagonal Searchか、検索精度と速度のバランスが優れているUneven Multi-Hexagonを使うのがよさそう
xhaustive SearchやHadamard Exhaustive Searchは膨大な時間が掛かるので避けたほうが無難
私はUneven Multi-Hexagonです

[サブピクセル精度]
基本的に数字が大きいほうが時間はかかるが、圧縮率は向上します
7や8はBフレームにもRDOを適用するのでかなり圧縮効率が向上します
6か7あたりが圧縮率と処理速度のバランスがいいでしょう

[ベクトル探索範囲]
初期値の16?32を推奨
値を大きくすると大きい動きも正確に検出できるようになるが、時間が非常にかかる
解像度が高いほど効果がある 32がいいかな

[彩度動き予測]
色情報による動き検出を使うかのオプション。通常はON

[動き予測方式]
B-Framesの中に「ダイレクト」というマクロブロックタイプがあった時に、そこで使うモーションベクトルの予測方
Autoはフレーム毎に最適な方式を選ぶ。Spatialは2D優先、Temporalは3Dの時間軸を考慮して圧縮を行ないます
Temporalは残像が残る可能性があるのでAUTO推奨
NONEはうんこなので使用しない

○詳細設定
[SAR]
アスペクト比の設定です。出力時の設定と合わせておきましょう
(例)1280x720なら16:9等

[スレッド数]
自分のCPUのコア数に合わせた数字を設定します
※0にすれば自動でCPUのコア数にしてくれるみたいです

[ノイズ除去]
出力結果によっては調整が必要になるパラメータですが
通常OFFで問題ないです

[デブロックフィルタ]
MPEG系は量子化のプロセスや動き補償の結果、隣接したブロックの符号化でアーティファクトが発生します。H.264ではこれを軽減するためのもの
+方向に動かすとボヤけた感じになります
-方向に動かすとくっきりした感じになります
通常0:0でいいですが、出力結果がボヤけてるなぁって感じの時は
-方向にしてみるといいです。私も-1や-2程度で使っています
ここはx264出力ならON推奨です

[CABAC]
H.264/MPEG-4 AVCのキモの部分
変動シンボル確率分布を利用し、シンボル間の相関も利用することで圧縮率を向上させています
無効にすると再生時の負荷が大幅に減少するが、画質も大幅にダウンする
ONにするしかないでしょう

[インターレス保持]
OFFでいいです

スキップMB検出]
スキップ検出の非使用。画質向上
ここもOFFで問題ないです

[DCT係数間引き]
動画圧縮は映像の細かい部分を省略するようなもので、その為に様々な手法を組み合わせて使う
この設定もその1つです
ONにすると圧縮率は上がるが、画質低下
OFFにすると画質は向上するが、圧縮率低下
OFFのほうがしあわせと思います

[RD最適化]
Trellis RDO の適用。最終マクロブロックのみか、常時かを選択。要CABAC
DCT(Discrete Cosine Transform)で失われた情報を回復させて画質を若干向上させるモードを使用するかどうかのオプション
有効にすると処理が重くなります。画質優先ならばON。
コマンドでは順に0,1,2数字が大きいほど画質優先で遅くなる

[マトリックス]
flatマトリクスは数字が全て16で埋まっているもので、デコード時に特別な扱いが不要なもの
jvtはH.264規格の技術的な作業に当ったJoint Video Teamが作ったもの
元動画にノイズが多い場合などはjvtを使う良い(画質向上でファイルサイズ大)
ノイズが少ない場合はflatにしてAQを用いた方が良いかも
(画質低下でファイルサイズ普通)

[ログ]
x264がLogに書き出す情報の種別です。通常は変更しなくてかまいません
Noneにするのもよいかも?


思いのほか長くなってしまったので次回に続きます
4章 aviutlでアニメエンコード "出力設定編"1-2
ではでは



コメント
この記事へのコメント
コメントを投稿する
URL:
Comment:
Pass:
秘密: 管理者にだけ表示を許可する
 
トラックバック
この記事のトラックバックURL
http://daybreakdeath.blog66.fc2.com/tb.php/15-709903c1
この記事にトラックバックする(FC2ブログユーザー)
この記事へのトラックバック
上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。