Anyone using kontakt question

Thanks for this script … however, I’m wondering if it can be made in such a way it’s generic foir all songs, like playing a short key from all keys from both keyboards (I use). Otherwise I would have to make a script for every song.

Or playing all keys from both keyboards for all plugins (as some plugins only react to a small of even single note key range).

Does that make sense, it is only a bug in Kontakt.
And only for that sounds which use convolution effects in the bus effects.
And there will be soon a new version of Kontakt, maybe they fixed it.

You are right, maybe it’s because most of the sounds I use are from Kontakt (having NI Komplete as my only/major source of sounds).

The new version (7) will be deployed this month but it’s a paid upgrade. In version 6 the problem is still present (I bought NI Komplete about a week ago).

In how many songs are you using this problematic Kontakt Sounds?

I noticed it with one song, but probably there are more. I just created like 25 songs so far (some variants, some copies with more changes). Most of them use Kontakt sounds, but I’m not sure (not at home now to try) how many songs actually have problems. If it’s just a few, I will not spend the time to make a script of course. But I also have to create another 50+ songs.

It is just copy&paste

True, but probably as a software engineer I don’t like duplicated code :slight_smile:

A generic script is not useful,as in the rackspaces you use different plugins and key ranges.
And when you generally send a short note then you will here some clicks when this is sent for example to an organ plugin.

1 Like

You are right, but when you make a change in this general code for a specific song and introduce a bug then in every song there is a bug.
So it is a design decision if you rely on general code for all situations or you “duplicate” the code and make only changes where necessary.

1 Like

The script might be a bit complicated, haven’t checked too much into GScript yet for more complicated scripts. However, sending a note on/off to all keys and all keyboards, will activate all sounds (except for muted or velocity ranged ones).

Another way would be to traverse over all used plugins in a rackspace (not sure if this is possible), and playing a key for each one (at low volume).

But maybe I should find out first how many songs actually have this problem.

You have to define variables to send notes to a MIDI In Block.
No way to detect automatically.

And to be honest: When the new version of Kontakt does not face the issue I would pay for the upgrade.

Are you aware of the ability to have a ‘system script’ in an external file, which can be incorporated into any gig file via:

1 Like

That’s a pity that predefined variables are needed, I was hoping for a dynamic way of traversing through all used plugins for example.

And I’m not sure if I want to pay a lot more, just paid 400 for the bundle already, paying another 50 euro or so for a bug fix seems quite a bit. Or having to wait another year for some discount for the complete bundle upgrade.

I didn’t know, but good to know there is such possibility. Thanks for mentioning.

1 Like

You should not compare GP Script to a language like PASCAL, which is on the market for decades.

Take a look at the amazing features of GP and not only missing things.

2 Likes

or you resample problematic sounds and use that in Kontakt.
I do that all the time for CPU demanding sounds using the BLISS resampler.

1 Like

Don’t get me wrong, I like Gig Performer a lot so far, I’m just trying to find solutions of problems I run into (not due to Gig Performer). I’m surprised that so far everything possible to do one way or another.

I really should check into this … I’m also using a bit older (but core i7) laptop, preventing the use of some VST synths because CPU usage (or latency problems, not sure yet, but keeping CPU below 40%/50% seems to help).

I don’t know if it works, but this could be a brute force Global Rackspace GPScript for this :grimacing::

On Rackspace(oldRackspaceIndex : integer, newRackspaceIndex : integer)
Var
  devId,note,ch : Integer = 0;
  
  For devId=0; devId<GetMidiInDeviceCount(); devId=devId+1 Do
	For note=0; note<128; note=note+1 Do
	  For ch=1; ch<17; ch=ch+1 Do
	    InjectMidiEvent(GetMidiInDeviceName(devId), MakeNoteMessageEx(note, 1, ch));
	    InjectMidiEvent(GetMidiInDeviceName(devId), MakeNoteMessageEx(note, 0, ch));
	  End
	End
  End
End
2 Likes

This is exactly what I meant :slight_smile: