FAQ: What is ASIO and why should I use it?
#1
ASIO stands for Audio Stream Input/Output and is a protocol for low latency audio playback and recording that is built into the drivers of some soundcards. This is the optimal method for precision audio recording and playback with Experiment Builder. When presenting audio in a task running on Windows you have two options for playback: DirectX and ASIO.  

DirectX audio playback works fine for most use cases where the timing of the audio relative to the gaze data is not important (e.g. feedback sounds, verbal task instructions, etc...).  With DirectX audio playback, the audio buffer is handed off to DirectX at the requested time and DirectX will determine the scheduling/playback of the audio.  This can result in latencies for 7-200ms with high variability.  The results in quite a bit of uncertainty about when the audio actually leaves the speakers from the time you requested the audio begin.  Unfortunately this makes precise alignment of when the audio played relative to the gaze data difficult, if not impossible, without external equipment to validate when the audio actually occurred.  However, this playback method is supported on all sound devices. 

ASIO on the other hand will provide millisecond accurate playback and recording with <3ms latencies.  With ASIO protocols Experiment Builder can directly interface with the soundcard and properly schedule the audio playback so the audio leaves the speakers at desired time and facilitates easy and accurate alignment with the gaze data.  Unfortunately, ASIO is not supported on all soundcards and not all ASIO-compatible soundcards can perform optimally at very low latencies.  You can find a list of all the support and verified soundcards in the Experiment Builder Manual (Help Menu -> Installation -> Windows PC Installation -> ASIO Card Installation). This list contains all of the soundcards that we've tested and independently verified to provide accurate timing with Experiment Builder.  There are a number of ASIO cards on the market which are not listed which means they either didn't meet our requirements or we don't have any timing data on those cards.  If you have questions about a particular soundcard, please contact support@sr-research.com and we can discuss whether or not we have any data on that device or how you might independently verify the timing of your own setup.

Its also important to note that there are some pseudo-ASIO drivers that exist, such as ASIO4ALL and variants based off this same principle.  These drivers act as a middle man and mimic the functionality of ASIO to essentially trick software which requires ASIO into recognizing most any device as ASIO compatible. However the timing of these intermediate interfaces is typically very poor and will not provide the low latency playback and recording expected of a true ASIO device.  These drivers should be avoided as you will not get the timing or reliability you expect from true ASIO compatible hardware.
~Best
Dan