HTPCでMpeg2TSを見るのに、TVTestを使っているのですが、微妙に画質がいまひとつです。
こま落ち?なのかインタレース解除の性能なのか微妙にカクツク感じがあるし、
ティアリングも有る気がするし、これってどうなの?といった感じです。
かといって、試したほかのプレーヤーはちょくちょく再生が止まったり、AACパススルーが出来なかったりします。
HTPCのスペック
M/B:ベアボーン Shuttle SD32G2
CPU:Core2Duo E6300
RAM:DDR2 2GB*2
SSD:Silicon Power 64GB SP064GBSS2T10S25
VGA:ELSA GLADIAC 573 128MB (GeForce 7300 LE)
電源:PicoPSU160
Mpeg2TSのソースは
DN2800MTで作ったPT3+Sambaサーバー上のもの
で、原因として考えられるのは、CPUがプア、グラボがプア、ネットワークがプア(100Mbps)、サーバーがプア、TVTestがプア、あたりかと思うのだけれど、とりあえず手軽にやれることからということでTVTest回りをいじることにしました。
TVTestで設定できるのは、大まかには
設定 > 一般 > デコーダ と
設定 > 一般 > レンダラ らしく、デコーダは後から追加することも出来るらしい。
ということで、
1:ATI MPEG Video Decoder の導入方法
2:CyberLink Video/SP Decoder の導入方法
3:MPC - MPEG-2 Video Decoder の導入方法
4:ffdshow Video Decoder の導入方法
5:DScaler MPEG Filters の導入方法 <<追記>> をメモ。
Windows7_64bitの感じで書いてますが、32bitも基本同じです。ディレクトリは適宜読み替えてください。
TVTestのバージョン0.7.23OSがWindows7なので、Microsoft DTV-DVD Video Decoderは元から入ってます。
LAV Video Decoderはいつの間にか(?)入ったけど使えません。
ヘルプファイル(TVTest.chm)を見ると動作確認のあるデコーダの中には表記がないので順当なのでしょう。
TVTestのヘルプファイルより デコーダについて
1:ATI MPEG Video Decoder の導入方法ATI MPEG Video DecoderはATI(現AMD)のビデオドライバを入れると一緒に入るらしい。
HTPCのビデオカードはGeforce(nVidia)なのでATIのドライバは入らない(入れられない)が、ATIのビデオカードが乗っているPCから必要なファイルをコピーすれば使えるようになる。
ちなみに、ATIのドライバは
ここAMDサポート&ダウンロードから適度にダウンロードする。
で、必要なファイルは
C:\Program Files (x86)\Common Files\ATI Technologies\Multimedia\atimpenc.dllなので、これをコピーする。
(ATI Technologiesフォルダごと C:\Program Files (x86)\Common Filesに入れればいい)ATIなビデオカードが乗っていれば、ドライバのインストールで入る。はず。
入らない場合、『わりとどうでもいいBLOG』さんの『
ドライバ更新するとATI MPEG Video Decoderがインストールされない問題』を参照
次に、
DirectShow Filter Toolを使って、
atimpenc.dll を登録しメリット値の変更をする。
DirectShow Filter Tool をダウンロード&解凍、起動し、
フィルタの選択 から
MPEG-2 Video Decoder を選び
ATI MPEG Video Decoder がなければ
フィルタの登録 から
C:\Program Files (x86)\Common Files\ATI Technologies\Multimedia\
atimpenc.dllを選んで開く
ATI MPEG Video Decoder が出て、メリット値が 0x00200000 になっていたら、
右クリック > メリット値の変更 で それよりも大きい値(0x00300000とか)に変更する
※0x00200000は(MERIT_DO_NOT_USE)らしい
2:CyberLink Video/SP Decoder の導入方法CyberLink Video/SP DecoderはCyberLinkのPowerDVDを入れるとはいるらしい。
体験版でもいいらしいので、
ここからPowerDVDの無料体験版をダウンロードしインストールする。
もし、PowerDVDの体験版が不要でアンインストールしたい場合
必要なファイルは
C:\Program Files (x86)\CyberLink\PowerDVD12\Common\VideoFilter\CLVsd.axなので、
VideoFilterフォルダごとどこかへ保管しておき、PowerDVDをアンインストールしてもOK
そして、1と同様に
DirectShow Filter Toolを使って、
CLVsd.axを登録する。(
1:参照)
3:MPC - MPEG-2 Video Decoder の導入方法MPC - MPEG-2 Video Decoderは
CCCP(The Combined Community Codec Pack)を入れるのが簡単でいいらしい。
なにやら赤い感じですが、ただのしゃれでまったく関係ないもよう。
で、ダウンロードしてインストールし、特に設定もなく使えるようになる。
<<追記>>
2012-12-30にアップデートされたバージョンからは“removed Gabest's MPEG-2 decoder”らしい。cccp-project.net/wiki参照
ので、ソースフォージのMedia Player Classic - Home Cinemaあたりからどうぞ。
適当にお好きなバージョンをダウンロード、解凍したら、好きなディレクトリに保存して、コマンドプロンプトから
C:\Windows\System32>regsvr32 "C:\Program Files (x86)\MPC-HC_standalone_filters.1.6.8.x86\Mpeg2DecFilter.ax"
みたいな感じで、登録すればいけるはず。だめなら、UACがうんたらとか、cmd.exeを管理者権限で実行とか適当にググってくださいな。更に以下のように設定すると、レンダラとの組み合わせ次第で、フレームレートが29.97fpsから59.94fpsに上がるらしい。
TVTestの画面上から
(違う設定をしてない場合)右クリック > フィルタのプロパティ > 映像デコーダで
Set interlaced flag in output media type にチェックを入れる
また、インターレース解除の方法(
Deinterlacing)は、上記のチェックを入れた後は変えられなくなるので、変えるときは一度外してから変える事になる。
OKを押した後、TVTestを再起動すると、fpsが上がっているはず。
確認方法は、
TVTestの画面上から
右クリック > フィルタのプロパティ > 映像レンダラで、
平均フレーム率が 60前後になっていれば有効になっている。
※平均なので数値が変動するがいずれ59.94に収斂する。のかな?。
4:ffdshow Video Decoder の導入方法ffdshow Video Decoderも
CCCP(The Combined Community Codec Pack)で入るらしい。
<<追記>>
2012-12-30にアップデートされたバージョンからは“removed FFDShow-tryouts”らしい。cccp-project.net/wiki参照
ので、ソースフォージのFFDShow-tryouts あたりからどうぞ。インストール後、
スタート > プログラム > Combined Community Codec Pack > FFDShow > FFDShow Video Decoder Configurationを開き、
(TVTestのフィルタのプロパティ>映像デコーダでも同じ)Codecs > MPEG2 の
Decoder が disabled の場合、それ以外に変える。
また、画面にシマシマが出るような場合、
Deinterlacingにチェックを入れることで、ましになるかもしれない。
5:DScaler MPEG Filters の導入方法 <<追記>>DScaler MPEG Filtersは
Free-Codecs.comのこちらからダウンロードできる。
2013/01/26現在でver0.0.8
Updated: 18 Feb 2006とあるので、全然更新されなさそう・・・
こちらは、インストールして再起動しただけで即使える。メリット値の変更等不要。
Windows8+TVTest0.7.23だとTVTestのバグでMicrosoft DTV-DVD Decoderが使えないらしい。
<<追記>>Windows7でもWindowsUpDateをしたらMicrosoft DTV-DVD Video Decoderが使えなくなった。模様TVTestをデバッグしてビルドすれば大丈夫らしいがそんなことをせずに、これを
インストールすればとりあえず見ることが出来る。らしい。(Win8環境を持っていないので)
→TVTestのデバッグの参考:『スカパー!プレミアムサービスをPCで録画』さんの『
Windows8への対応方法』
ちなみに、全部のレンダラとの組み合わせでは試してないがWindows7では、
フィルタのプロパティ>映像デコーダのメニューは開こうとするだけでTVTestが
クラッシュする。
また、
フィルタのプロパティ>映像レンダラでみるとEVRの時は平均フレーム率がほぼ60になっていた。(MPCの所でMPCの設定次第でフレームレートが上がると書いたが、MPC以外でもレンダラ次第で上がるのかも?あまり詳しく調べてないです。標準のMicrosoft DTV-DVD Video Decoder+EVRでもレートは60)
CPU使用率はMicrosoft DTV-DVD Decoderに比べ2~3倍。画質がよくなるといったことは感じられない。
LastUpdate が2006年なことからも、Windows8でTVTestを使おうとするのに、ビルドはしたくない、ATIな環境もないし、PowerDVDの体験版も入れたくない、などなど~という人向けかと・・・
TVTestのヘルプファイルより レンダラについて
ということで、結局のところどれがいいかは、
環境によって違うので、
最適な組み合わせを
見つけるしかない みたい。
正直、すべての組み合わせは試してないけど、どのデコーダも五十歩百歩・・・
レンダラはWindows7なのでやはりEVRかなぁ・・・・
で、結局お前はどれ使ってるのよ?は<<追記>>ビデオカードを交換してみたの最後にまとめました。ちなみに、GPUによる再生支援が効いてるかどうかは、
MSIのAfterburnerを入れると使用率やクロックが見れるので確認できる。
MSIの製品でなくても大丈夫みたい。
自分の場合、それをRainmeterで見てます。→
参考<<追記>>ビデオカードを交換してみた
→参考:『
HTPCのビデオカード 交換 Geforce7300LE から Radeon HD6450』
参考:
『
ドライバ更新するとATI MPEG Video Decoderがインストールされない問題』
『
TVTestでPowerDVDのデコーダーを使う方法 【PowerDVD 12,TVH264】』
『
DirectShow Filter Tool Version 1.7』
『
PT2とTVTestとデコーダとレンダラ』
『
地デジチューナー(KEIAN KTV-FSPCIE/KTV-FSUSB2)』