Jump to content
  • 0

Why does ASIO buffer size affect Melda MHarmonizerMB quality?


Terry Kelley

Question

I posted this on the KVR forum but figured I'd ask here too.

I use Cakewalk By Bandlab (on the latest version) and when using the MHarmonizerMB, I noticed I have to run the ASIO buffer size up to about 128 or the harmonizer breaks up and gets choppy. Setting ASIO to 2048 makes it totally unusable. It's grinding rocks. Anything beyond 512 starts to crap out. It's not uncommon to run large buffers during playback but with the harmonizer, it limits that to smaller buffers.

I also notice that when I switch ASIO from 128 or so to 2048 from within Cakewalk it takes at least 30 seconds for Cakewalk to return. It's long enough that Windows says it's not responding but eventually comes back.

The reason I ask is:

1. Why does the buffer size affect playback quality? It's like the larger buffers exceed the system or CbB ability to process the VST data.
2. Are there other specific setting I should be using elsewhere to maintain the harmonizer smoothness? When it's smooth, it's great but it seems little things make it start getting choppy and distorted.

I only stumbled on the ASIO buffer size issue because the harmonizer sounded really choppy and I started checking EVERYTHING to figure out why. Overall, the song isn't really taxing the i7 processor. It's related to the buffer or something I haven't figured out.

I've tried both a Presonus Audiobox iTwo and a M-Audio Quad. Same results with the choppiness.

Link to comment
Share on other sites

17 answers to this question

Recommended Posts

  • 0

There's literally thousands of information about this on the WWW. 

Buffer size is the number of samples (which corresponds to the amount of time) it takes for your computer to process any incoming audio signal. A higher buffer size will result in greater latency (delay) and the higher it is set (larger number), the more noticeable it will become. That means that if you set the buffer size lower (smaller number), then the processing will take less time and the latency (delay that you hear) will be decreased, making it less noticeable.

However, reducing the buffer size will require your computer to use more resources to process the data. So, this is a balancing act: the smallest-number buffer size will be better, but it may tax your computer’s processing power, resulting in errors. If you have a less powerful computer, you’ll likely need to increase your buffer size, both while recording and mixing, to keep from encountering errors. Typically, you’ll want to use the smallest buffer size your computer will tolerate without getting errors (glitches/distortion/cracks/gibberish what ever we call them.) 

The more plugins you use, the more CPU resources you eat up. 

  • Thanks 1
Link to comment
Share on other sites

  • 0

Yes, there are literally thousands of generic answers to the ASIO buffer question and very few specifically addressing this plug-in. I know of no other plug-in affected at this level. Maybe someone will want to chime in with an example. This is the first situation where I couldn't run a large buffer and I have some very VST/plug-in loaded songs.

I understand the generic answer. Maybe someone can give a more technical and less generic answer.

Edited by Terry Kelley
Link to comment
Share on other sites

  • 0

I can't help you with any understanding why setting larger buffers would negatively impact a plug-in. I just take it on faith that there is a matter of diminishing returns with buffers and that I should start freezing tracks before I get to 1024. One thing I can offer is that most Meldaproduction plug-ins can be tuned to run a little leaner than they come from the factory.

In the menubar along the right side of the plug-in's UI, make sure that it's set to run at 1X normal, and turn off High-quality oversampling. I'm not sure, but I think the default may be 2X with High-quality oversampling enabled. Oversampling can be an "expensive" feature when resources are tight.

image.thumb.png.b0b80d62f3e715b78bf3c4c7ce75dd4e.png

  • Like 1
  • Thanks 1
Link to comment
Share on other sites

  • 0

Hi Erik,

Thanks for the response.

I should have framed the question better. I have several harmonizers like Quadravox, etc. that don't appear to be affected by  the ASIO buffer size or don't show any affect. I don't have any other VST or effects that are impacted like MHarmonizer. I get that it takes time to process and 2048 samples might just be too much of a "bite" to get done in time (to Will's point.) I initially expected the delay compensation to deal with that but it might be just too much. Waiting doesn't help, it's drowning in data. The number of instances don't seem to matter either. I can run one or four MHarmonizers and it's the same.

I did go in and play with interpolation, sample accurate processing and a couple of others. Nothing seems to change anything until I changed the ASIO buffer size. It does report 46ms latency at 2048 samples (even when running at ASIO 128 samples.) That doesn't seem to be that horrible. And I run ASIO at 32 samples as long as I don't run ANYTHING else otherwise I have to drop back to 64 or 128 (at worst.)

