InitializePsychSound

InitializePsychSound([reallyneedlowlatency=0])

InitializePsychSound を呼び出すことによって、PsychPortAudio サウンドドライバによる、高精度、素早い再生(low-latency)、マルチチャンネルの再生・録音を可能にします。

実験プログラムの最初のほうで呼び出して下さい。

また、素早い再生にこだわるのであれば'reallyneedlowlatency' を1とします。

つまり、

InitializePsychSound(1)

としてください。

Mac OS や Linux では、 PsychPortAudio はちゃんと機能(素早い再生、正確な時間制御)するはずです。

ただし、windowsでは、ちょっと複雑な設定が必要です。

windowsのデフォルトでは、 PsychPortAudio は"portaudio_x86.dll"を使います。

このDLLは(Psychtoolbox/PsychSound/)のなかにあって、Windows MME (MultiMediaExtensions)とDirectSoundをサポートします。

いくつかのシステムではバグがあり、また時間制御や素早い再生という点でも難があります。(だいたい30 ms ぐらいかかります)

私たちは、150$ 程度のサウンドドライバーを使って、オンセットの標準偏差を1 ms 程度に抑えることに成功しました。これなら多くの実験では問題ないでしょう。

実験用のパソコンがwindows で、音(聴覚)刺激を素早く呈示したり、高精度の時間で呈示したい場合には、ASIOに対応したサウンドカード(150$ 程度)を別途購入してください。

(訳注 ASIOについてはAllAboutのサイトに分かりやすい説明があります)

Disclaimer: "ASIO is a trademark and software of Steinberg Media Technologies GmbH."

ASIOドライバーが利用できないときは、フリーのASIO4ALL ドライバー(http://asio4all.com)を利用する方法もあります。ただし、きちんと動作をするかどうかは不明です。

ASIO4ALLドライバーは、MicrosoftのWDM-KS (Windows Driver Model Kernel Streaming) API に基づいてASIOをエミュレートします。なのでドライバーの性能はWDMドライバーに依存します。

ASIOを利用できる環境が整ったら、ASIOに対応した "portaudio_x86.dll"を次の手順で手に入れる必要があります。

1. Go to the PsychPortAudio section of the Psychtoolbox Wiki to download

a zip file with a copy of the ASIO enabled driver:

http://psychtoolbox.org/wikka.php?wakka=PsychPortAudio

2. When you have the driver, copy it into your Psychtoolbox root folder -

the top level folder named "Psychtoolbox". Also make sure to read the

README.txt file very carefully that comes bundled with the driver.

3. Restart Matlab.

4. Run this function, it'll tell you if ASIO is supported.

すべての手順が滞りなく完了したら、レイテンシーは5ms 程度に改善され、オンセットの精度は標準偏差が0.1 ms 以内になっているはずです。

私たちの測定結果では、the M-Audio Delta 1010-LT サウンドカードを利用しているパソコン(Windows-XP SP2)で、標準偏差は20μs程度でした。