Helpful ReplyUsing two ASIO Devices in Windows 10

Author
SEVerstraten
Max Output Level: -87 dBFS
  • Total Posts : 167
  • Joined: 2011/11/22 03:16:49
  • Location: Vechta, Germany
  • Status: offline
2018/10/25 12:26:42 (permalink)

Using two ASIO Devices in Windows 10

Here's something fun I discovered by accident: You can have 2 ASIO devices run in parallel in Win10, just not in the same program.
I had my IKMultimedia StompIO (the original one) hooked up using it's internal audio interface. Playing in Amplitube. Then started CBB and it loaded default with my OctaCapture. Then I took a cable from the one device and the other and was able to record and play  without issue. 
 
Not sure if it has any advantages, but it was an interesting thing to discover.


Sonar Platinum Lifetime
Win 10 x64 , Intel i7 2670QM, 8GB DDR3
Roland OCTA-CAPTURE, 
IK-Multimedia STOMP-IO,
KRK G5,
PCR500 
#1
azslow3
Max Output Level: -42.5 dBFS
  • Total Posts : 3285
  • Joined: 2012/06/22 19:27:51
  • Location: Germany
  • Status: offline
Re: Using two ASIO Devices in Windows 10 2018/10/26 20:17:53 (permalink)
Using several devices in parallel with several programs was never a problem, independent from programs and devices.
 
Using several devices under ASIO with one program is not possible by ASIO API. In fact that is technically possible, but that is looking for troubles till these devices are physically synchronized.
 
Using one device by several programs in parallel is where concrete devices rock or fail. On the one end are "single ASIO user" devices, in the middle are "one ASIO + windows sounds" and at the top are "several ASIO + other drivers".

Sonar 8LE -> Platinum infinity, REAPER, Windows 10 pro
GA-EP35-DS3L, E7500, 4GB, GTX 1050 Ti, 2x500GB
RME Babyface Pro (M-Audio Audiophile Firewire/410, VS-20), Kawai CN43, TD-11, Roland A500S, Akai MPK Mini, Keystation Pro, etc.
www.azslow.com - Control Surface Integration Platform for SONAR, ReaCWP, AOSC and other accessibility tools
#2
msmcleod
Max Output Level: -73 dBFS
  • Total Posts : 892
  • Joined: 2004/01/27 07:15:30
  • Location: Scotland
  • Status: offline
Re: Using two ASIO Devices in Windows 10 2018/10/26 21:20:16 (permalink)
azslow3
Using several devices under ASIO with one program is not possible by ASIO API. In fact that is technically possible, but that is looking for troubles till these devices are physically synchronized.


At some point, I think someone wrote an ASIO wrapper to do this but AFAIK the guy who wrote it sadly passed away, and the website has gone. I guess ASIO4ALL kind of does this, but it wraps up the WDM drivers rather than just hosting the actual ASIO drivers and marshalling the calls/data.
 
I was thinking about looking into writing a wrapper myself, even if it was hard-coded to only work with the ASIO devices I'm currently using.
 
All of my devices are currently word-clock synced via the BNC word-clock input, so assuming that they also need to have an identical buffer size, can you see any reason why this wouldn't work?
 
 

Mark McLeod
Cakewalk by BL | ASUS P8B75-V, Intel I5 3570 16GB RAM Win 10 64 + Win 7 64/32 SSD HD's, Scarlett 18i20 / 6i6 | ASUS ROG GL552VW 16GB RAM Win 10 64 SSD HD's, Scarlett 2i2 | Behringer Truth B2030A / Edirol MA-5A | Mackie MCU + C4 + XT | 2 x BCF2000, Korg NanoKontrol Studio
#3
tlw
Max Output Level: -49.5 dBFS
  • Total Posts : 2567
  • Joined: 2008/10/11 22:06:32
  • Location: West Midlands, UK
  • Status: offline
Re: Using two ASIO Devices in Windows 10 2018/10/27 21:06:19 (permalink)
One issue might be that the devices could have different inbuilt buffering/processing delays which would translate into differing effective latencies. The effects of which could range from needing to nudge the recorded audio from some around a little to get it where it should be to chaos. I guess the only way to find out if that’s a problem is to try it and see.

Adding in a wrapper might add some extra latency as well.

If the devices - I’m assuming they’re audio interfaces - have ADAT connections, linking them via ADAT might be a way to go.

If they’re RME or one of the other manufacturers who write ASIO drivers which allow more than one of their imterfaces to work at the same time then that would be the preferred way to go.

