|
I have code for full-duplex audio with ASIO and
OSX CoreAudio. I have tested it with CoreAudio,
with ksmps=441 and the old code without
intermediate buffering, and it works, I could get
audio in and out of csound5. I suppose it will
work on ASIO as well, but I can't test it at the
moment.
I have implemented it to work if the user asks for
the same portaudio device for IO, which is the case
when we have ASIO or CoreAudio devices.
so if you say
-odac1 -iadc1
the full duplex code will be invoked.
The only exception is for default devices; then
each device is opened separately. If you only
have coreaudio or ASIO devices, then using the
default devices will fail.
Basically, the main difference is that for this to work,
the device is only opened once, full-duplex, and
so I wrote a new device-open function and a
callback for this (only one callback is used), based
on Michael Gogins code; John's improved OSX
code can be fitted into it, I suppose.
Unfortunately, the new code is on my laptop and I
can't connect it to a network, so I'll have to wait
until next week when I'm back in Ireland before
I can send it in (and test it with ASIO).
This should finally fix ASIO audio on csound
completely. The code should also work on OSX
ASIO.
all the best and good new year,
Victor
|