madVR Options Explained Ver 1.2 |
For "madVR v0.89.1 |
devices モニタの設定 |
<認識されたモニタはそれぞれのモニタ名で設定項目が出る> |
device name: デフォルトでEDIDから取得した形式が入ってるが、分かり易いのに変更できる |
device type: モニタの表示方式を選ぶ |
◎Receiver, Processor, Switch: 表示装置以外の映像処理機器 |
◎Digital Monitor / TV: 液晶パネルのモニタ / テレビ |
◎Digital Projector: 液晶シャッターのプロジェクター |
◎CRT Projector: ブラウン管のプロジェクター |
◎CRT Monitor / TV: ブラウン管のモニタ / テレビ |
◎Unknown : その他、PDP, AV, ELS, ES など |
identification: モニタから取得したEDIDデータが見れる |
properties: モニタへ出力するカラー規格の設定 |
the display expects the following RGB output levels: RGBレベル Black / white の正確な変換も考慮しているので少し重め |
the native display bitdepth is: カラービット深度 |
*カラービット深度はモニターのネイティブに設定した方が良い結果になる。要カット&トライ (madVRで減色処理をする) |
*そもそもモニタ仕様書にカラービットの記述が無い、または「8bit入力もできるよ~」的なニュアンス記述のは高確率で7bitか6bitパネルのモニタ |
*10bitモニターと謳いつつ実は「それなりに出来の良い減色処理を付けた8bitパネル機」も存在してるので注意。そもそもnative10bitパネルは他のパネルより数倍は高価 |
*モニタの減色処理は低品質なことが多い。だがパネルのネイティブ・カラービット深度で入力すると大概はパススルーになるとこに目をつけた設定でもある |
**10bit出力をする場合には rendering - general settings の "use Direct3D 11 for presentation (Windows 7 and newer): " を有効にする必要があります |
**10bit出力は"fullscreen exclusive mode"のみで可能 |
**カラービット深度の設定は増色要素のある他処理のパラメータとしても使用されるので、いい加減な設定はダメ |
***RGBレベルの Black/white の正確な変換は rendering - trade quality for performance の "lose BTB and WTW if it improves performance" で無効化できる |
無効化で Black: 16以下 / white:235 以上の再現性が低下します |
calibration: 校正方法 |
disable calibration controls for this display: 校正はしない |
this display is already calibrated: モニタの校正に依存(モニタ校正仕様を選択) |
calibrate this display by using yCMS: 外部で測定した yCMS相対偏差値で校正する(別タブで座標を入力する) |
calibrate this display by using external 3DLUT files: 外部で測定作成した3DLUTで校正する(必要なカラー規格に3DLUTファイルを指定する) |
*3DLUTで校正を行う時はrendering - dithering の use colored noise を有効にすることを強くお勧めします |
disable GPU gamma ramps: ・GPUでガンマランプ処理は行わない |
・Windowsでのキャリブレーションやモニタプロファイルが無効化される(終了時に元に戻される) |
・ウインドウオーバーレイモード時にはWindowsのガンマランプ処理をエミュレートする |
display modes: ソースの解像度やフレームに依ってフルスクリーンに切替えるか否かの設定 |
color & gamma: 簡易補正(校正の代わりにはならない。calibration で校正している時にはデフォのままで弄らない) |
screen config: クロッピング、縮小(映像領域をカットせずに縮小する。 例: 16:9 → 4:3 = 縦長の映像になる) の設定 |
processing |
*この項目配下の各設定はポスト処理(有効にすると無条件でスタンドアローン動作する)なので他設定項目との影響性に気を付けること |
deinterlacing: |
□automatically activate deinterlacing when needed: 自動インターレース解除とうまく検出できなかった場合の動作 |
◎if in doubt, activate deinterlacing: 状態不明時にはインターレース解除を有効にする |
◎if in doubt, deactivate deinterlacing: 状態不明時にはインターレース解除を無効にする |
□disable automatic source type detection: ソースタイプの自動検出をしない |
◎force film mode: 強制的にフィルムモードに固定する 23.976fps |
◎force video mode: 強制的にビデオモードに固定する ソースによる NTSC: 29.97fps / PAL: 25fps |
□only look at pixels in the frame center (GOOD for broadcasts, BAD for animation): 検出範囲としてフレームの中央部のピクセルのみで判定する(実写向きで、アニメには不向き) |
artifact removal: |
□reduce banding artifacts: デバンディング ON |
default debanding strenght: 基本強度 |
strenght during fade IN/OUT: フェード イン/アウト部分の強度(検出には最低5フレーム必要) |
image enhancements: |
□FineSharp: イメージファインシャープ |
strength: 強度 |
□LumaSharpen: 輝度シャープ |
strength: 強度 clamp: 中心帯域 radius: 帯域幅 □experimental limiter: リミッター(実験中) |
□AdaptiveSharpen: 適応型シャープ |
strength: 強度 |
restore defaults: デフォルトの設定に戻す |
zoom control: |
□Disable scaling if image size changes by only: 設定されたスケーリングサイズが変化した場合のみ無効にする |
□automatically detect hard coded black bars: ハードコードされたブラックバーを検出する |
------------------------------------------------------------------------ |
□if black bars change quickly back and forth... : 設定された時限でブラックバーに素早く切替える |
◎don't switch more often than: 切り替えを抑制する |
◎pick one common zoom factor: 共通のズーム倍率 |
□if bars change slowly pick one zoom factor: 遅延切り替えの倍率 |
□notify media player about cropped black bars: クロップブラックバーについてメディアプレーヤに通知する方法 |
□always shift the image: 常にイメージをシフト基準 |
□keep bars visible if they contain subtitles: サブタイトルがある場合のブラックバーを保持方法 |
□cleanup image borders by: イメージのクリンアップのボーダーライン |
□if there are big black bars: ビッグブラックバーの縮小率 |
□zoom small black bars away: アウェイのスモールブラックバーを拡大する |
□clear black bars: ブラックバーをクリアリングする |
scaling algorithms: |
chroma upscaling: 彩度拡大 |
image downscaling: イメージ縮小 |
image doubling: イメージダブリング |
image upscaling: イメージ拡大 |
*processing done by GPU texture units: GPUのテクスチャユニットを使う(お勧めはできない) |
*processing done by GPU video logic: GPUのビデオロジックを使う(CPU速度等の問題でもない限りお勧めしない) |
*processing done by custom pixel shader code: カスタムピクセルシェーダで処理する |
**octuple luma/chroma resolution: x8 レゾリューションを行う |
**use alternative interop hack: 専用ユニット以外での処理はしない。AMD用(代替可能な互換処理ユニットでの計算は遅くなる事が有るため。GPU品種やドライバーverに依存するので注意) |
**activate anti-ringing filter: リンギング低減フィルターを使う |
**scale in linear light: リニアライトスケールとして処理する 輝度情報を保持し易くなる。『縮小用』であって拡大には非推奨 |
**activate SuperRes filter: スーパーレゾリューションフィルターを適用する |
***NNEDI3, NEDI は仕様上2倍にしか拡大できない。 拡大リミット設定に従い、拡大するターゲット解像度以上になるまで繰返えす → そして"image downscaling"で設定したアルゴリズムでターゲット解像度に縮小される |
拡大リミットを越えたら- リミットまでNNEDI3, NEDI で拡大 → 残りは"image upscaling" で設定したアルゴリズムでターゲット解像度まで拡大される |
***NNEDI3 はそのアルゴリズム上、64ニューロン以上での使用が望ましい。32ニューロンだと不足してるが細部を気にさえしなければ十分使えるレベル |
***NEDI はNNEDI3 32より若干劣るが大差はない 軽負荷 |
***イメージダブリング使用時の縮小、位置補正に使うアルゴリズムはそれぞれ image downscaling、image upscalingで設定できる(仮) chromaは固定(この辺の仕様は現在模索中) |
|
upscaling refinement: |
□FineSharp: イメージファインシャープ |
strength: 強度 |
□LumaSharpen: 輝度シャープ |
strength: 強度 clamp: 中心帯域 radius: 帯域幅 □experimental limiter: リミッター(実験中) |
□AdaptiveSharpen: 適応型シャープ |
strength: 強度 |
□SuperRes: スーパーレゾリューション |
strength: 強度 radius: 帯域幅 |
----------------------------------------------------------------------------------------- |
◎refine the image after every ~2x upscaling step: ~x2アップスケーリングステップ毎に全てのイメージをリファインする |
◎refine the image only once after upscaling is complete: アップスケーリング後に1回のみイメージをリファインする □ apply SuperRes first: 最初にSuperResを適用する |
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): 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キューバッファのサイズ |
*増やせば増やすほどバッファの管理の為により多くのメモリ帯域が割かれるようになる(遅くなる) |
|
windowed mode settings: ウインドウモードの設定 |
□present several frames in advance: 先にサーバルフレームをセットする(遅延低減、初期描写トラブル防止) |
exclusive mode settings: フルスクリーンモードの設定 |
□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: 自分が何をしているのか理解してる人用 |
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のようなフレーム補完をする機能ではない。つまりヌルヌル動画にするためのものではない |
*スムースモーションはモーションジャダー(アーティファクトの一種で定位置オブジェクトの描写位置がフレーム毎でずれる現象)によって |
画面の一部が震える(カクつく)のをフレームブレンドによって防止/軽減するのがメインの機能 |
おまけでソースフレームレートをリフレッシュレートと一致するようにフレームを水増しする機能フレームレートコントロール(FRC)も付いてる(帳尻が合うようにコピーしてるだけ) |
*この機能は色々と条件があり、それを外すと惨憺たる有り様になる |
・スムースモーションとFRCが同時に機能すると、スムースモーションで生成されたフレームも水増しに使用されることになるので、結果としてボケた映像になる |
・リフレッシュレートが正確にソースフレームレートの整数倍でないと音ズレが発生する(ReClock オーディオレンダラーを使えば回避できる) |
・ダウンフレームレートをすると条件に因らずカクカクボケ映像&豪快に音ズレが発生する(機能的に当たり前だけどダウンフレームレートには全く使えない) |
dithering: |
◎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: フレーム毎にディザパターンを変更する |
trade quality for performance: |
□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カラーとレベルを変換する |
各設定項目のルートにある create profile group でソースのパラメータによって専用の設定を複数作成することができる(簡単なスクリプトを書く必要がある) |
|
************* |
ガンマとは 校正、各調整の基準になる最も重要なパラメータ |
和訳では輝度知覚認知補正といいその標準補正値をグラフ化したものをパワーカーブといいます |
人間の視覚の明るさ(輝度差)に対する感覚認知はリニアではなく暗域は鈍く、明るくなるにつれて鋭敏になり、 |
(似たような現象が装置側にもあり、これも同時に補正できるようになってる) |
そんな視覚を補正してなるべく自然に近いリニアに知覚させるための補正係数がガンマ値です(1.0が本来のリニア値) |
また標準補正値だと使用目的によっては不自然に知覚される場合があり、それを自然に知覚されるように補正したものも標準化されてる |
その他の一般的な調整項目はガンマ値を絶対基準として行われる |
ガンマランプとは 描写ピクセルデータをルックアップテーブル(LUT)を参照してデバイスにマッピングするD3Dプロセスの工程 |
リニアライトスケールとは 一部の処理をガンマ1.0で行うこと。処理後に元の係数に再補正される |
概ね均一トーン中の単発高輝度/単発低輝度ピクセルイメージを保持しやすくなるが、破綻しやすくなるデメリットがある |
リンギングとは エッジに沿うように出現する映像処理のオーバーシュート いわゆるゴーストのこと |
エイリアシングとは オブジェクトに生じるジャギやノイズ様な荒い描写のこと |
アーティファクトとは 主に描写オブジェクトの位置ズレやマスク、輝度処理などの設定不手際、計算誤差などで生じ、本来見えない筈のものが見えてしまっている状態のこと |
バンディングやジャダー、~リークなどが良く出現するが、完全に無くすことは不可能でどうしてもある程度は出没してしまう |
テクスチャユニットとは 主にテクスチャを変形拡大縮小とそれに伴う補完処理を行うロジック |
カスタムピクセルシェーダーとは ピクセルシェーダー(PS)はマッピングテクスチャの色計算、光源陰影処理、シャープやソフトなどの表面処理を行うロジック |
カスタムピクセルシェーダーはPSのような固定化されたロジックではなく、一連の機能を自由にプログラム(openGL/CL)できるので、枠を越えた色々な機能を実装可能 |
************* |
10bit color 出力について 10bit出力をするためには、ネイティブ10bitモニタとD3D11以上および10bit処理が可能なGVC(openGL/CLのロジックの一つ)に対応したビデオカードが必要 |
この条件を満たすのはRadeon(現行機種が良い), FireProと quadro(quadroは余分な処理が必要な関係で少し消費電力上がり、また偶にプチフリする場合があるようです) |
RadeonはFireProと比べるとopenGL/CLな部分で足を引っぱってるのは仕方がない |
geforceはD3DはいいとしてGVCが8bitに制限されてるので、不安定な計算結果上等で畳み込んで結果を出してる(Pascal で改善されるらしい) |
|
ビデオカード設定 ・Radeon, FirePro のデジタルフラットパネル - プロパティ の色深度の設定は8bpcに設定 |
・FireProのAMD FirePro - AMD FirePro 設定 の「10ビット ピクセル フォーマット サポートを有効にする」は無効 |
quadro, geforce |
ディスプレイ - 解像度の変更 - [出力の色の深度] 8bpc 、[出力のダイナミックレンジ] フル、[出力のカラーフォーマット] RGB に設定 |
3D 設定 - 3D 設定の管理 - グローバル設定タブ の [プルダウンメニュー] Force 10 bits per component は無効に設定 |
|
************* |