Jump to content
Rickddd

Automatic Switching of ASIO Buffer Size Possible?

Recommended Posts

When I am recording in Cakewalk, I shut off all the effects and I turn down the ASIO buffer size. I can get it down to 2MS. When I want to play things back with all effects on, I go into preferences and set the ASIO buffer size to some higher number - anywhere from 20-40MS or even more.

I do this manually, and as you might guess, I end up doing it a million times a day if I am recording and listening and building and going back and forth. Is there any way that I can have one ASIO buffer automatically when effects are off and one on when they are on? 

I'm guessing no. Although I love Cakewalk, I have just passed my 1 millionth time having to do this manually.

  • Great Idea 1

Share this post


Link to post
Share on other sites

It is possible to set the ASIO buffer size for some audio interfaces. Typically you will see the latency slider in preferences for those cases.
However we don't allow setting the buffer size automatically today. You can log a feature request to have a latency presets picker.

  • Like 1
  • Great Idea 2

Share this post


Link to post
Share on other sites

I leave mine at 256 24/7. Everything works and has for a long time for me. The only case I would ever lower this is to use a Guitar Sim. 

Share this post


Link to post
Share on other sites
Posted (edited)

I'm not sure I communicated well what the issue was,  and why a static setting is not the best choice, for me.

Hopefully in this post you see a graphic that I created for it. This is in CW prefs. Shutting off effects allows me to set the ASIO buffers to an incredibly fast setting of 2 MS. This makes it a pleasure to precisely record midi stuff - be it drums or piano or whatever.  No delays. No manual fixing needed.

But when I want to work with the effects on, I must increase buffer size. The amount depends on how many live effects I have. Often, I try to freeze tracks as much as possible but that's not always convenient. In the graphic, you see where I set it to 60MS.  This works fine for playback, but recording introduces significant delays in the midi not recording. So I do not use it for recording.

And so if I am recording, editing etc and if I want plug ins enabled for playback, I must constantly go back and forth on the ASIO setting.  

If there was a way to set an ASIO buffer override setting for all effects off and/or recording, that would work.

Like I said, I work around this, but it's just tedious after the millionth time.  It's not a Bandlab caused issue, been like this at least from Sonar 1 which is when I started with Cake.
 

asio.jpg

Edited by Rickddd

Share this post


Link to post
Share on other sites

One problem as @Noel Borthwick noted above is not all ASIO drivers respond to buffer change requests from the DAW.

In fact, you are using is one of the those drivers.

This is why the buffer size slider is disabled in the images you posted.

So even if the feature was added, your current setup would not benefit from the change.

The best solution for now is scripting. Using Autohotkey or similar should be able to automate the process of changing buffer size.

  • Like 1

Share this post


Link to post
Share on other sites

I just noticed that I can change the buffer size for the Presonus iTwo from Preferences/Audio/Driver Settings. If I open Universal Control, I can watch it change after I move the slider and hit Apply.  Saves a lot of steps when I switch back and forth. I swear the slider was grayed out before but there it is.

  • Like 1

Share this post


Link to post
Share on other sites
2 hours ago, Rickddd said:

Like I said, I work around this, but it's just tedious after the millionth time.  It's not a Bandlab caused issue, been like this at least from Sonar 1 which is when I started with Cake.

This is not a Cakewalk specific issue. Many drivers can only have the buffer size set through their control panel. Yours is likely the same because our slider is grayed out, so even if we implemented saving and restoring the value it may not work.

  • Like 1

Share this post


Link to post
Share on other sites
Posted (edited)
9 hours ago, scook said:

One problem as @Noel Borthwick noted above is not all ASIO drivers respond to buffer change requests from the DAW.

In fact, you are using is one of the those drivers.

This is why the buffer size slider is disabled in the images you posted.

So even if the feature was added, your current setup would not benefit from the change.

The best solution for now is scripting. Using Autohotkey or similar should be able to automate the process of changing buffer size.

>>> Although I can understand why one might come to the conclusion you did, I simply click on the ASIO button, and select the MS that I want to try.  See image below. So, for recording, I set 2ms and effects off, and for playback if I want live plug ins I set some higher number. The example below shows 60.

Note that my audio card has ASIO, and is PCI based. So it doesn't have to deal with USB connections, hence it can be super fast. 

I've been switching back and forth since Sonar 1, so I obviously can live with it. I just thought... wow it would be nice if.... 

PS: did want to mention that the program 100% of the time remembers my latency (hence, buffer) settings, no matter if I shut down the program or not. That part works beautifully, as does the super fast midi recording because of the 2MS latency. Love it.