I haven't gotten a response from Melda but they are very good at responding. In the end, I know what to do to make it work but I was wondering if anyone knew something specific.  A search on the internet hasn't found anything specific.

Edited by Terry Kelley
  • Like 1
Link to comment
Share on other sites

  • 0

Simply put, the plug-in only updates various control values between block reads so the bigger the block, the more "out of date" the control values become and it shows up as choppiness, distortion etc. The plug in reads the blocks fast enough (or is sent them fast enough) if the CPU/RAM can keep up (and an i7 certainly will) but not the rate of updating.

So keep the blocks small during playback.

  • Like 1
Link to comment
Share on other sites

  • 0
On 2/22/2022 at 3:48 AM, Starship Krupa said:

...getting choppy and distorted... why setting larger buffers would negatively impact a plug-in

Ya, wrestle with this at times as well. IME it's been a balancing act, dependent on system resources, environment -and- VST specifics. 

Does it start as soon as you hit Play? Or will your audio playback a bit before "getting choppy and distorted"?

What does your performance monitor look like when your audio "breaks up and gets choopy"?

What are your CPU specs (# cores, clock speed)?

Link to comment
Share on other sites

  • 0

@bdickens is going to love this:

I recently bought a Presonus Studio 2|4 to use as a portable interface with my laptop and iDevices. It sounded so much better on playback than my old Firepods that I hit Craig's List and picked up a new-in-box Focusrite Saffire Pro 40 to get the newer PLL converters and famous Focusrite preamps.

However, I just found that with a couple of MIDI-only projects I opened on my laptop, it starts making what sounds like a cement mixer grinding in the background about halfway through the songs. That's bad enough, but I experienced the same counterintuitive result from jacking the latency up to 2048 (as high as the Studio will go): the grinding got worse. Cakewalk's Performance widget doesn't show any missed buffers when it's doing this. No amount of muting FX or even channels will keep it from happening.

It gets even weirder: my laptop is an i7 840m with 8G of RAM, which, yes, is getting kind of elderly, but it's usually been able to handle almost every project I've thrown at it as long as I keep the latency up around 20ms. On my oldest system, a Core 2 Quad 6600 with 8G of RAM, the same projects play back without grinding, using the Presonus.

The part that's going to confound my man b is that if I unplug the Studio 2|4 (with its freshly installed and up-to-date ASIO driver) and instead play back through the laptop's onboard hardware CODEC using WASAPI Exclusive, it plays perfectly. ?

This is obviously some kind of strange anomaly, but I thought I would chime in. This could be the first known example of onboard  and WASAPI fixing an issue that happens when I use a modern, up-to-date interface using its own native ASIO driver. It's bummin' me 'cause I bought this nice interface to go with all my portables.

Link to comment
Share on other sites

  • 0

I use a Saffire Pro 40 too, and have had enormous MIDI-only projects with no issues. So it's not that. However, I have had the Focusrite go nuts on me with horrid distortion that sounds like buffer starvation - but only when watching YouTube videos or playing video games, not with Cakewalk.

Not having a second interface to substitute, I tried reverting to the onboard Realtek audio for a day, using my monitors' built-in micro-speakers. Never heard a problem, except for it sounding tinny and quiet. I am using WASAPI Shared within Cakewalk, so the difference isn't the driver. Kinda looks like it may be the interface, but I don't want to spend $$$ for a new one only to find out that wasn't the problem, either.

OTOH, I have been thinking about putting together a mobile rig to record my band live...

Link to comment
Share on other sites

  • 0
9 hours ago, bitflipper said:

I use a Saffire Pro 40 too, and have had enormous MIDI-only projects with no issues. So it's not that.

Sorry for not being clear: this issue was happening on my laptop with the Presonus Studio 2|4. Not the Saffire. The Saffire has been fine, if a little less smooth about sharing its outputs between Windows WASAPI and ASIO than the Firepods. I know that running ASIO playback and WASAPI on the same time on an interface is "off label," so if it didn't work at all I would be fine with it.

The issue with the Studio 2|4 on the laptop disappeared as mysteriously as it appeared. I had taken the Studio off the laptop to test with my other computers, and when I went back to it, I called up the same project. Played perfectly. Even left it in loop playback for hours, and it only had buffer underruns when the screensaver activated or woke.

Who knows? Maybe Microsoft was taking an image of my drives the day before yesterday. ? Whatever, it works now. My Dell laptop is a venerable beast, over 10 years old, and it can be cantankerous sometimes. Every once in a while, with no foreground programs running and the processor basically idling, it will suddenly decide that it needs to blast its fan for a few minutes. I know that suggests a heat issue, but I heat-pasted everything myself when I upgraded the CPU, and HWINFO shows no heat throttling. Maybe an iffy sensor. By laptop computer standards, it should have retired years ago, but it refuses to become obsolete, merrily running Cakewalk and Vegas with (generally) no issues. My only complaint with it is that it has a 14" screen, which makes me really value the Skylight interface.

For your mobile aspirations, I'd recommend the Studio 2|4 with no hesitation. It sounds great. I'm able to connect it to my old iPad Mini running iOS 9.X with a USB-to-lightning adapter and play my MIDI keyboard using Garage Band. No drivers necessary, the old iPad picked it right up. They can be had for well under a hundy on Craig's List. Depending on how many inputs you need, it might be right for your application. One big plus for me is that it has 5-pin MIDI, which the consumer Scarletts do not. Has nice segmented meters on the front, too. Came with some sweet bundled software. I'd not tried Studio One in a while. It's very Cakewalk-like. If Cakewalk ever jumps the shark, I'd turn to Studio One before anything else.

Couple of questions about your Saffire issues: have you flashed it to the latest firmware? When I installed the driver from their website, it immediately flashed the interface with a new image. Also, have you tried running Cakewalk in ASIO mode while also playing back Windows audio? It works fine with my Saffire. I also have zero issues with Windows audio playback when I'm not using ASIO with a DAW.

Link to comment
Share on other sites

  • 0

ASIO vs. WASAPI doesn't seem to matter with Cakewalk. I had been using ASIO for a long time, only switching to see if it made a difference. It didn't.

I don't think I've ever run Windows audio and Cakewalk at the same time. But I have had used them sequentially while both applications were open, e.g. pulling up a new export in WMP to check it before closing the DAW. 

What's weird is that my problems are intermittent and seemingly random. I can go a week with everything working flawlessly, then suddenly have the interface go silent for a couple seconds or start distorting while playing a video game. I still haven't decided if it's a hardware or a software issue. Software problems tend not to be truly random. Randomness usually suggest a hardware problem, e.g. a leaky capacitor that mostly works most of the time, or a poorly-seated edge connector. But sometimes what seems random isn't; sometimes it's combination of factors so rare or obscure that correlation is extremely difficult.

If I buy a second interface, I'll probably get another Saffire. Then, if the old interface proves to be the problem I can more easily swap it. And if it isn't the problem, I'll have a capable mobile (ok, semi-mobile) rig with enough inputs to record live multitracks of the band.

Link to comment
Share on other sites

  • 0
18 hours ago, bitflipper said:

But sometimes what seems random isn't; sometimes it's combination of factors so rare or obscure that correlation is extremely difficult.

And perhaps a function of the *current state* of the total sum of *variables* which is more of a moving target on a PC. 

Recent notes on what sounds like a similar problem. Had been running a very stable config for years and ran into the same symptoms described above where most projects ran well enough, but at times, a heavier project, which used to run perfectly on the same system, would just bog down, often in repeatable spots (said projects were pulled from an archive, so exactly the same as before,). The only changes to the system have been O/S  security updates, VST updates and CxB, with the feature updates over the last year looking to be the most significant difference at the time. All runtime aspects of this system have been optimized for audio (i.e. no internet, BT, wifi, etc.) and after disabling any VSTs with hyperactive plugin managers or cloud based DRM, had me thinking it was some core HW aspect failing (A/I? motherboard "aging"?).  

As tempting as a full hw upgrade might be, couldn't quite go there without more in depth investigation. Loaded up  some diagnostic utilities and dug into the motherboard/bios settings.  TL:DR >> optimizing/overclocking CPU /RAM made all the difference. Never felt the need to do this before (prefer to not stress CPU thermals), but the same projects have been running smoothly with zero problems the last two weeks. 

Sure, could still be something else, but tends to rule out the A/I hw/drivers atm.  YMMV. 

Link to comment
Share on other sites

  • 0

I did finally get a response from Melda and it was essentially:

- 'It shouldn't be doing that. Send us the file.'

Followed by:

'It sounds like your CPU might be overloaded.'

Ending with:

'Try another DAW since we don't know what this Bandlab software is.' I called it Cakewalk by Bandlab in my original question.

I replied:

'It's an i7, tons of RAM, SSD drives and Cakewalk is pretty well known in the industry to most DAW people.'

The CPU is an  i7-4790 at 3.6GHz with 16GB of RAM and 512GB SSD. If it's being overloaded NOTHING anywhere is indicating it is. I've checked it with every bit of software I can find and at best it occasionally spikes to 50% but averages below 25% on core 1 and the others are always lower.  No missed buffers, not using cache and on and on. I've tried multiple changes to the Config File. Certainly it could require that magical combination I never tried but geez, at some point it shouldn't be necessary.

Since I know how to make it work, I'm not going to keep spinning my wheels with an infinite number of settings combos to try. This is is something I've been struggling with for a couple of years through various versions of Melda MHarmonizer. I love their products but this one is testing my patience.

I guess I could go with the Heisenberg Uncertainly explanation that the final results of any digital manipulation is not always the same depending on how you look at it. Hence "phantom" or as I like to see it "divine intervention." ;)  

 

