2022年07月22日

【エンコードレシピ】有言実行の爆QるンBランチ(1080i→720p)圧倒的版

↓12)記稿.2022/07/22


|この服の爆Qるンやいざ試着 ステッキぽちいリボンぽちい

|欲しがれど厭き憑くほどに影法師 何十億ものうつむく眼
|目を覆う無力万感 梅雨の家事 膝を折れどもぼっちの暮らし
|暮らし向き水平線や冬の音 負け組だもの満身創痍




> 用意して頂くアプリは
> XMedia Recode 64bitのバージョン3545です。


 最新版から、x264.dllを抜き出して、3545側のと差し替えます。
 (最新版だと解像度変更の際に、アプリ落ちするのでそれの代替です)
 (落ちる原因は不明です‥マシン構成絡みかもしれません問題なしなら最新版で構いません‥)


 ‥取り扱うランチの種類は
 Aランチ(1080p→720p)
 Bランチ(1080i→720p)
 Cランチ(480i→全部盛りBob→720p)とした三つです。


> 今回レシピは、Bランチ(わさb抜き圧倒的版)のみになってます。


 ‥VLCプレイヤー使用時
 古い再生支援機能だと映像に乱れが生ずる場合もあるので、そんときゃoffに‥
 >ツール>設定>入力/コーデック>ハードウェアアクセラレーションによるデコード>無効
 (設定をクリックした後、VLCプレイヤーを再起動)



1-12)1 一般

モード:変換
コーデック:MPEG-4 AVC/H.264
言語:なし
フレームレート:59.94‥(Bob鎖動です‥忘れずに‥)
カラーモード:YUV 4:2:0 Planar 12bpp


レート調整モード:2pass平均ビットレート
‥(「品質」は、テレビUSB挿し用途には向きません‥トラブルを嫌えば2passの一択です‥)

ビットレート:21600
‥Bランチ{平均:バッファ:最大}
‥{36:81:144}→{21600:48600:86400}比基本値(600),(5400×4)
‥Bランチ45分版(適応想定実写のみ)
‥{36:225:400}→{11520:72000:128000}比基本値(320),(5400×2.1333…)


プロファイル:High
レベル:
プリセット:標準
Tune:無効
フレーム-パッキング:なし
Open GOP:□
キーフレーム間隔:15
最小GOPサイズ:1
表示モード:プログレッシブ
スレッド:0
強制的に固定フレームレートのタイムスタンプを生成:オン



1-12)2 ブロッキング軽減

ブロッキング:オン
ブロッキング軽減 - 強度:0
ブロッキング軽減 - 閾値:0



1-12)3 B-フレーム

B-フレーム数:0
B-フレームモード:―
適応型B-フレーム:―
B-Pyramid:―
B-予測ウェイト:―
B-フレームバイアス:―



1-12)4 マクロブロック区分

適応型DCT:オン
I8x8:オン
I4x4:オン
P8x8:オン
P4x4:オン
B8x8:□



1-12)5 レート制御

VBVバッファサイズ:48600
VBV最大ビットレート:86400
‥{平均:バッファ:最大}={36:81:144}
‥{1:1.5^2:4}→(4=2.25×1.333333…^2)
‥(Bランチで平滑さの限界を探るのは険しいのですが、平均(21600)に判定しております)
‥(Aランチの{ref値:GOP長}={8:12}から{9:15}に変更して釣り合わせております)


VBV初期バッファ:0.9
可変ビットレート:10000.0(最大値)‥(100=10000なので気にせずに盛るべし)
量子化圧縮:0.6

先読み:999‥(最大値250偽装なので、ファイル選択変更時に戻し書換えあり)
Lookahead Threads:0
Syne Lockahead:999‥(最大値250偽装なので、ファイル選択変更時に戻し書換えあり)
MB-Tree:オン


※ 先読みは多ければ多いほど、メモリーを必要分多く使用します。(複数アプリ起動時には注意)
 (B&Cランチでは、16GB程度のメモリーの備えが必須です)
 (メモリー不足に陥ると、XMedia Recode 64bitは、エラー吐いてサクッと落ちます)

※ 先読みの最大値偽装とは、そのまま設定にて登録すれば、予約保持にて適用されますが
 登録せずに別ファイル項目をクリックして戻ると、既定最大値(250)に上書きされちゃいます。
 ど忘れしていると、M.E.範囲(8)の不足分を補うこと無く俯瞰的にピンボケに仕上がります。

 ‥先読みピント比は(フレームレート値×16.666666…)で、それの算出値四捨五入です。
 B&Cランチなら、60×0.999×16.666666…=999を得ます。
 (ピント合わせなので‥(999)が正しいとすると、Aランチは永遠のピンボケと言えるでしょう)
 (あとは、心理的エンハンストの誤差算出の際の処理次第に思われます)