Sonar Platinum 64bit, Windows 8.1 Pro 64bit, I7 3770K Ivybridge, 16GB Ram, Gigabyte Z77-D3H m/board,
ATI 7750 graphics+ 1GB RAM, 2xIntel 520 series 220GB SSDs, 1 TB Samsung F3 + 1 TB WD HDDs, Seasonic fanless 460W psu, RME Fireface UFX, Focusrite Octopre.
Assorted real synths, guitars, mandolins, diatonic accordions, percussion, fx and other stuff.
#4
azslow3
Max Output Level: -42.5 dBFS
  • Total Posts : 3285
  • Joined: 2012/06/22 19:27:51
  • Location: Germany
  • Status: offline
Re: Using two ASIO Devices in Windows 10 2018/10/28 08:07:51 (permalink)
msmcleod
All of my devices are currently word-clock synced via the BNC word-clock input, so assuming that they also need to have an identical buffer size, can you see any reason why this wouldn't work?

tlw
Adding in a wrapper might add some extra latency as well.

I think the solution unavoidably add extra latency. One buffer at least. Even when devices are synced on sample level, so there is no drift in regularity of buffers exchange, the request to do so will come at different time from different real ASIO driver.
Theoretically ASIO4ALL based on ASIO end points can perform better then current. But how big this improvement can be is a good question.




Sonar 8LE -> Platinum infinity, REAPER, Windows 10 pro
GA-EP35-DS3L, E7500, 4GB, GTX 1050 Ti, 2x500GB
RME Babyface Pro (M-Audio Audiophile Firewire/410, VS-20), Kawai CN43, TD-11, Roland A500S, Akai MPK Mini, Keystation Pro, etc.
www.azslow.com - Control Surface Integration Platform for SONAR, ReaCWP, AOSC and other accessibility tools
#5
msmcleod
Max Output Level: -73 dBFS
  • Total Posts : 892
  • Joined: 2004/01/27 07:15:30
  • Location: Scotland
  • Status: offline
Re: Using two ASIO Devices in Windows 10 2018/10/28 09:24:03 (permalink)
azslow3
msmcleod
All of my devices are currently word-clock synced via the BNC word-clock input, so assuming that they also need to have an identical buffer size, can you see any reason why this wouldn't work?

tlw
Adding in a wrapper might add some extra latency as well.

I think the solution unavoidably add extra latency. One buffer at least. Even when devices are synced on sample level, so there is no drift in regularity of buffers exchange, the request to do so will come at different time from different real ASIO driver.
Theoretically ASIO4ALL based on ASIO end points can perform better then current. But how big this improvement can be is a good question.



It did occur to me after writing my post that the overall round-trip could be different between ASIO devices. At the very least, I'd have to report the slowest round-trip and work out the best way to delay the faster one... but this might well involve using another buffer, further increasing latency... which would be a "deal breaker" for me.
 
tlw
If the devices - I’m assuming they’re audio interfaces - have ADAT connections, linking them via ADAT might be a way to go.

If they’re RME or one of the other manufacturers who write ASIO drivers which allow more than one of their imterfaces to work at the same time then that would be the preferred way to go.



This is basically what I'm doing at the moment. I've got a Focusrite Scarlett 18i20 which unfortunately has only one ADAT input / output.
 
My mLAN setup is effectively separate: a Yamaha 01X with 2 x i88x, connected to an old laptop running Vista (which basically acts as a patch bay GUI). One of the i88x's is connected via ADAT input to the Focusrite, the other i88x to the ADAT output, with a Behringer ADA8000 connected to the 2nd i88x's ADAT input. The 01x is used as 
an additional "Mackie" controller, which I use for controlling busses.
 
This works pretty well, as it gives me a crazy amount of inputs. However, it does limit me to recording only 8 tracks of the mLAN setup at once.
 
