海外のサイト等で、GDIベースのストップウォッチアプリケーションを使って液晶モニタの遅延時間を測定しているところがありますが、VSYNCと同期していないカウンタの値では画面に表示されている数値が常に最新の値である保証がなく、正確性にかなり疑問があるので、DirectXを使ってVSYNCと同期して動くソフトを作ってみました。
LCDDelayChecker070905.zip
LCDDelayChecker070919.zip (07/09/19更新)
クローンだけでなく水平スパン、垂直スパンにも対応しました。
LCDDelayChecker090120.zip (09/01/20更新)
Vistaでの動作に問題があったので修正。また、Warningの判定を少し緩くしました。
LCDDelayChecker090215.zip (09/02/15更新)
モード3(カラーバー移動)を追加しました。
このソフトを使用して液晶モニタの遅延時間を測定するには、次の物が必要になります。
- DirectX9が使えるPC
- 映像出力が2系統あるビデオカード(分配器の方が望ましい)
- 液晶モニタ
- ブラウン管モニタ
- デジカメ
これら全てが揃っている人は稀だと思いますが、1つでも欠けると意味がありません。
詳しくは添付されているテキストファイルを読んでください。
なお、安定して動作しているときでもfpsの値が僅かに変動すると思いますが、1より小さい値の変動はただの測定誤差なので気にする必要はないです。
warningだけに注意すれば良いんですね。
>解像度も表示
是非お願いします。
Xbox360を接続する人は気を付けた方がいいようです。
分配器を使った測定の方が正確になります。(ただしDVIの分配器は高い)
また、シャッタースピードは1/60秒よりも、もっと速い方が正確に測れます。
ただし、1/60秒よりも速いシャッタースピードで測るには、今のLCD Delay Checkerの表示はあまり向いてないです。
Webカメラを使ってモニタ1台で済む方法も考えたのですが、60fpsで撮影できるWebカメラが思っていたよりも入手が難しいみたいで、これは駄目そうです。
クローンモードでもかなり正確な遅延を測る方法のアイディアはあるのですが、ちょっと測定方法が難しくなるで保留中。
・映像に同期して音を出す
・HDDアクセスランプを光らせる
とかはどうでしょうか?
音の方は完全に比較試験になりそうですが。
液晶は普段DVIで接続しているので、DVIで接続したときの遅延を計測したいのですが、その場合、DVI分配器を購入し、CRT以外はDVIで接続し、CRTは「DVI-D-sub変換コネクタ」を接続すれば良いのでしょうか?
それとも、D-sub分配器を購入し、PCもCRTも液晶も全てD-subで接続して計測しなければ、ならないのでしょうか?
よろしかったら教えてください。