1-12)6 動き推定

M.E.範囲:

※ 以前のうんちくはリセットされ、先読みの限界突破の可能により状況が一変しました。
 解像度差に関係なく、M.E.範囲(8)に固定できるようになりました。

 これも先読みの限界突破による合わせ技ゆえです。

 ‥M.E.範囲を広くすると、より高周波を選択しがちになり(低周波の切り捨て)
 容量としてもコンパクトを得て、良く出来たように見えますが
 でもそれは平均的に拾えているとは限りません、部分部分で都合の悪いケースも有るわけです。
 (ここでは、量子化済み再エンコード用途なので、程良く万遍なく細かく拾って欲しいのです)

 ‥先読みとの合わせ技として、先読み側の最適値鎖動が欠かせません。
 つまりは、M.E.範囲(8)だけでピントを得るのでは無く、先読みと合わせて整える算段です。
 (ということで、M.E.範囲(8)と先読み(400)もしくは(999)は、鎖動になっとります)


シーン変更感度:89‥(キュルキュルサーチ位置職人)
M.E アルゴリズム:SATD Exhaustive Search‥(テクスチャー崩れ抑制効果有り)
サブピクセルリファイン:FUll RD
Chroma M.E.:オン
P-フレーム予測の重み:スマート解析



1-12)7 量子化

量子化最小値:10
量子化最大値:69
量子化最大値(Delta):4
IP比率:1.4
PB比率:1.3
彩度QPオフセット:0
輝度量子化のデッドゾーン(Inter):21
輝度量子化のデッドゾーン(Intra):11
AQモード:暗いシーンのバイアスを自動分散
AQ強度:1.0‥(固定:デフォルトが一番)


※ AQ3(暗いシーンのバイアスを自動分散)に鎖動する項目が
 どうにも、量子化最小値を始めとした量子化に絡む値のすべてと、量子化圧縮値という事らしい
 (関連した値を正しく鎖動させると、すべてのマクロブロックが正方形方向で扱われるっぽ)
 (但しAQ3は、AQ1設定より画質を平滑に押し上げる分、ビットレートを多めに要求します)



1-12)8 量子化設定

Trellis:常時
Psy-Trellis強度:0.00
Psy-RD強度:1.00‥(固定:デフォルトが一番)

参照フレーム数:

ノイズ減少:0
参照フレームMix
‥(Mixとは、GOPを超えてマクロブロック参照やらかす仕組みを指しています)
‥(なので、GOPの構成次第では、色切れの悪さがマクロブロック選びに影響を及ぼします)
‥(基本的に、明度を優先して量子化ブロックを構成するので、色違いの誤差含みが発生します)
‥(明度まで潰れるほどにビットレートを落とすのは、画質向上とした売り文句の想定外です)
‥(色違いの誤差含みをゼロにするには、十分な経験と検証が必要です‥流派の根凶‥)
‥(キーフレーム概念の代替として、IDRフレーム概念が導入されています)
‥(IDR構成のフレーム数上限は知られていませんが、GOPが長すぎるとサーチ区切り不能にも)


CABAC:オン

DCTなし:オン
‥(DCTありとは、折角計算した細かい端数値を無かったことにする判断)
‥(DCTありにすると、光表現に求められる繊細な空気反射によるモヤッとをぶっ飛ばします)
‥(そんな感じのぶっ飛ばしは、ノイズ除去されたなんちゃって高画質に見えもしますが‥)
‥(霧や塵たる揺らぎを美とするか、カチンコチンのコンクリを美とするかでしょう)
‥(結局、レート調整やらでぶっ飛ぶので、ここで無理に誤差誘導する必要も無いかなって感じ)


Fast P-Skipなし:□
‥(Fast P-Skip(オン)との差は、微に‥バンディング箇所の処理差とパン処理時にでる模様)
‥(バンディング箇所に関しては、(オン)時の余計に強くでてしまうような傾向が見られない)
‥(よくよく見比べると、全体的な印象は、オフに分がある状況かなと‥orz)
‥(Bピラミッドを用いるというのに、オンにしては、二度手間のなにものでもない)
‥(Bピラミッドの際の効率やら切り替えでの手違いを考えると‥□一択かと‥)
‥(警戒しすぎだったのか、改善されてあるのか、もはや、実験的項目要素としての残滓くさっ)
‥(結論、□にして、時間コスト10数%程度の節約を稼ごうとかなんとか)