He Scook - great idea on the Autohotkey. I forgot about keyboard automation. For years I used something called macro express in my programming life. I will ressurect that and see what I can do. Thanks!

 

asio2.jpg

Edited by Rickddd

Share this post


Link to post
Share on other sites

Yes, the ASIO Panel button has been part of the DAW for decades before it became CbB.

Prior to CbB 2019.11, it was the only way to access manufacturer supplied ASIO configuration tools from inside the DAW.

Starting with CbB 2019.11, the Buffer Size slider above the ASIO Panel button allows users to change buffer size without opening the manufacture's software, for drivers supporting the feature.

In your case, this slider is disabled.

This is why @Noel Borthwick and I wrote that implementing the feature request likely would not benefit your current setup. 

The method of connecting the audio interface to the PC does not matter. The driver's ability to accept buffer size requests from the DAW matters and it appears the Creative Driver lacks this function.

 

Opening preferences, launching the ASIO tool and changing buffer sizes is well within AHK's capabilities though.

 

 

  • Like 1

Share this post


Link to post
Share on other sites
Posted (edited)

Autokey sounds like a good idea..but ive downloaded and installed it 

and find it way above my skill set.

isnt there another program where it just records the clicks i have to make

to reach a certain goal then assign it to a key of my choice

kind of like WSYWIG??

Thanks

Edited by Bassfaceus

Share this post


Link to post
Share on other sites
On 7/17/2021 at 5:43 PM, Rickddd said:

I'm not sure I communicated well what the issue was,  and why a static setting is not the best choice, for me.

Hopefully in this post you see a graphic that I created for it. This is in CW prefs. Shutting off effects allows me to set the ASIO buffers to an incredibly fast setting of 2 MS. This makes it a pleasure to precisely record midi stuff - be it drums or piano or whatever.  No delays. No manual fixing needed.

 

On 7/18/2021 at 3:12 AM, Rickddd said:

Note that my audio card has ASIO, and is PCI based. So it doesn't have to deal with USB connections, hence it can be super fast. 

I've been switching back and forth since Sonar 1, so I obviously can live with it. I just thought... wow it would be nice if....

I think the first comment from John Vere, with fixed settings, is a good target to consider. If you don't play guitar softamps, especially in case you record MIDI only, you don't need top audio specialized PC nor top interface. Still, you need:

  • relatively modern not "office" computer (if Intel, some i5 or better)
  • moderately optimize it for audio (bring system latency down, no more then 1-2ms)
  • use audio interface with stable drivers and decent latency.

The last needs clarification (based on your comments). You need something under 10ms total latency, better  under 6ms with the best settings, so you can used relaxed  "fixed settings" and still be under or around 10ms. The interface does not have to be crazy expensive, in fact modern build-in Realtek chips (worse probably $1) do the trick. On budget, old Firewire interfaces also have reasonable (for MIDI) latency.  Most modern USB interfaces also.

But what is not working good for the purpose are SB cards. They never had "advertised" latency. Yes, the buffer size can be 2ms.  But with such buffer PCI SBZ has more then 18ms latency (it can be PCIe SBZ is a bit better, but I doubt the difference is significant). In addition, SB drivers are traditionally bad (for music) and such setting are barely usable in practice, when the system is somehow loaded (that you observe).  Also SB does not report latency correctly (that you probably also observe, when reported correctly Cakewalk automatically put recorded audio/MIDI to sync with already recorded material, when that is no the case the result is not in sync, especially when recording with big buffer sizes).

There is no reason to fight for every ms in latency when dealing with MIDI. Hardware MIDI cable needs ~1ms to transfer one note, so 10 finger chord takes up to 10ms to transfer. USB connected keyboards/drums can do it faster, but that is rarely the case. But over 10ms RTL (5-6ms audio output) can be noticed, especially with e-drums. BTW e-drums with build-in interfaces (f.e. Roland) don't have market leading latency, but they assume you record using local sound and since they report latency correctly, DAWs usually put MIDI (more or less) at correct place (reporting/accounting MIDI latency is something not so advanced as reporting/accounting audio latency).

 

  • Like 1

Share this post


Link to post
Share on other sites
Posted (edited)
On 7/21/2021 at 10:54 AM, azslow3 said:

 

I think the first comment from John Vere, with fixed settings, is a good target to consider. If you don't play guitar softamps, especially in case you record MIDI only, you don't need top audio specialized PC nor top interface. Still, you need:

  • relatively modern not "office" computer (if Intel, some i5 or better)
  • moderately optimize it for audio (bring system latency down, no more then 1-2ms)
  • use audio interface with stable drivers and decent latency.

I appreciate the time you took to provide this information. But I do have to disagree in part.  The Creative Labs Soundblaster Z card is a high end card specifically made for audio production, with a very high s/n ratio, low latency and ASIO support.  As I can't offer proof of this with my own scientific measurements, suffice to say when I am running that puppy at 2ms whether to record midi or audio there is no detectable delay. My midi notes hit their mark precisely. For years I found recording in daws annoying even with minimal latencies. But this card is one half hair width short of zero latency.

I'm not saying its the best of the best, I'm sure there are better. But it really works remarkably well.

sound-blaster-zxr

I can live with having to switch buffer sizes (round trip time), its just me wanting it all!

All the best,

Rick

Edited by Rickddd

Share this post


Link to post
Share on other sites
Posted (edited)

Just to clarify, audio drivers have no impact on midi data. That is handled by the midi driver which is either MS generic or supplied with your controller.  Example Roland and Yamaha supply a midi driver. 

The only time you will notice midi latency is because the soft synth you are triggering is affected by the audio system. So you can be using low quality on board audio and have almost zero latency when you play a vst from a controller. The only latency would be the delay from the output of the VST to your monitoring system. Basically half the RTL. On my system at a 256 buffer that shows as 10ms. 

But start adding effects that requires more processing and that latency will increase.  And if you lower your buffers too much, your audio will cut out or crackle.  This is your computer, not the audio interface doing this. Good ASIO drivers allow lower buffer settings by design but then your computer needs to be fast enough to optimize the available performance. My Motu is a good performer, but my computer is not capable of much under 128 without crackles. 

As far as recording goes it is best practices to bypass all effects while tracking to avoid timing issues. Midi or audio. 

If your interface has direct monitoring, use it,  and audio latency won't matter. Do not use input echo while recording audio. The only exception is when you what to monitor something like a Guitar sim. 

Edited by John Vere

Share this post


Link to post
Share on other sites
Posted (edited)
On 7/24/2021 at 4:06 PM, Rickddd said:

I appreciate the time you took to provide this information. But I do have to disagree in part.  The Creative Labs Soundblaster Z card is a high end card specifically made for audio production, with a very high s/n ratio, low latency and ASIO support.  As I can't offer proof of this with my own scientific measurements, suffice to say when I am running that puppy at 2ms whether to record midi or audio there is no detectable delay. My midi notes hit their mark precisely. For years I found recording in daws annoying even with minimal latencies. But this card is one half hair width short of zero latency.

I have not found relevant data for this particular card, I mean real "analog to analog" latency. But you can easily do your "own scientific measurement", connect some output to input (do not forget disconnect or switch off all speakers/headphones/etc !!!) and run https://oblique-audio.com/rtl-utility.php

There is more precise way, using any DAW. But you need more complicated cable connection.

Achievable by particular interface lowest latency is only one of parameters. More interesting is what can work smooth under particular settings, in terms of soft synthes, FXes and the number of tracks. Sure, the computer and the software play significant role.

People which test seriously do that with devices which can be considered as "music production audio interfaces". And Creative has never produced such (at least not with Sound Bluster label). Consequentially it is hard to find corresponding results. But so far every time someone tried (including myself) the results was confirming that Sound Blaster is not good for music production.  Theoretically it can be ZxR is a revolutionary product in the line. But looking at your screenshots, where "ASIO reported latency" is strictly equal to the buffer size (physically impossible), that is unlikely 🙄 

So my proposal is still the same: if you can, try some recent USB interface with dedicated ASIO drivers  or even build-in Realtek (if computer is not older then ~4 years). It can happened you can find fixed buffer size with "not detectable delay" (for MIDI) and without problem when many VSTs are loaded. BTW 96kHZ is not good for that. Most interfaces have a bit better latency under higher sample rates, but double load on the system is normally not worse the advantage. If you need 96kHz in some particular plug-in(s), Cakewalk supports up-sampling.

PS. I wish someone have tried to convince me to buy RME before I have tried (in chronological order): Sound Blaster (PCI), M-Audio (Firewire Audiophile and 410), Behringer Xenyx USB, Cakewalk VS-20, Phonic 808 (apart from not dedicated audio interfaces in e-drums and vocal processor, Relateks, etc.). That is the only reason I periodically try to convince other...

EDIT: I have realized SB Z(x(R)) are 8 years old... so you almost certainly have more then 10ms RTL (I guess 16+ms).

 

 

Edited by azslow3
  • Like 1

Share this post


Link to post
Share on other sites
Posted (edited)
On 7/18/2021 at 3:35 AM, scook said:

Opening preferences, launching the ASIO tool and changing buffer sizes is well within AHK's capabilities though.

@scook

I can't see this! Open Preferences OK, no prob, but within the preferences you can't select the main Tabs, only the settings within a Tab, means if you are in Devices, I can't select driver settings with Autohotkey.

If Driver settings are selected I can switch to the Asio Panel, but then with my Audiocard at home (UR44C) I'm not able to switch to the buffer settings without mouse. 

(TAB does only switch between "OK" and "Cancel")

How would you do that?

Mouse clicks with Autohotkey are difficult cause the windows sometimes open on the first sometimes on the second monitor. (last opened posistion?)

Thanks;)

Bassman.

P. S. I don't need to switch that often, but just tried to do it with Autohotkey.

 

Edited by Heinz Hupfer

Share this post


Link to post
Share on other sites

These days I use one monitor

Are you saying 

CoordMode, Mouse, Client

does not support multiple monitors?

Share this post


Link to post
Share on other sites
On 7/25/2021 at 4:19 PM, azslow3 said:

I have not found relevant data for this particular card, I mean real "analog to analog" latency. But you can easily do your "own scientific measurement", connect some output to input (do not forget disconnect or switch off all speakers/headphones/etc !!!) and run https://oblique-audio.com/rtl-utility.php

I was thinking of a way to explain better. So I thought I'd use 

 

On 7/25/2021 at 4:19 PM, azslow3 said:

I have not found relevant data for this particular card, I mean real "analog to analog" latency. But you can easily do your "own scientific measurement", connect some output to input (do not forget disconnect or switch off all speakers/headphones/etc !!!) and run https://oblique-audio.com/rtl-utility.php

There is more precise way, using any DAW. But you need more complicated cable connection.

Achievable by particular interface lowest latency is only one of parameters. More interesting is what can work smooth under particular settings, in terms of soft synthes, FXes and the number of tracks. Sure, the computer and the software play significant role.

People which test seriously do that with devices which can be considered as "music production audio interfaces". And Creative has never produced such (at least not with Sound Bluster label). Consequentially it is hard to find corresponding results. But so far every time someone tried (including myself) the results was confirming that Sound Blaster is not good for music production.  Theoretically it can be ZxR is a revolutionary product in the line. But looking at your screenshots, where "ASIO reported latency" is strictly equal to the buffer size (physically impossible), that is unlikely 🙄 

So my proposal is still the same: if you can, try some recent USB interface with dedicated ASIO drivers  or even build-in Realtek (if computer is not older then ~4 years). It can happened you can find fixed buffer size with "not detectable delay" (for MIDI) and without problem when many VSTs are loaded. BTW 96kHZ is not good for that. Most interfaces have a bit better latency under higher sample rates, but double load on the system is normally not worse the advantage. If you need 96kHz in some particular plug-in(s), Cakewalk supports up-sampling.

PS. I wish someone have tried to convince me to buy RME before I have tried (in chronological order): Sound Blaster (PCI), M-Audio (Firewire Audiophile and 410), Behringer Xenyx USB, Cakewalk VS-20, Phonic 808 (apart from not dedicated audio interfaces in e-drums and vocal processor, Relateks, etc.). That is the only reason I periodically try to convince other...

EDIT: I have realized SB Z(x(R)) are 8 years old... so you almost certainly have more then 10ms RTL (I guess 16+ms).


I of course are in awe of much of the technical end of things. And I take a very simplistic approach. So I thought I would use a metaphor.

Let's say I go to the eye doctor, and I can't read the eye chart; it's out of focus.  The eye doctor says, "what prescription do you need?"  My answer would be "I don't know, lets use some of this very sophisticated test equipment and your training as a doctor to measure my eyes".  

Now lets say, instead, I come into the eye doctor and sit in the chair. Only in this scenario, I can see the chart perfectly without any glasses at all.  I can read the finest print.  The eye doctor says to me "what prescription do you need?"  My response is "none at all".

In the first scenario, equipment and testing is needed. In the 2nd scenario, none of the equipment in the docs office is needed.

In the same way, the audio card I have (which bypasses all the slowness of usbs), is so fast that my midi notes are always spot on no matter how fast I pound the keys, as are audio recordings that I do in to the daw. If there is a latency, my ears can't hear it and my eyes can't see it. And I am very aware of what poor latency looks and acts like.

My card lacks things like condenser mic inputs etc, but I have a mixer before it that does all I need to do in that regard.

So for now, I'm happy with the card.

 

Share this post


Link to post
Share on other sites

Please sign in to comment

You will be able to leave a comment after signing in



Sign In Now

×
×
  • Create New...