The idea was to try to get mLAN working on my main studio PC rather than the laptop (quite a few people have got this working, but I'm not sure how stable this is). This would give me 32 inputs/outputs mLAN via ASIO, with the 18 / 20 focusrite inputs & outputs on top.
 
In saying that, maybe it's not such a big deal.
 
If I really do need to record more than 8 tracks (which to be honest, is very rare), I've got a few choices:
 
1. Switch to WDM giving me both devices for recording my first lot of tracks; or
2. Switch to mLAN ASIO giving me the 32 inputs / outputs, although I'm not sure what the latency would be for the mLAN drivers.
3. Use Sonar 8.5 or X1 on the laptop or a separate boot on the PC, and use that for tracking.
 
 
The more I think about it, I'll probably live with my current setup.
 
The main reason for introducing the mLAN setup was to avoid having to constantly "rewire" everything when using different outboard pre-amps, so I can have everything setup, and use the mLAN patchbay GUI to re-route things as required.
 
 

Mark McLeod
Cakewalk by BL | ASUS P8B75-V, Intel I5 3570 16GB RAM Win 10 64 + Win 7 64/32 SSD HD's, Scarlett 18i20 / 6i6 | ASUS ROG GL552VW 16GB RAM Win 10 64 SSD HD's, Scarlett 2i2 | Behringer Truth B2030A / Edirol MA-5A | Mackie MCU + C4 + XT | 2 x BCF2000, Korg NanoKontrol Studio
#6
Jim Roseberry
Max Output Level: 0 dBFS
  • Total Posts : 9863
  • Joined: 2004/03/23 11:34:51
  • Location: Ohio
  • Status: offline
Re: Using two ASIO Devices in Windows 10 2018/10/29 16:17:14 (permalink) ☄ Helpfulby eikelbijter 2018/10/29 21:11:33
FWIW, Trying to use two different ASIO audio interfaces simultaneously (via creating a software-based "aggregate device") is almost begging for problems.
 
The most obvious reason, record-latency.  Even if the audio interfaces are word-clock sync'd...
The odds of both audio interfaces having the exact same record-latency (in samples) is minute.
That means your audio tracks (across audio interfaces) would be slightly out of sync (phase issues/etc).
 
Many ASIO drivers don't report the exact record-latency correctly.
This is why Sonar/CbB (and most other DAWs) have a Record-Latency-Adjustment parameter.
If you're dealing with two different record-latency figures, the only way to resolve that would be to manually correct for one interface (sliding all audio recorded by it) after recording.  That can get extremely tedious.
 
If you need more I/O, get a proper setup where you can add additional I/O units.
In this case, all units function together as a single audio interface... running under a single ASIO driver.
That solves all sync/alignment issues.
 
 
 

Best Regards,

Jim Roseberry
jim@studiocat.com
www.studiocat.com
#7
msmcleod
Max Output Level: -73 dBFS
  • Total Posts : 892
  • Joined: 2004/01/27 07:15:30
  • Location: Scotland
  • Status: offline
Re: Using two ASIO Devices in Windows 10 2018/11/07 00:50:05 (permalink)
I managed to get MLAN working on Windows 10 64 bit, and it seems pretty stable so far.
 
My first attempt didn't work due to an incompatible firewire card, but getting a Belkin F5U502ea (£10 off eBay) solved this.
 
I can now record up to 32 simultaneous channels using the MLAN ASIO device. The ASIO buffer size works fine at 64, so latency is low.
 
As both the Focusrite ADAT IN and OUT is connected to the MLAN network via the i88x, so I can also use the Focusrite as an input device by routing its inputs through ADAT.... or I can go back to using the Focusrite ASIO and do it the other way around. The best thing is, I don't need to change cables at all. I can do all the patching through Focusrite Mix Control & the Yamaha MLAN Graphic Patchbay.
 
The 01X midi ports also work, so I can now also use the 01X as an additional Mackie controller over MLAN without having to route the ports through the i88x and use up yet another hardware MIDI port.
 
If anyone wants to bring their 01X or i88X back to life in Windows 10, you can get the drivers here:
http://happyharry.net/yamaha/01x/help/mLan_on_Win_10_x64_V.3.zip . Follow the recommendation of imaging your hard drive first though, as you'll want to restore the image if anything goes bad (I had to do this with my old firewire card).
 
As far as swapping between my Focusrite ASIO & MLAN ASIO devices, this is pretty easy too.
 
I've got two copies (one set for Focusrite, the other for MLAN) of:
  • AUD.INI
  • TTSSEQ.INI
  • Cakewalk.ini
  • ctrlsurface.dat 
All I need to do is copy the right ones to %APPDATA%\Cakewalk\Cakewalk Core\ and I can switch between them.
 

Mark McLeod
Cakewalk by BL | ASUS P8B75-V, Intel I5 3570 16GB RAM Win 10 64 + Win 7 64/32 SSD HD's, Scarlett 18i20 / 6i6 | ASUS ROG GL552VW 16GB RAM Win 10 64 SSD HD's, Scarlett 2i2 | Behringer Truth B2030A / Edirol MA-5A | Mackie MCU + C4 + XT | 2 x BCF2000, Korg NanoKontrol Studio
#8
Jump to:
© 2018 APG vNext Commercial Version 5.1