2017年08月18日

【参考】エンコの魔法

↓7)改稿.2017/09/22...20170818..20170817...

> ここでのエンコ目的


 1920x1080(1440x1080)の動画を
 1280x720(960x720)の解像度にリサイズして
 (できれば限りなく劣化レスで)USBメモリーに詰め込んで

 最終的に、TVのUSB端子に挿して、TV画面での視聴を楽しみたい

 ‥TV側の再生能力に制限されるので
 解像度をダウンせざるを得ず、細やかさは当然として失われることになるが
 色味と輪郭感を出来るだけ損なわないレベルでの再エンコを目指す


 (商業的な見方での結論からして、64GBのUSBメモリーが適切に思われる)


 < ここでの注意すべき前提 >
 ‥USBメモリーの読込速度がお粗末だとお話にならないので
 コマ落ちにならないレベルのしっかりした品を選びたい


> 使用アプリ:XMedia Recode
> ファイル形式:mp4(動画AVC+音声FDK-AAC)
> プロファイル:(Main)、レベル:4.1



1-7)1

 ‥まずビットレートだが
 フレーム間隔6フレームで
 2700Kbpsがダウンベースに於ける画質レベルの境目の一つだった
 フレーム間隔を、商業水準の4フレームに戻すと
 途端に全体の品質やら容量に影響する。(その影響は、2パスと品質とで異なる)


 ビットレートが決まると、体重が決まるようなもので
 中でもPフレームは、一番に比重が大きくなるので注意が必要だ

 ‥その他の細かい調整は
 その体重量の中に、どれだけの筋肉と脂肪と艶を詰め込む調整をするかにすぎない

 (いわばPフレームは脂肪で、あとのBフレーム群をどれだけ筋肉化できるかになる)
 (ただし、全体的に十分な容量が指定されていないのでは、全体としての艶が失われたままだ)
 (これは、圧縮効率が高いほど、体重が軽くても画質が有利と言うことになるが)
 (無論、ハードレベルでの展開が遅いようなら、コマ落ちや音飛びに繋がってしまう)



1-7)2

> 2パスと品質の違い


 とくに品質では、17と18が画質レベルでの一つの境目だった
 ビットレートで言うと2700と2400で、300Kbps毎に、単純な印象が違うようだ


 ‥品質は
 場面毎の画質を、画質の程度感でそろえる扱いなので
 品質をそろえるのにビットレートを惜しみなく利用する事から
 動きの激しい場面&複雑な光彩表現が多いと、ずるずると増量していく

 これを逆から言えば
 一度、高品質でエンコすることで、フレーム総数に対しての作品毎の動きの多い少ないを評価できる

 ただし、2パスとは違い、キーフレームの途中追加に対応しているらしいので
 キーフレームを一定の間隔に揃えていないと正確な判断に結びつかない


 (まぁ、今回は2パスでの話だ)
 (アニメなどの長編作品を如何にUSBメモリーに収めるかに於いて容量が予想できないのでは痛い)
 (中途にキーフレームを入れるテクニックは、時間的に無理。あと、それの操作がよくわからない)
 (フレーム間隔を増やすことで、圧縮演算が程度緩和される効果は期待できるだろう)


 ‥2パスは
 全体を一度スキャンしてから動きの程度を測り、割り当てを調整する(無駄が削れる)
 ただし、調整をする為には、アルゴリズム上の品質が想定されるので
 概ね、ビットレートを大きく割り当てるほどに、アルゴリズム想定の品質も上がるように思われる

 注意すべきは、ちまちまビットレートを上げても、全体での細かい圧縮率が上がらないままなら
 設定された容量の中で、場面毎の容量の分捕り合いが起きている点である

 (とくに、フレーム間隔を減らした場合は、もろに全体の品質を圧迫する)
 (2パスに於いて、ビットレートとフレーム間隔は反比例の関係だ)



1-7)3

> 量子化とは?


 (アプリをいじってみた感覚としては)
 エンコの量子化とは、カメラのピント合わせをする為の調整幅らしい
 ‥とくに
 量子化最小値は、細かい部分のピントを調整し
 量子化最大値は、全体観でのピントを調整する

 (どちら共に、数値を下げると輪郭がクッキリし、同時に圧縮に時間を要する)
 (効果を得るには、動き推定:M.E アゴリズム:Multi hexの指定が欠かせないように思われる)


 ‥量子化最大値の目安の一つが「64」‥
 これより値を大きくしたままでは、どんなにビットレートを追加しようとリバウンドも同然だ
 ぼやけた感じが正される気配は、まるで伺えない(つまり失敗エンコ)



