HTPCの高画質設定 その3

映像の設定と音声の設定で記事を分けています。
最新の設定はHTPC (画質音質)ジャンルから確認して下さい。

2010/12/27記事変更

旧ブログサイトの記事の「HTPCの高画質設定」、「HTPCの高画質設定 その2」は人気があったので追加分を加えて再編集しました。
設定で書かれていない部分はデフォルト状態と見なしてください。

OSの設定:
Windows7、Vistaの場合はAeroを切ると画質が上がる事があるようだ。
設定方法は、システムのプロパティ→詳細設定→パフォーマンス設定→「デスクトップ コンポジションを有効にする」をオフ。
もしくはデスクトップのカスタマイズ(画面上の何も無い所を右クリック)→個人設定で「ベーシックテーマとハイコントラストテーマ」の中から選ぶ。
何故これで画質が上がるのか理由は不明。
処理上の変化は画面上のコンテンツをグラフィックスメモリ内で合成してから描画から、直接ディスプレイデバイスに描画に変わり、GPU負荷が下がる事が確認できるぐらい(CPU負荷は上がるらしいが動画再生では判別出来ない)。
もしかすると私の環境では出力ピクセルフォーマット(Radeon VGAカードの設定を参照)をYCbCr4:4:4にしているせいかもしれない。
動画(Y:16-235、CbCr16-240)をグラフィックメモリ内で一度出力画面(RGB8:8:8/Y:0-255、CbCr1-255)に変換→出力ピクセルフォーマットに合わせて再変換(YCbCr4:4:4/Y:16-235、CbCr16-240)という処理を通る事で2度の変換で画質劣化しているのかもしれない。
Aeroを切ると元画像からダイレクトに出力ピクセルフォーマットへの変換なので劣化が抑えられるのかもしれない。
私の環境の場合はAeroオフの方が動画のフォーカスが一段上がったような感じになる。
目で見て違うと感じたらAeroオフを使用、ただし画面割れ等が起き易くなるので見て差が無い場合はAeroオンが良いだろう。


DirectXの設定:
最新版
動画再生にもDirectXを使用しているので最新版にしておきましょう。


Radeon VGAカードの設定:
・Catalyst最新版を利用
・リフレッシュレートを59Hzに設定
・リフレッシュレート24Hzの追加
・HDMI出力の出力ピクセルフォーマットはRGB:8:8:8(Full)に設定
・インターレス解除は自動またはベクター適応
・プルダウン検出にチェック
・Color vibrance、Flesh tone correction、縁拡張、デノイズ等のチェックは全て外す
最近のCatalystでもバージョンによる画質差はあるが小幅になってきている。
とりあえず最新版を入れて興味があれば古いバージョンを試してみるといい。
私がチェックした感じでは10.8と10.4は同画質で9.11からは変わっていた。
半年に1度ぐらい入れ替えれば十分だ。
リフレッシュレートはVGAドライバーをインストール直後60Hzに設定されている。
しかしNTSCのフィールド周波数は59.94Hzなので60Hzのままだと29.97fpsの動画で約16.7秒に一回カクつく事になる。
(DVD等も含む動画の多くは29.97fps)
CCCの59Hzが59.94Hzかを疑う人はディスプレイで入力周波数を表示して確かめるといい。
リフレッシュレート24Hzはモニターが対応している時のみ追加、複数のモニターを接続している時は全てのモニターに対して追加しないと駄目のようだ。
出力ピクセルフォーマットはRGB8:8:8(Full)が一番良い。
しかしその設定だとディスプレイ側が輝度伸長を適切にしてくれない事がある。
その場合はテスト映像等を使って黒レベルが合う設定を使うしかない。
RGB8:8:8(Full)に比べて、
RGB8:8:8(Limited)とYCbCr4:4:4は情報量が約7/8になる。
YCbCr4:2:2は情報量が7/12になる。
特にYCbCr4:2:2は避けるべき。
色情報の解像度が縦横半分なのであきらかなダメージがある。
RGB8:8:8(Limited)とYCbCr4:4:4は動画再生においてRGB8:8:8(Full)と差が無いかもしれない。
元々動画はその範囲内で作られているから。
デインターレスは一番優れているアルゴリズムはベクター適応だが自動にしておけば使われるのであえて設定しなくても良い。
HD4350等の性能の低いボードで高解像度動画にベクター適応を掛けると処理能力が足りない気味なので自動的に軽いアルゴリズムに変更される方が使い勝手がいい。
Color vibrance等の画質補正機能は積極的に使っていってもいいが元映像を忠実に再現する事を高画質とする観点からオフ。
Enforce Smooth Video Playbackは処理能力が足りない時に強制的に低負荷な設定にしカクツキを抑える機能。
HD4650で色々試したがGPU負荷が80%を越えると負荷の軽い設定に変更するようだ。
上で示した設定のように画質補正機能をまったく使わない場合はこの負荷になる事は無い。
なのである程度以上のVGAカードを使っている場合はオフで良い。
HD4350のような能力の低いVGAカードの場合は念の為オンにしてカクツキを抑えた方が良いと思う。


