rendering:
general settings
□delay playback start until render queue is full:
レンダーキューがいっぱいになってから再生を開始する
□delay playback start after seeking, too:
シーク後の通常再生移行時にも
□enable windowed overlay (Windows 7 and newer):
Win7以降 オーバーレイモードを有効にする
□enable automatic fullscreen exclusive mode:
フルスクリーンモード時、排他モードを有効にする
□disable desktop composition (Vista and Windows 7):
ON/OFFして動作確認する。
win7以降、3フレーム遅延防止のため再生開始時にデスクトップコンポジョンを無効にする
□only when media player in fullscreen mode:
フルスクリーンモード時のみ
□use Direct3D 11 for presentation (Windows 7 and newer):
win7以降 D3D11プレゼンテーションを有効にする(10bit出力する場合などに有効する必要あり)
□present a frame for every VSync:
全てのフレームをVSync(垂直同期)させる
□use a separate device for presentation (Vista and newer):
vista以降 他に使用できるopenGL/CLエンジンが有れば追加して負荷を分散する。
効率が上がるわけではない。
□use a separate device for DXVA processing (Vista and newer):
vista以降 他に使用できるDXVAエンジンが有れば、そっちに処理を移動する
CPU queue size: CPUキューバッファのサイズ
GPU queue size: GPUキューバッファのサイズ
*増やせば増やすほどバッファの管理の為により多くのメモリ帯域が割かれるようになる
(遅くなる)。
queue size は最適値を探す必要がある。小さくすれば良いというわけではない。
CPU queue size は、デコードに関わり、
GPU queue size は、レンダリングに関わる
基本的には、OSDを見ながらチェックON/OFFしてレンダリング時間や動作などを確認します。
queue sizeに関して、自分の環境では、以下の設定が最適値です。
ただし、queue size を最大にしても、レンダリング時間は 1ms以下しか変わりません。
(queue sizeを最大にした場合15msかかっていた処理が14ms位になる程度)
CPU queue size: 24
GPU queue size: 12
windowed mode
ウインドウモードの設定
□present several frames in advance:
先にサーバルフレームをセットする(遅延低減、初期描写トラブル防止)
exclusive mode
排他モードの設定
□show seek ber: シークバーを使う
これを有効にしないとシーク操作の度にウィンドウモードに切替わる。
ショートカットで操作するなら別だが。
□delay switch to exclusive mode by 3sec:
フルスクリーンモードへの移行を3秒間遅らせる(プレゼンタのトラブル防止)
□present several frames in advance:
先にサーバルフレームをセットする(遅延低減、初期描写トラブル防止)
*how many video frames shall be presented in advance: バックバッファのサイズ
*when and how shall the GPU be flushed: 自分が何をしているのか理解してる人用
上のチェックできる項目はチェックを入れます。(present several frames in advanceなど)
基本的には、how many video frames shall be presented in advance の設定を行います。
デフォルトは、12でに設定していますが、
自分の環境では、以下の設定値が最適です。(レンダリング時間は 1ms以下しか変わりませんが。)
how many video frames shall be presented in advance = 2
stereo 3d
3D立体映像
smooth motion
□enable smooth motion frame rate conversion:
スムースモーションを有効にする
◎only if there would be motion judder without it...:
モーションジャダー(震え)が発生しているとき以外で有効
◎...or if the display refresh rate is an exact multple of the move frame rate:
リフレッシュレートが正確にソースフレームレートの倍であるときに有効
◎always:
常に使用する
スムースモーションの名称が紛らわしいが、SVPのようなフレーム補完をする機能ではない。
つまりヌルヌル動画にするためのものではない。
SVPでフレーム補間した動画を見ると、違いがわかる。
スムースモーションは モーションジャダー(アーティファクトの一種で定位置オブジェクトの描写位置がフレーム毎でずれる現象)によって 、画面の一部が震える(カクつく)のをフレームブレンドによって 防止/軽減するのがメインの機能。
(画面が震えるのを防止)
おまけでソースフレームレートをリフレッシュレートと一致するようにフレームを水増しする機能フレームレートコントロール(FRC)も付いてる。 (帳尻が合うようにコピーしてるだけ)
この機能は色々と条件があり、それを外すと惨憺たる有り様になる。
・スムースモーションとFRCが同時に機能すると、スムースモーションで生成されたフレームも
水増しに使用されることになるので、結果としてボケた映像になる。
・リフレッシュレートが正確にソースフレームレートの整数倍でないと音ズレが発生する
(ReClock オーディオレンダラーを使えば回避できる)
・ダウンフレームレートをすると条件に因らずカクカクボケ映像&豪快に音ズレが発生する
(機能的に当たり前だけどダウンフレームレートには全く使えない)
見た限りでは、この機能の効用はわかりません。
つまり、OFFでもONでも同じに見えます。
ONにした場合、レンダリング時間が増えることがあります。
ONにしても、「only if there would be motion judder without it...」を
選択したほうが良いように思います。
24fpsの動画で レンダリング時間が40msくらいの場合、フレームドロップが少し発生します。
そのような場合は、smooth motion をOFFにすると、38ms前後になって
フレームドロップが起こりにくい設定になります。
見え方が変わらなければ、この機能をOFFにすると良いでしょう。
dithering
画像データの縮減などを行なう際に、データに意図的にわずかなノイズを加え、
加工・変換によって生じる境界部分の平滑化や誤差の周期化などを抑える手法。
単純な処理結果に比較して、人間の視覚にとってより自然で美しく感じられる結果を得ることができる。
algorithm:
◎None: ディザリングは行わない(激しく非推奨)
◎Random Dithering:
ランダムディザリング 乱数発生アルゴリズムが超優秀 (他ソフト同等機能よりははるかに良い)
◎Ordered Dithering:
オーダードディザリング 輝度感応型可変ディザパターン (他ソフト同等機能よりは良い)
◎Error Diffusion - option 1:
誤差拡散ディザリング 1 スーパーオーダードディザリング (重い)
◎Error Diffusion - option 2:
誤差拡散ディザリング 2 1から計算が重いわりに効果が殆ど見えない処理を端折り、
効果が大きい処理に注力したもの (1よりは-20%程度軽い)
options:
□use colored noise: カラーノイズを加える
カラマネモニタ使用時や3DLUT校正を使用してる時はほぼ必須
□change dither for every frame: フレーム毎にディザパターンを変更する
アルゴリズムは、Error Diffusion - option 1 か option 2 を選択します。
オプションは、2つともチェックします。
※アニメを見る場合に、
dithering を none にして、
processing の reduce banding artifacts をチェックして
default debanding strenght ・ strenght during fade IN/OUT を medium
にすると、ハッキリした画質になることがあります。
trade quality for performance
画質よりスピードを求める場合に設定します。
基本的には、すべてOFFです。
□optimize subtitle quality for performance instead of quality:
字幕の品質向上のためにパフォーマンスを最適化する
□use DXVA chroma upscaling when doing native DXVA decoding:
DXVAデコードを行う時にDXVAでクロマアップスケーリングをする
□use DXVA chroma upscaling when doing DXVA deinterlacing:
DXVAインターレース解除を行う時にDXVAでクロマアップスケーリングをする
□store custom pixel shader results in 16bit buffer instead of 32bit:
カスタムピクセルシェーダーを16bitバッファにする
□don't use linear light for dihering:
デザリングにリニアライトを使わない
□ don't analyze gradient angles for debanding:
バンディングのグラデーション角度を解析しない
□don't rerender frames when fade in/out detected:
フェード検出時には再レンダリングをしない
□lose BTB and WTW if it improves performance:
パフォーマンス向上のためにRGBレベル変換の一部調整を簡略化する。
(Black:16以下 / white:235以上の再現特性補正をしない)
□don't use linear light for smooth motion frame blending:
スムースモーション使用時にはリニアライト処理はしない
□use 10bit chroma buffer instead of 16bit:
クロマバッファを10bitバッファにする
□use 10bit image buffer instead of 16bit:
イメージバッファを10bitバッファにする
□run custom pixel shaders in video levels instead of PC levels:
カスタムピクセルシェーダ処理をPCレベル(0-255)で行う
□use lower bitdepth for yCMS 3DLUT calibration:
yCMS と 3DLUT校正時に低いビット深度に変換する
以下は特殊用途向けの設定だが、GPUをアブノーマルな使い方をするので問題を起こす可能性がある
□use half frame rate for DXVA deinterlacing:
DXVAインターレース解除をハーフフレームレートで行う
□trust DXVA color & levels conversion:
DXVAカラーとレベルを変換する