1-7)4

> 可変ビットレートの度合い調整×量子化圧縮の度合い調整


 ‥可変ビットレートをより多く割り当てる調整をしても
 2パスに於いて、そればかりを調整しても、どこかのビットレートを減らしてしまうだろうから
 その加減の具合が求められるが、どの程度の割合で調整されるかは不明だ
 (いじってみた感じでは、効果があるのかさっぱり判らない)

 一方で

 ‥量子化圧縮は、全体に等しく圧縮による相乗効果が得られるので
 調整することで、ビットレート不足での繊細な奥行き加減の改善が得られる場合がある
 (圧縮効果を重くし過ぎても、展開時の負荷が大きくなって、コマ落ちに繋がっては意味が無い)
 (基本は、ビットレートを大きく割り当てる事なので、あくまで奥の手要素での度合いだ)



1-7)5

> 品質を見極める目が大事


 エンコードは機械的に見ると、色味の加減のやり取りをしている

 ‥具体的には‥
 ところどころの場面で、薄紙一重分の色味を削りとって、その分の容量を他に回すようなものだ

 場面の切り替えやら光彩の変化が激しい場面が続くようなら、一様に見にくさをうかがわせたりする
 これは、通常のゆったりとした会話場面の画質がもやっとしているのとは違って
 決定的にビットレート不足を示唆している


 ‥2パスに於いて
 動きの激しい場面での色味ゆえの見にくさが、あちこちで起きていると
 全体的にもビットレートが不足している症状なので、ビットレートを増やさざるを得ないが
 フレーム間隔を元に戻すことも合わせて検討すべきである

 ‥色味のグラデーション崩壊が
 場面毎に確認できるようなら、それはフレーム間隔が変更された事による影響が大きい

 ‥単純に考えても‥
 グラデーション崩壊を起こさないようにするには
 起こらないように、前もって、適切なキーフレームorPフレームを選ぶのが一番に手っ取り早い



1-7)6

 音声について一言言うと
 色味の再現性やらピント感が正確になればなるほど、192Kbps程度など有り得ない



1-7)7

 ‥ということで
 参考までに、こちらで検討した調整をxmrファイルで揚げておく

 (xmrファイルとは、XMedia Recodeの設定を保存しただけの中身だ)


 [mp4][23.97fps]old960x720AVC2700ACC384.xmr

 [mp4][23.97fps]new1280x720AVC4050ACC384.xmr


 ‥多少時間は掛かるが
 AVC8ビットダウンリサイズなのに、まったく劣化してなさそうな印象に驚愕する

 (様々な想定を考慮してのビットレートを採用したので)
 (‥ファイルサイズは至って平凡だ‥)
 (それが色味のモヤモヤ感の根絶と言うことらしい)

 ‥調子こいて

 リサイズしないでも、イケそうに思えるが
 FHD画質のままなら、単純に2.25倍のビットレートを指定しないと、同じ色味の水準には届かない
 29.97 fpsの映像なら1.25倍にしないとダメで、フレーム間隔によっても変わってくる
 人の目からすると、「そこまでする必要があるのか?」と言うことになるが
 それが動画圧縮の性質だ‥(動画圧縮での微妙な色味の過不足加減なんて人には判らん)


 (* 音声に関しては、リニアPCMからの変換を想定しています)


 ‥同じ8ビットでも、HEVCなら、さらに小さいサイズに変換できそうだが
 設定項目が、HEVCとAVCでとはかなり違っているので諦めた
 (そこまでのマシンパワーも、目的性もねぇ)


 ‥できれば
 AVCの10ビットでの保管が希望だが、目的から外れるし
 そもそもにして、肝心の設定項目が、XMedia Recodeには用意されていない

 (XMedia Recodeのベースプログラムをインストールして、手動で指定すればイケそうだが)
 (俺には、どうにも敷居が高そうだ)
posted by 木田舎滝ゆる里 at 11:08 | Comment(0) | エンコードが始まらない | 更新情報をチェックする
この記事へのコメント
コメントを書く
お名前:

メールアドレス:

ホームページアドレス:

コメント:

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