PowerDVD8の設定:
・「動画」→「ハードウェアアクセラレーション機能を有効にする」にチェック
・「動画」→「詳細設定」→「デインターレスアルゴリズム」→「ハードウェアデインターレスを使用する」にチェック
・「動画」→「詳細設定」→「デインターレスアルゴリズム」→「ハードウェアデインターレスを使用する」の下のタブは「デフォルト」
現状ではインターレス動画の再生能力ではPowerDVDのDxVA使用時がもっとも優れている。
(参照:「PowerDVD、WinDVD、TotalMedia Theatre 3 の画質チェック」)
次点がWindows7に最初から入ってるデコーダだがこちらの方が画面比率がおかしくなる等の不具合が出やすい。
デインターレスアルゴリズムはデフォルトにしておけばVGAドライバーが適切に選んでくれる。


ffdshowの設定:
最新版(安定版ではなく)を使用
・「コーデック」→「H264/AVC」をffmpeg-mtに変更
・「コーデック」→「H264/AVC」の「安全な場合はブロック低減をスキップする」「常にブロック低減をスキップする」のチェックを外す
・「インターレス解除」にチェック
・「インターレス解除」→「方法」に「Yet Another DeInterlacingFilter (yadif)」
・「インターレス解除」→「フレームレートを2倍にする」にチェック
・「リサイズ」にチェック
・「リサイズ」→「スクリーンの解像度にリサイズする」にチェック
・「リサイズ」→「次の場合にはリサイズする」にチェック
 (条件の設定例:X<1280かつY<720)
・「リサイズ」→「設定」→輝度のメソッドに「Lanczos」
・「リサイズ」→「設定」→Number of Tapsを出来る限り大きい値(理想は10)
・「リサイズ」→「設定」→「正確な丸め処理」にチェック
・「出力」→「RGB32」にのみチェック
・「出力」→「YV12からRGBへの高品質変換」にチェック
・「出力」→「RGB conversion」→「YV12からRGBへの高品質変換」にチェック
・「出力」→「RGB conversion」→「ディザリング」にチェック
ffdshowは現在安定しているので最新版の使用でOK。
コーデックのffmpeg-mtはマルチスレッド対応のデコーダー。
マルチコアCPUの普及率は高いと思うので迷わずこちらを選ぶといい。
ブロック低減はされるのがH264の本来のデコードなのでチェックを外す。
処理速度が足りない時用のオプションなのだ。
インターレス解除のチェックは動画フォーマットを見て必要な時だけ自動的に使用するので入れっぱなしで問題無い。
インターレス解除の方法は以前は「TomsMoComp」を推奨していたが、yadifの方が優れていた。
ポストプロセッシングは以前はチェックを推奨していたが最近の動画の品質の高さから言えばデフォルトでチェックしない方がいいので外した。
その他シャープ化等の処理には必ず弊害があるので基本的には使わない。
リサイズはLanczosのTap10に出来る限りしよう。
ボケが無くなるのでシャープネスをかける必要もなくなる。
処理能力が足りない場合は「次の場合にはりサイズする」の条件で調整するといい。
上の設定例だと1280×720未満の解像度の動画でしかリサイズしない。
まだ駄目なら「X<960かつY<540」のようにさらに緩めてそれでもどうにもならない場合はLanczosのタップ数を下げよう。
またスケーリングアルゴリズム(「リサイズ」→「設定」→輝度のメソッド)でSuper2xSaIよりも下は境界線を滑らかに繋ぐ事を目的としたアルゴリズムなのでアニメがメインの人は試す価値があるかもしれない。