心理的エンハンスなし:□
PSNR算定:□
SSIM算定:□



1-12)9/ビデオユーザビリティ

ビデオ形式:指定なし
カラー優先度:BT.709
行列係数  :BT.709
伝送特性  :BT.709

※ 互換性を意識して付けなくても構わないとした考えもありますが
 エンコード次第では、アプコン・ダウンコンとした諸々のケースの際に
 付けないままでやらかすと影響を及ぼす次第を確認しました。

 ‥具体的には
 「どうしてこのDVDはこんなに汚いの?」パターン差ぐらいになっていた模様‥
 つまり、量子化不十分とした仕上がりかも知れないわけです。
 (容量制限にも微々影響するので‥設定せずがお手本とした解とは限らない‥)

 なので、きっちりと「BT.709」を刻印しましょう。
 ちなみに、BT.601の際には放送規格で二種類ありますが、日本では「SMPTE-170M」でした。




> ソースの状態を忠実的に確認したいなら【テレビ設定】好逸シネマでの視聴がオススメです。
> 派手な発色が良いなら、【テレビ設定】好逸ダイナミックがオススメです。


 ‥色が出てこないと思ったら、「エコナビ」のオンオフを確認しましょう。(ここが鬼門)



1-12)10/クロップ/プレビュー

クロップ/プレビュー

##インターレース解除##
 使用するフィルター:Yadif
 モード:時間軸&空間軸のチェック(Bob)をスキップ

 (※Bob指定そのものが、≒30→≒60フレームレート変更(手動)とセットです)

 (※スキップ指定しないと、せっかくのインターレース映像の輝度が、解除演算にて削られます)
 (但し、スキップすると、輝度情報が多い分、エンコードの難度が上がります)

 (※フレームレート変更をど忘れしても見た目の仕上がりに然したる差は見られませんが)
 (パンが決定的にガクガクになっちまっております)
 (細かく言えば、動きがまるで違うと‥キー位置も違うわけですが‥)
 (いやまぁ、Cランチ慣れしていると、ついついど忘れしちまうんですよね)

 (※ちなみに、Bob化せずとも割り当てるべきビットレートに差を得られません)
 (一枚あたりの画質は上がりますが、動きは見るに耐えなかったりだったりでしょう)

 順序:自動.


##クロップ##
P4x4をきちんと効かす為には、16:9である用があります。
(1440の16×16のマクロブロック数(90)が4で割り切れない事に因る)
なのでAVC-Qでは、4:3とした解像度比を扱いません。

##パディング##
‥ソースが4:3のものは、その都度、黒帯付き16:9にするべし。
‥1440→左右(240)
‥始めから黒帯されてあるものは、操作せずにそのままになります。



##解像度##
幅:1280
高さ:720
スケーリング:双三次スプライン
ディザリング:自動
アスペクト比:オリジナルを保持、又は[16:9]


 ※スタンダードなバイリニア方式は、同じ解像度でのリップ前提です。
 解像度変更しようってのに、バリバリのバイリニア方式を使用しては
 それだけで、色みを即誤差劣化されちまいまーす。
 (BT.601とBT.709とで色が変わりますが、それ以上に違ってしまうのでーす)



1-12)11

 ‥クロップ/プレビューには
 Video項目の隣にAudio項目があります。