Edited by Terry Kelley
Link to comment
Share on other sites

  • 0
1 hour ago, Terry Kelley said:

I did finally get a response from Melda . . . .

. . . 

Ending with:

'Try another DAW since we don't know what this Bandlab software is.' I called it Cakewalk by Bandlab in my original question.

I found this odd considering how many forum members here have mentioned using Cakewalk and the fact that Cakewalk is listed here [see Supported Hosts] and includes "Bandlab" underneath Cakewalk. Maybe the person who did those tests and that page might no longer be there.  It even says: "X1 and newer is highly recommended. There were known problems when surround was enabled."  Someone at some point evidently wrote that.

Link to comment
Share on other sites

  • 0

I came across this and figured I should give the answer:

The CPU can’t keep up. 

Bounce the harmonizer track to another track (just freezing it won’t include any midi control.) Melda MHarmonizor like Waves and many other plugins are CPU hogs.  My i7 can’t keep up. Don’t go by the CPU performance bars. They can’t tell the whole story fast enough for you to determine the CPU is being beat to death. 

 

  • Thanks 1
Link to comment
Share on other sites

  • 0
On 7/22/2023 at 9:22 AM, Terry Kelley said:

I came across this and figured I should give the answer:

The CPU can’t keep up. 

Bounce the harmonizer track to another track (just freezing it won’t include any midi control.) Melda MHarmonizor like Waves and many other plugins are CPU hogs.  My i7 can’t keep up. Don’t go by the CPU performance bars. They can’t tell the whole story fast enough for you to determine the CPU is being beat to death. 

