2009年02月15日

LCD Delay Checkerに新しいモードを追加

フレーム単位よりも更に細かく、走査線の位置まで確認したいという要望があったので、LCD Delay Checkerに縦方向のカラーバーが横に移動していく、モード3を追加しました。

モード3では、画面の上から下までカバーするカラーバーが毎フレーム新しく描かれるので、写真に写った一番新しいバーの長さで走査線の位置まで分かるかもしれない…という期待をしています。

元々そこまで精度の高い測定法ではないので、そんなに細かく調べることに意味があるのかは微妙ですが。

ところで、LCD Delay Checkerの測定結果に関して、少し補足しておきます。

シャッター速度を1/60秒にしてCRTを撮影すると、黒い線が写ると思います。走査線は1/60秒で画面全体をカバーしているのではなく、一番下まで行った走査線が上に戻るまでの猶予の時間がブランク期間として用意されているので、きっちり1/60秒の露光だとその時間分だけ黒い帯として写ってしまいます。

シャッターを切るタイミングによって黒帯の位置が変わりますが、次の2つの状態では表示が同じでも意味がだいぶ異なっています。

ldc01 ldc02

どちらも表示は787ですが、黒帯が上にある方は既に788フレーム目の描画が始まっており、これは788フレーム目の写真とも言えます。より正確に言えば、787.3フレームといったところでしょうか。

それに対して黒帯が下にある方は、787フレーム目の表示が半分終わったところで、下半分はまだ786の映像です。実質的に786.6フレームですね。

どちらも表示されている数値は同じですが、時間的には1フレーム近い差があります。より正確なデータを集めるには、この黒帯の位置も揃える必要があります。しかし、シャッター速度を設定できるカメラを持っている人は少ないと思うので、このくらいは測定誤差として無視するのが現実的でしょうか。

タグ:液晶モニタ
2009年02月15日 【雑記】 | コメント(18) |

この記事へのトラックバック
この記事へのコメント

どうもです。
>そんなに細かく調べることに意味があるのかは微妙
確かにw
でも、遥かに少ない枚数で真の値に近づけるメリットは大きいと思いますよ。
私の見立てでは、モード1やモード2で20枚撮って出した平均のバラつき具合と、モード3で3枚撮って出した平均のバラつき具合がほぼ同等です。

(左側の図の針の位置が間違ってます)
Posted by ホッシー at 2009年02月18日

図は説明のために黒線いれただけで同じ画像なのでw
でも、この説明なら左のは1つ進めておいた方がよかったか。

今のモード3のカラーバーは単色で、うっすらと写っている部分で、どこまでが変化しているのかの判断が微妙なので、模様か文字でも入れようと思います。
Posted by 新坂 at 2009年02月18日

そういえば、更新履歴には書いてないけど、背景が5秒ごとに青と緑に変わる機能は削除しました。

この色が変わる瞬間を300fpsで撮影した写真とかあって面白かったから、何らかの形で残しておけばよかったかな?
Posted by 新坂 at 2009年02月18日

>模様か文字でも入れようと思います。
期待してます^^

>何らかの形で残しておけばよかったかな?
目視で確認出来るという目的でも復活して欲しいです。

質問があります。
モード2使用時ごくごく稀に、あり得ない値、例えば1フレか2フレしか出ない筈なのに、
0フレや、3フレがでることがありました。

1.これはソフトが時々1/60秒の間に2フレ進んだ画像を出力したり、処理落ちして進めなかったりすることがある
2.そうした場合でもVSYNCと同期していればWarningは表示しない
3.fps表示は、コンマ何秒か前の平均値なので、これが60±1だったとしても前述の様な写真が出うる。

という認識で宜しいでしょうか?

もしそうならば、モード3で平均をとるときに、最大値と最小値を排除すればいいのかなと思いまして。
体操とかフィギアスケートみたく。
Posted by ホッシー at 2009年02月19日

fpsはモードに関係なく同じ計算で求めているので、更新されるのは数秒に1回ですね。
毎秒60回数字が変化しても読めないので。
ただ、モード2ではそういう心配も必要ないので、毎フレーム更新の方がいいかもしれませんね。

Warningの処理は今は結構いい加減なところがあるので、あまり信用できないです。モード2で時間の変化の履歴を見ると、想像以上にバラ付きがありますね。
DirectXでは現在の走査線の位置(VGAから出力している信号の位置)をリアルタイムで取得することも可能なので、それを利用すればもっと厳密に判定ができるかもしれません。

次の更新時に、その辺にも手を入れてみます。
Posted by 新坂 at 2009年02月19日

説明の画像差し替えました。
Posted by 新坂 at 2009年02月19日

どうもです。細かいつっこみに手を煩わせてすんません。

モード3のWarningの文字の表示なんですが、縦に画面の上から下まで表示した方がいいと思うのです。
と言うのは、このモードの場合、シャッタースピードは1/60以下でもよく、その方が液晶の走査線を捕らえやすい。
しかし、そうするとブラウン管の黒い部分が大きくなり、Warningが見えない可能性が高くなる。
画面の上から下まで何らかの形でWarningが判れば、どのタイミングでも写真に写ると思うのですがいかがでしょうか?

それと某所プラズマスレでWarningが消えないという報告がありました。
Posted by ホッシー at 2009年03月03日

なるほど。Warningも何か考えてみますね。
3月いっぱいはちょっと忙しいので、気長に待ってください。
Posted by 新坂 at 2009年03月03日

モード3をもっとシンプルに作ってみた方がいました。
http://www.pp.iij4u.or.jp/~ayoshida/vsync/vsync.html
解説も詳しいです。