MPC-HCの設定:
・最新版使用
・Windows7、Vistaでは「再生」→「出力」→「EVR Custom Pres.」にチェック
・WindowsXPでは「再生」→「出力」→「VMR-9(レンダーレス)」にチェック
・「再生」→「出力」→「サーフェス」を「3D surfaces(recommended)」
・「再生」→「出力」→「補間方法」を「Bicubic A=-0.60(PS 2.0)」
・「再生」→「フルスクリーン」→「自動変更を使用」にチェック
・「内部フィルタ」→「変換フィルタ」内のチェックをPowerDVDやffdshowに任せられる物は全て外す。
・ウィンドウ右クリック→レンダラ設定→リセット→最適なレンダラ設定
MPC-HCはMedia Player Classicの派生版だが現在ではこちらが開発本流だ。
安定版は1.4.2499.0。
最新版の配布サイトはXvidVideo.RUXhmikosR's builds
最新版でもある程度安定しているので、まずは入れて試してみる事をお勧めする。
出力はEVRやVMR9にするように指定しているがシステムによっては画面割れやカクツキを起こす事がある。
その場合はシステムデフォルトかオーバーレイで良い。
実はPowerDVDやffdshowをこの記事の通りの設定にしていると「出力」による画質差はほとんど無い。
特にffdshowで画面解像度にリサイズしていると目で見て判別できる差は無い。
字幕が出せるかどうかの差だけ。
補間方法に「Bicubic A=-0.60(PS 2.0)」を使用すると性能の低いVGAで極端に遅くなる事がある。
その場合はBilinear等にして様子を見る。
フルスクリーン時の「自動変更を使用」で24Hz等が出てこない場合はモニターが対応してないか、リフレッシュレート24Hzの追加でしくじってるのでVGAの設定を見直してみよう。
レンダラ設定で最適なレンダラ設定を選択すると私のシステムでは「デスクトップ コンポジション(Aero)の無効化」がチェックされた。
こうなる理由をネットで探してみたが特に説明が見つからないのでオーバーレイを使用できるようにする為か、GPU負荷を下げる為か、上のOSの設定で書いたような理由の為だと推測する。
Aeroオンオフの差が目で見てもわからない場合はチェックを外しても問題無いと思う。
「10ビットRGB」は「D3Dフルスクリーンモード」の時にしか有効にならず、またVGAの性能にも依存するので「ステータスを表示」にチェックして使用可能かテストしてみる。
「完全な浮動小数点演算をする」は性能の低いVGAでは極端に遅くなる事があるので注意。
外部フィルタは登録しなくても内部フィルタのチェックを外してれば勝手に探して使ってくれるが、思い通りのデコーダを使いたい時に登録すれば良い。
私の場合はMPEG2はデインターレスに優れたCyberLink Video Decoderを使用してそれ以外はffdshow Video Decoderを使用している。
現在何が使われているか知りたい場合は動画再生中にMPC-HCのウインドウ内で右クリック→フィルタ。


以上が最近の状況に合わせた画質設定です。
ffdshowの設定項目は負荷を非常に上げる物が多いので全てこの通りにするとまともに動かないシステムもあると思います。
その場合は「「出力」→「RGB32」にのみチェック」を全チェックに戻すか、リサイズ設定を緩めるのが良いです。

コメントの投稿

非公開コメント

最新記事
最新コメント
最新トラックバック
カテゴリ
月別アーカイブ
FC2カウンター
リンク
検索フォーム
RSSリンクの表示
ブロとも申請フォーム

この人とブロともになる

QRコード
QR