How is the bufferSwitch() timed/synced

Audio Stream Input/Output (ASIO) is a protocol allowing communication between a software application and a computer's sound card.
Post Reply
audiomania
Posts: 1
Joined: Thu Sep 12, 2019 9:04 pm

How is the bufferSwitch() timed/synced

Post by audiomania » Sat Sep 14, 2019 9:50 am

Hello,
I want to make my own virtual ASIO device. For this I would like to understand how clocking/syncing for ASIO works.

Is it correct that each ASIO device generates its own bufferSwitch() timing according to the connected hardware?
If so, how are two different ASIO devices synced?
If I connect two cards with ASIO output for instance, they will generate each their own bufferSwitch() calls. Right?
But the applications that wants to output to both these devices, how does it handle that? The buffer filling will shift slowly in time and at some point a buffer will need to be skipped or repeated.

Post Reply