I'm skeptical about this.

I've run tests, and Meldaproduction processors are consistently the least CPU-hungry in whatever category. If whatever program's "performance bars" aren't reliable indicators of CPU use, Windows has native tools like Task Manager and Resource Monitor that can spot trouble.

Increasing the ASIO buffers should just give the processor more time to do its thing, or my understanding of it is way off.

But maybe they're right, it's time to dump this unfamiliar "Bandlab" software and try one of the supported programs on their list like AudioMulch* or Hindenburg Journalist (the humanity!). Maybe you can find a copy of Mackie (sic) Tracktion?

*I looked at AudioMulch's forum, and back in 2020 Ross, the developer, teased a 64-bit version on Twitter, so maybe by this time he's had a chance to update it.

  • Haha 2
Link to comment
Share on other sites

  • 0

I never figured out why the buffer size changed it. I have my suspicions but I've learn that the complexities often go way beyond logic.

This what it took and it's been the solution ever since. Same with some Arturia plugins like the Augmented plugins. It works. I'm happy. :)

The performance meters are very helpful  but it's unwise to try and draw too much conclusion from them. Once you start seeing them getting "busy" and you have crackling/cutouts/noise, start freezing (or bouncing) and nail down which track/affect it is. I'm glad they are available though. It's an indicator to start checking your CPU load. And heaven knows I can load the living %&$* out of it. Some plugins are just brutal.

So where is the new Cakewalk release? ;)

Edited by Terry Kelley
  • Like 1
Link to comment
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...