VAIOのカメラの特性が面白いですね。
普通のデジカメのように1フレームまるごと撮影するのではなく、ラインごとに時分割で撮影してるみたいです。
この方式だと1ライン撮影するときのシャッタースピードはかなり速いはずなので、うまく使えば色々できそうです。

逆にこの特性を理解していないと、こういう検証系は厳しいですね。
Posted by 新坂 at 2009年03月07日

同じ様な事を考える人が居るんだな・・・と思ったら、「モード3の簡易版」なんですね^^;
PC内臓カメラの仕組みはよく知りませんが、この写真では露光時間が1/12秒位で、
画素を記録するのにカメラの上下で時間差があるということでしょうか。

デジタル一眼でも、写真の上下には時間差はあります。僕ので250〜300分の1秒位です。たぶん。
実際の撮影でディスプレイを左右に並べた場合、画面上の時間差は更に小さくなると思い、
誤差の範囲として無視していました。

PC内臓カメラは写真から察するに画面上で約0.4フレの時間差がある様です。
もしかしたら写真の上〜下までで1/60秒程ずれているのかもしれません。
ここまで大きいと無視できないので逆さに撮るのは有効なようです。

ただ、写真を多く撮らないといけない様なので、ハードルはかなり高くなるでしょうね。
Posted by ホッシー at 2009年03月11日

でもよくよく考えてみたら切れた長方形が先頭に2個写らなくても、
実際より少なく見える時と、実際より多く見える時の2種類しかないので、
そんなに沢山写真を撮らなくてもいいような気がします。
(ただし共に60Hzの場合で、オーバースキャンやブランクは無視)

それとこの説明だと遅延+黒→白の応答速度になっているので、
純粋な遅延は液晶の白くなり始めだと思うのですがいかがでしょう。
Posted by ホッシー at 2009年03月12日

そういえば、一眼レフの場合はシャッター幕がスライドするので、その分の時間差が存在しますね。
でも300分の1秒どころではないのでは?
露光している時間がシャッターが開いている間だけだから、シャッター幕が動く速度以上の時間差は有りえないですよね。

白くなり始め〜完全に変化し終わったところの、どこで遅延を計るのかっていうのは、難しい問題だと思います。
純粋な電気的な遅延は白くなり始めの時点ですが、視覚的にはある程度変化しないと知覚できませんから、ここまで細かく時間を測り出すと応答速度も遅延の一部とみなす必要があるかもしれません。

それ以前に、ビデオカードのクローン表示に遅延がないのかという問題もありますし。(VAIOの人は同じ出力を分配してるのでこの点はクリア)
Posted by 新坂 at 2009年03月13日

モード3に関しては、今のところ↑のソフトをパクって白と黒だけにして、Warningのときはバーを赤くするって感じのを考えています。

実は白黒というのは、カメラで写しやすいので考えていたのですが、光過敏性発作への影響を考えて避けてました。
いわゆるポケモンショックってやつですね。

でも、この映像は画面全体で平均すれば光量が常に一定だから、きっと大丈夫でしょう。
Posted by 新坂 at 2009年03月13日

そうです。そのシャッター幕の動く速度が約1/300秒って事です。
カメラを縦に構えてCRTを撮影して調べました。

遅延と応答速度の区別は難しいですね。僕が変化し始めで計測すべきとしたのは、

 モード1、モード2は1/60秒で撮影するべきである。
 その場合、たとえ応答速度が0の液晶を撮影しても針や文字が、中間的な輝度になる可能性が高い。
 もしもモード3を1/60秒で撮影すると棒1本分グラデーションになってしまう。

 つまり遅延を完全に色が変化し終わるまでとすると、応答速度が0の液晶でも、
 露光時間分液晶の遅延が長く計測されてしまう。

なのでとりあえず、知覚うんぬんはおいておいて、純粋な電気的遅延に近い「輝度変化の始めを計測すべき」という考えです。

最近の液晶モニターは最速のもので応答速度が2msecという話も聞きます。
写真上のグラデーションの部分は露光時間が主因だと思うのです。

ビデオカードのクローン表示に遅延がないのか?
これまたやっかいな問題ですね。
ノートからだしたSテレビとDsubモニターがほぼ同じという検証結果もありますが、あくまで一例ですしねぇ。
逆にノートPCを仲介したやりかたなら、クローンに遅延があっても打ち消しあうので、同じ接続なら問題ないですね。

新しいモード3、期待してます。^^

そういえばこのモード3簡易版の液晶はアナログなのに1フレ以下なんですね。
CRTに遅延があるのか、液晶の画面書き換え速度が凄く速いのか、
1フレ待たずに数ラインのバッファでスケーリングしているのか???
Posted by ホッシー at 2009年03月13日

よく見ると、あの写真おかしいですね。
バーが消えていく右側では、1フレームの遅延があるように見えます。

しかし、このLL-151Dというモニタについて調べてみたけど、随分とマニアックな代物だなぁw
Posted by 新坂 at 2009年03月14日

消えていく側が1フレ遅れているのは、液晶はホールド型なので写真に写るけど、
CRTは走査している所しか写らないので、あってると思います。
Posted by ホッシー at 2009年03月15日

試しにノートPC単体で起動したんですが、Warningが消えません。
外部出力させないと出るものなんでしょうか?

Windows XP Professional
Pentium M 2.0GHz
2GB Mem
Radeon Xpress 200M
です
Posted by えびまよ at 2009年06月21日

現状ではWarningの判定が結構いい加減です。
もっと厳密なタイミングで判定するように改良中でしたが、クローンモードでは遅延測定に誤差があることが分かって保留中です。
Posted by 新坂 at 2009年06月24日