Jump to content

Fixing Crackling/Popping when using Sampled Instruments


ski

Recommended Posts

I routinely encounter heavy amounts of crackling/popping sounds when using a combination of EastWest PLAY-based orchestral sounds in conjunction with Kontakt-based orchestral sounds. Now, this generally doesn't occur as I'm creating a new piece of music from scratch (meaning that I'm not using a template, so I'm loading up sounds as I need them, one at a time). But when I recall that project at a later time, playback often results in an incredible amount of sonic artifacts even under light loads/thin orchestration. (BTW, my buffer size = 128).

 

[ EDIT: to hear an example of this, scroll down a little bit to find my post with the attachment called "crap.mp3" ]

 

Sometimes the problem gets so bad that the music is unintelligible. In the worst case scenario, playback will go into "slow motion" and what I hear is a smeared stream of semi-musical static. And occasionally this will occur while in the midst of building a new track, contrary to what I said above. Anyway, usually I find that one core is spiking, similar to this screenshot:

166289134_Screenshot2012-06-27at9_08_56PM.png.7199e86fe1fb4c68fb4d2253121bebfe.png

Some of the remedies I've read about included:

 

- taking any currently record-enabled instrument track out of record (doesn't work here)

- increasing buffer size (not practical, because then I can't play sounds in time)

- creating a new track assigned to "No Output" and selecting it (only seems to work sometimes)

 

Well, I think I've found a bit of a solution. It's not perfect, but it alleviates these horrible artifacts from being produced during playback:

 

• Create a new instrument track, but don't load it up with any instrument plug

• Select this track prior to playback

 

While this won't alleviate crackling/popping during recording new parts, it at least allows for artifact-free playback. As you can see in this screenshot, the CPU distribution has been significantly shifted to two other cores when this track is selected:327013163_Screenshot2012-06-27at9_05_49PM.png.86ee100fa31f114c44b6f068ae74f560.png

Alternatively, creating an audio track and selecting it (but not record-enabling it) seems to have a similar CPU-load-shifting effect.

Edited by ski
Link to comment
Share on other sites

Alternatively, creating an audio track and selecting it (but not record-enabling it) seems to have a similar CPU-load-shifting effect.

 

That's the method I use.

 

Don't know if you ever read this article:

 

Logic Pro/Express: Tips for balancing multi-core performance

 

When a Software Instrument track is selected in the Arrange window, Logic enters "Live Input Mode". In this mode, Logic turns on every plug-in in the channel strip's signal path so the channel strip can be played live from a MIDI controller. All of this must be handled by a single thread and therefore just one core. It's a good idea to keep a track that uses an Audio channel strip selected in the Arrange window, unless you're actively playing or recording to a Software Instrument.

 

J.

Link to comment
Share on other sites

Hi Jordito,

 

Interesting. Guess I'm on the right track then. 8) Thanks for confirming. If only this wasn't a problem at all... :(

 

Curious to know if anyone else finds that the problem seems to occur in the same way, i.e., when you're composing, everything's fine. But when you recall the same project, the artifacts start to crop up.

 

Cheers,

 

Ski

Link to comment
Share on other sites

Just to give you an idea of what I'm dealing with here, I've attached a very short snippet of a piece I'm sketching out using a combination of E/W Play and Kontakt plugins. (Don't expect any kind of realism or audio quality, it's just a sketch). More importantly, you'll hear the kind of crackling that I'm dealing with with an instrument track is selected. Jordito and others, does the noise you hear in the recording sound at all familiar? Anyone else get this?

 

For now I'm going to move everything over to VEP which usually doesn't give me this kind of problem. GAH!

 

Cheers,

 

Ski

crap.mp3.zip

Link to comment
Share on other sites

I've been having the same problems with EWQL. I solved a lot of it by starting to run it in stand-alone, and jacking the CPU limit up to 90% in the Play Engine. For some reason that keeps Play and Logic happy, both being able to inefficiently hog their own territory in CPU land.

 

I've also just had terrible issues with the EWQL plug-in inside Logic; strange gremlins causing strange things, like an entirely random note/sample being played back all out of time! I've plenty of memory, and a dedicated drive for the sample library that works just wonderfully in stand-alone.

 

My Macbook model is a two core i7 with hyper-threading. I'm not seeing any benefit from switching Logic's threads from automatic, 2, or 4. It's always stuck on one core, regardless of moving plug-ins across auxes or the empty - No I/O audio track tip.

 

 

Logic is definitely due for a massive CPU engine overhaul, I second that it really is a shame it's a problem in the first place. Part of me, through reading clues here and there over the years, is starting to theorize and point the blame at the AU format itself being flawed.

 

-B

 

(Also I should add that I'm never really using more than 16 instruments in EWQL, so in your case Ski I feel your pain!)

Link to comment
Share on other sites

BJG, thank you SO much for your reply. (And Jordito too, of course!)

 

Right now I'm taking an inventory of what I'm using at the moment in the project so that I can xfer those plugs to VEP. Though now that I've read your post I'll experiment with setting the CPU to 90% and seeing if that improves things within Logic itself. I'll also see if I've got more than 16 Play plugs happening.

 

To your experience with the random, notes-played-out-of-time thing, I've only had that happen once with an MOR drum kit, but thankfully not more frequently. When it was happening it was driving me batty, tho, so I definitely feel your pain too.

 

Thanks again,

 

Ski

Link to comment
Share on other sites

To your experience with the random, notes-played-out-of-time thing, I've only had that happen once with an MOR drum kit, but thankfully not more frequently. When it was happening it was driving me batty, tho, so I definitely feel your pain too.

 

It was ridiculous; I would have to try and "freeze" a track multiple times in order to win the "it plays back in time" lottery! Just never got Play to work as an AU plug-in in Logic without it being a random crapshoot. Ever since I switched to stand-alone, it's been absolutely trouble free with nice and low buffer settings in Play and Logic. I almost prefer just being able to "tab" over to it compared to say, having a Screenset for it.

 

Again, I think a lot of this is stemming to an AU issue all around. Are you switching to VST format when hosting in VEP? I've never gotten desperate enough to seriously look at that because as I said, one instance of Play in stand-alone with 16 channels is more than enough for the stuff I'm doing with it (Orchestral stuff for pop music), and the Soundflower route works just peachy!

 

I'm noticing that a lot of developers are struggling in general with the AU format, especially when it comes to plug-ins that deal with MIDI. I wonder if Digital Performer users, or Ableton Users, that have the option to choose the AU format, are experiencing very similar issues?

 

-B

Link to comment
Share on other sites

Thanks again for your reply BJG.

 

VST format for Play... I'm not even sure I have those on my system :shock: so I'll have a look. I take it there's a CPU reduction when using VST's instead of AU?

 

Most of the other composers I know are using Logic, and one in particular suggested that I not mix Play and Kontakt in the same project. Something about how their memory servers conflict (don't quote me on that tho). Of course, using VEP can help separate church and state, as it were, but when I'm sketching ideas for difficult music as I'm writing now, I want to take the easiest route and load up the sounds I know will work right in Logic. That's proving to be an exercise in futility, though. Anyway, enough bitching from me.

 

When you say that developers are struggling with the AU format, I'm curious to know in what way. Is it that the ever-increasing demands they put into the plugins for scripting and sheer number of samples is overwhelming the AU format capacity to actually play back this stuff in the first place (he asked, concluding with an incredulous, if not slightly nervous "LOL")?

 

=sKi=

Link to comment
Share on other sites

It's just a general "hunch" I'm getting from reading clues here and there over the years. I'm no programmer, but I'm seeing a pattern and curious if my train of thought has an validity. Not to be taken too seriously!

 

Some evidence gathering;

 

The attempted Massey exodus from RTAS to AU a few years ago was a fairly public cry about Apple and the AU format, enough for him to give up the project. I believe there was an "open letter" about the matter if I remember correctly.

 

MIDI plug-ins that have surfaced the last few years, such as Xfer's LFO-Tool, and Cableguys Midishaper, are not fully functional in the AU format. This is were I first learned that the AU format cannot "send MIDI" without some mass wizardry.

 

And when it does...

 

Then came the plug-in version of Numerology, which was a hot, hot mess at first from what I've read. Jim, the genius behind that program, is pretty candid and open about problems that arise to the Numerology community.

 

To balance out CPU issues with Logic, I'm hosting some VST counterparts now inside of Bidule. (thanks to your help in getting my environment all spiffy!) Plug-ins like those from FXpansion, run much better in the VST format. Tremor, Fxpansions drum synth, is a real CPU hog; and it is quick to have it's track frozen in Logic. However, I seem to be able to just keep it open and run multiple instances when hosting it in Bidule and just pointing an external track in Logic at them. It's not the same performance if I host the AU version in Bidule. (Bidule can host AU and VST at the same time)

 

It's just kind of making me think it's not just Logic's engine to blame entirely on some of these quirks, but possibly just the AU version having the potential of being more "buggy" because it was just that much harder for the developer to implement it. I'd love to run into a Digital Performer user and pick their brain to see if there are similarities with problems. I worked on a record last year where one of the other prodcuers was a DP user; wish this was on my mind then! I would love to find the definitive word on the subject!

 

-B

Link to comment
Share on other sites

MIDI plug-ins that have surfaced the last few years, such as Xfer's LFO-Tool, and Cableguys Midishaper, are not fully functional in the AU format. This is were I first learned that the AU format cannot "send MIDI" without some mass wizardry.

 

Don't know about Midishaper, but the new version of LFOTool can output MIDI to an IAC bus.

 

Usually developers go the IAC route and/or do it via virtual MIDI ports.

 

By the way, Audio Units support MIDI output since 2007. The problem is hosts like Logic don't support it:

 

http://lists.apple.com/archives/Coreaudio-api/2007/Mar/msg00053.html

 

J.

Link to comment
Share on other sites

  • 2 years later...

Sorry for bringing up the old thread, but....

 

I'm using LPX and recently came across the same problem as ski had- I hear large amount of noise when I playback sample instruments. The noise sounds exactly like the audio that ski posted in earlier post so I"m pretty sure I'm having the same issue.

 

i'm using three Kontakt 5 instances as multitimbral instruments, and wondering if loading those in Bidule as VST and mapping midi in/out would help... I'm running big orchestral sample in each Kontakt so CPU usage is pretty high. Even if I get to avoid the noise by selecting audio track, it would soon give me "system overload" error anyways.... If this problem is related to CPU usage, I guess getting new computer and use VEP along with my iMac would be another option, but I just can't afford right now.

 

So I guess there's no option other than selecting empty audio track to avoid this noise problem beside using some kind of other application to load up instruments, right?

 

Thanks!

Link to comment
Share on other sites

Jordi,

 

Thank you for your fast response! I just tried dividing two of the Kontakt instances into four, and CPU usage got much lower. I only tried with the current project that I'm working on which has less instruments than the one I had problem with, so I will try with that one tomorrow and see what happens.

 

Best regards,

Link to comment
Share on other sites

  • 2 weeks later...
i'm using three Kontakt 5 instances as multitimbral instruments

 

Try spreading the instruments in your multis to single instances of Kontakt, otherwise Live mode and its one core business will drive you nuts:

 

[attachment=1]Multi.png[/attachment]

 

[attachment=0]Singles.png[/attachment]

 

J.

 

How do you do this?

Link to comment
Share on other sites

Try spreading the instruments in your multis to single instances of Kontakt

 

How do you do this?

 

Instead of loading several instruments in a single instance of Kontakt, use one instance of Kontakt per instrument.

 

So, instead of having say, 12 instruments in one instance of Kontakt, you'll have 12 instances of Kontakt each with a single instrument.

 

J.

Link to comment
Share on other sites

OK here is what I have done.

 

I want to use a multi preset. It has 4 instruments in it. I have created 4 tracks, option dragged the instance of Kontakt with the multi loaded onto each, deleted all but one instrument in each of the four tracks, I now have the same instruments as the multi, loaded onto 4 separate tracks with 4 separate instances of Kontakt loaded. I have disabled the original multi and the four track now play as the multi did, however, the CPU load is still on one thread.

Link to comment
Share on other sites

however, the CPU load is still on one thread.

 

Whenever a software instrument track is selected and record-enabled, it will go into Live mode and all plug-ins in the associated channel strip will be handled by a single core, that's inevitable. However, the less stuff you have on that channel strip, the smaller the strain will be on that single core.

 

So, by doing what you have done, you should see that the strain on that core is smaller now (as in my images in my other post in this thread).

 

To completely avoid Live mode's single-core curse, the only thing you can do is keep an audio track selected. Sad but true.

 

J.

Link to comment
Share on other sites

Is this a universal mac thing or just Logic?

 

Live mode and its side effects is a Logic thing.

 

I just grid to add another instrument to this project (break tweaker) and thats on the same core as well ! game over!

 

Make sure you stop playback and hit play again for any changes in performance to take effect with these workarounds.

 

J.

Link to comment
Share on other sites

Hey Jordi, I was just doing some internet research this morning on related matters and somehow got to this thread and noticed it was going today! I can't get away from you guys! Hehe. Soo, I have a very simple question: Are you saying the same thing as the guy in this video? Or the exact opposite? It's a short video. You could probably just watch the first 15 seconds and the last 30 seconds.

 

 

Also, in your pictures above, are those supposed to be the exact same MIDI files? Or are they supposed to represent different MIDI files?

 

I was thinking ahead to whether I want PLAY or Kontact or something else. Bothering you is much easier than actually getting down to work!

 

Thanks.

Link to comment
Share on other sites

Soo, I have a very simple question: Are you saying the same thing as the guy in this video? Or the exact opposite? It's a short video.

 

There's no need for me to watch a video, just read what I've already posted in this thread.

 

Also, in your pictures above, are those supposed to be the exact same MIDI files? Or are they supposed to represent different MIDI files?

 

Those are copies of the same MIDI region, more than enough to get the instruments to work and make sound.

 

J.

Link to comment
Share on other sites

  • 3 weeks later...

Well I have followed all the advice, mainly splitting incidenc's of Kontakt and keeping a spare audio track selected. All did calm down and the load was spread across the cores. This is a small project I have 10 midi tracks all with a contact instrument loaded (1 track has 3 violas)

 

I opened up the project last night just to have a listen through to some changes I had made earlier and suddenly playback stopped, CPU maxed out on one core for no apparent reason. I shut down and re-opened and it played through fine, CPU never getting anywhere near maxing on any core.

 

I wonder what could account for this behaviour?

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...