PsychPortAudioTimingTest

PsychPortAudioTimingTest([exactstart=1] [, deviceid=-1] [, latbias=0] [, waitframes=1] [,useDPixx=0])

PsychPortAudio ドライバーを使用したときの、音(聴覚刺激)のオンセット(再生)の信頼性と、再生するまでにかかる時間(onset latency)を検証するためのプログラムです。

このプログラムは、low latency と high timing precision モードで動作しており、ビープ音と同時に画面が黒白反転します。それを10回繰り返します。

このプログラムで視聴覚刺激の呈示状況を確認するには、フォトダイオード(光に反応する電子素子で、これでCRTの変化を検出します)と、音を検出するマイクロフォンそしてオシロスコープが必要です。

(訳注 マイクロフォンの代わりにBNCプラグ →ステレオミニプラグを使ってオシロスコープに接続してもよいかと思います。私たちの研究室ではOWON PDS 6062T を使用しています。Horizontal scale (s/div) を大きくすると、リアルタイムで視聴覚刺激のオンセットを確認することが可能です。またそのときの波形を一時的に保存することも可能です)

いくつかのパラメーターは微調整が必要です。特にWindowsをご利用の場合は注意が必要です。詳細はInitializePsychSound をご覧ください。

パラメーターの説明

'exactstart' = 0 -- 関数を呼び出すと同時に音刺激を呈示します。純粋にlatency を測りたいときに使用します。

= 1 -- 指定した時間(ここでは画面が白くなるタイミング)に音刺激が呈示されるかどうか、その精度を測定します。(デフォルト)

'deviceid' = -1 -- 自動的にオーディオデバイスを選択します。(デフォルト)

>=0 -- 自分でオーディオデバイスを選択するとき。PsychPortAudio('GetDevices') を使ってデバイスのリストを取得する必要があります。

'latbias' = ハードウェアに固有のlatencyの偏り。事前にオシロスコープなどでlatencyを測定できていれば、その値を指定することで補正をすることが可能です。単位は秒。デフォルトはゼロ。

'waitframes' = 視聴覚刺激を呈示するまでに、どれぐらいのフレーム(リフレッシュレートに基づいた)を待つか。デフォルトは1。サウンドカードの性能がいまいちで、latencyが高いときは、1以上の値を指定する必要があります。(ですが、そのようなハードウェアは実験上は好ましくないかもしれません)

'useDPixx' = 1 -- (訳注 DataPixxというのがあるらしいのですが、私はよく知りません) DataPixxデバイスを使うときは1に。自動で視聴覚刺激のオンセットを測定することができます。

= 0 -- DataPixxを使わない。(デフォルト)