(作品ごとに音量の差はあるので、常に一定に整えたい用途にはお好みでどうぞ)

 ‥尚、調整しない場合、AC3では、ソース毎にバラツキが出て唖然としちゃいまーす。
 その調整を省いて楽をするには、テレビ側の音声バランスを設定し直せば良いんです。
 それの調整値が↓になります。

 AC3でコンテナする場合の参考


 ‥保管目的にロスレス音声をmp4にコンテナしたい際に、複数コンテナでは増量確実です。
 その際の候補に、DTSでのコンテナが挙がりますが、DTSに置き換える際には注意が必要です。 

 ‥XMedia RecodeからのDTS置換は、lossyに制限される模様です。(wavとは扱いが違う)

 基本的にコピペであれば、DTS24bit(2304Kbps)でもロスレス移動できますが
 XMedia Recodeでは、始めから再エンコード指定できない扱いです。



 ‥ちなみに、mp4ファイルに、字幕のオンオフ機能を付け足したければ
 ファイルごとにフォルダー管理して、同名srtファイルをそこに据えおく自動認識になってます。
 (フォルダーとmp4ファイルとsrtファイルとを同じ名前、同じフォルダー配置にて自動認識)

 テレビUSB挿しでは、これが最もスタンダードな字幕のあり方です。(手間すぎる‥)
 (せめて一つのフォルダーの中に、番号違いで認識してくれりゃ、管理が幾分楽ッすね)



 一気にmkvにてエンコードしやると
 キーフレーム位置をログしないので、VLCプレイヤーでのサクッとサーチがうまく効きません。
 (一度、ファイルの終端まで読み込ませるような段取りを要求します‥なんて面倒くさい‥)

 なので、対策として、まずはmp4にてエンコードしやる必要があります。

 その後、XMedia Recodeにて、mp4→mkvに、再コンテナしやると
 問題なく、さくさくキーサーチになります。(プチ二度揚げみたいな)

 まぁその際に、音声やら字幕やらを詰め込み直すのもありですが
 XMedia Recodeにてやると、適確で好いのですが、ログ保持の分で微々増量します。
 (MKVToolNix GUIにて再コンテナの際に、ログ破棄もできますが、さくさく破棄と同義かと)


 ‥ちなみに、XMedia RecodeとMKVToolNix GUIとでは、エンコード情報保持が微に異なります。
 MediaInfo等でチェックするアレですね。
 (適確に保持しときたければ、XMedia Recodeのログ保持ありきでしょう‥)



1-12)12

> フィボナッチ数列というのをご存じでしょうか?


 ‥Aランチでは、{bフレーム:ref:GOP長}={1:2:3}でした。
 ‥Bランチでは、{2:3:5}だったのです。

 まんまフィボナッチ数列だったというわけです‥(ンゴ!!!)


 ‥では、改めて並べてみましょう。
 Aランチは、{4:8:12}‥4の倍数による{1:2:3}
 Bランチは、{6:9:15}‥3の倍数による{2:3:5}

 (という事で、巷のbフレーム長‥3の倍数説の裏付けが取れましたん‥)


> I、P、Bの組み合わせに求められていたのは、ズバリ黄金比
> なので、美麗に爆Qるンするんですネ♪‥(とかなんとか)




 ※お話変わって、ビットレート(11520)について
 以前は気にならなかったのですが、ここに来て(11520)の癖みたいなパターンに気がつきました。
 ビットレートの割り振りが、多少足りていないのかよく解りませんが

 ぼかし動作中に、微にタイミング遅れみたいな印象を見かけるようになってます。

 但しこれは、全体的なぼかし動作に対してではなく
 部分的に散らばってあるような、極プチぼかし箇所において起こります。

 見ていると、こんな所がぼかされて処置されているんだとした勉強にはなるのですが
 視聴する分には、幾らかのもどかしさを感じざるを得ません。

 (無論、bフレームを使用すれば、そんなのほとんど判りません)
 (bフレームの特徴は、QP変動をやらかすことで、その手の課題を容易に相殺することです)
 (但し、適切に相殺するには、それなりのGOP長が欠かせないようで、キュルキュルとは無縁です)

 (述べるまでもなく、bフレームのQP変動にpフレームの品質も巻き込まれるわけです)
 (そうなるとIフレームなんかお飾りなんだから、I4×4も要らねぇだろうと思いきや)
 (I4×4の有る無しの違いはとてつもなく大きいので外せません‥なんでやねん?‥)


> 思うに、エンコード側は、設定された内容を忠実に裏でシュミュレートしており
> ヒトの側がこの辺りの情報は要らねぇだろうと思っているのとは、異なる眼をしていると‥
> それがつまり、{平均:バッファ:最大}に見られる結果という事にも成るのでしょう‥
> 何事も、時間をケチる意図に従っていては、幻想的レベル域には仕上がらないとかなんとか‥
> (いやまぁ実用のレベルに誰も期待しちゃいないと言うことなんでしょうけど)


 幻想的レベルの暮らし VS 実用レベルの暮らし

 どちらの方が時間が掛かりそうですか?、もしくは、時間を掛けてみたいですか?
 (そんなの答えるまでもない)

 「努力云々では無い、手間を掛けたいと思っているか否かだ」
 「手間を掛けられるなら、そこに才覚が付いてあると言うだけの話だ」
 「同じ思考を繰り返せば、反射的に素早くもなる‥それだけの話だ」



posted by 木田舎滝ゆる里 at 16:53 | Comment(0) | AVC-Q | 更新情報をチェックする
この記事へのコメント
コメントを書く
お名前:

メールアドレス:

ホームページアドレス:

コメント:

※ブログオーナーが承認したコメントのみ表示されます。