What's new

Wavetable zone waveform

OP
Claud9

Claud9

Active Member
Thread starter
  • Thread Starter
  • Thread Starter
  • #21
Beats me. :grin:
But why now if I change your samples with mine I don't see any waveform anymore? I noticed that zones are changed to 4 - 5 - 6 - 7. It works only if zones are 0 - 1 - 2 - 3? And it works only with 4 groups/zones? I'm confused what's going on here!:thumbsdown:
 

EvilDragon

KSP Wizard
Yes, when you remove zones, it doesn't reclaim back zone IDs so that they could be reused, it just keeps incrementing them. There's a trick to reset zone ID counter back to zero, though. Remove all zones from the instrument, then load an effect, any effect, to any slot, then undo one step back. Now when you drop new samples in they will start from zone ID 0.

In ANY case, messing with zone IDs like this is never a good idea. You should always properly retrieve zone IDs and put them in a lookup array only after your instrument is completely mapped out!
 

EvilDragon

KSP Wizard
No, it's worth a shot! Especially because it's ran on the same hardware... An even better test would be bootcamped Windows on the same Mac, but that's an obvious pain in the ass.
 
OP
Claud9

Claud9

Active Member
Thread starter
  • Thread Starter
  • Thread Starter
  • #27
Yes, when you remove zones, it doesn't reclaim back zone IDs so that they could be reused, it just keeps incrementing them. There's a trick to reset zone ID counter back to zero, though. Remove all zones from the instrument, then load an effect, any effect, to any slot, then undo one step back. Now when you drop new samples in they will start from zone ID 0.

In ANY case, messing with zone IDs like this is never a good idea. You should always properly retrieve zone IDs and put them in a lookup array only after your instrument is completely mapped out!
The effect trick worked but I have no idea how to do what you suggested with the lookup array.
I have to do a sort of list with all ID's and corresponding groups?
Also just to understand, the code as is in the NKI you posted works properly only if Zone ID 0 corresponds to Group 0 and so on.... correct?
 

polypx

Hoser
Ok, I ran it in Bootcamp (Win 10), on the same Mac, and the same problem happens in Windows. Without the wait I have to select twice, with the wait it works properly.

This on a pretty old MacBookPro.... 2015.
 

EvilDragon

KSP Wizard
Weird. I can't repro it here, honestly. Waveforms change the first time you change the menu selection... And this is not even on an SSD...

Also just to understand, the code as is in the NKI you posted works properly only if Zone ID 0 corresponds to Group 0 and so on.... correct?

Yes.

I have to do a sort of list with all ID's and corresponding groups?

You need just one zone ID per group. If you have multiple layers that all have the same sounds, you don't have to have ALL groups in the lookup array, you can just use the first set of groups (for layer 1) to show different waveforms for all x layers that you have.
 

EvilDragon

KSP Wizard
OK it seems there is a direct correlation between loading the samples and waveforms being drawn. If the sample was still in the process of loading while you executed setting the waveform in script, the waveform won't be updated. That's why the wait() helps. There's also a difference between regular HDDs and SSDs in this case - SSDs are faster so, it's obvious they'd probably work better in this case.


Actually last night I managed to make it not work for me too, but only in one particular case: after loading the NKI, go straight for Group 3. It wouldn't refresh the waveform. But if I selected ANY other group except group 3 after loading the NKI, it would update the waveform properly.

Then I moved the NKI to an SSD, and Group 3 changed waveform immediately after loading the NKI, so that was all fine!


It seems it would be great if purge_group() command were made async aware, so that we actually know when stuff is done loading, so that we can do GUI-related stuff that ties into sample loading (like showing waveforms) properly.
 
OP
Claud9

Claud9

Active Member
Thread starter
  • Thread Starter
  • Thread Starter
  • #32
OK it seems there is a direct correlation between loading the samples and waveforms being drawn. If the sample was still in the process of loading while you executed setting the waveform in script, the waveform won't be updated. That's why the wait() helps. There's also a difference between regular HDDs and SSDs in this case - SSDs are faster so, it's obvious they'd probably work better in this case.


Actually last night I managed to make it not work for me too, but only in one particular case: after loading the NKI, go straight for Group 3. It wouldn't refresh the waveform. But if I selected ANY other group except group 3 after loading the NKI, it would update the waveform properly.

Then I moved the NKI to an SSD, and Group 3 changed waveform immediately after loading the NKI, so that was all fine!


It seems it would be great if purge_group() command were made async aware, so that we actually know when stuff is done loading, so that we can do GUI-related stuff that ties into sample loading (like showing waveforms) properly.
I tried with longer samples, 3D waveform and bigger and I had to increase the wait time to 200000 in order to make it work properly.
 

EvilDragon

KSP Wizard
Yeah, that's no good. Well, I'm told there have been some issues in showing wavetable waveforms in certain cases, and some of those cases have been remedied (but this is not in the official 6.0.4 release), so in the next Kontakt update we might see some improvements here.
 
OP
Claud9

Claud9

Active Member
Thread starter
  • Thread Starter
  • Thread Starter
  • #34
Yeah, that's no good. Well, I'm told there have been some issues in showing wavetable waveforms in certain cases, and some of those cases have been remedied (but this is not in the official 6.0.4 release), so in the next Kontakt update we might see some improvements here.
I was also experimenting with adding an envelope or LFO to the position knob. Is there a way to actually see those position changes reflected in the ui waveform as you see when you manually move the position knob with the ui_control callback?
 

geronimo

Active Member
I was also experimenting with adding an envelope or LFO to the position knob. Is there a way to actually see those position changes reflected in the ui waveform as you see when you manually move the position knob with the ui_control callback?

It would have been too good ! ;)
 
OP
Claud9

Claud9

Active Member
Thread starter
  • Thread Starter
  • Thread Starter
  • #37
No. Only direct change of WT position engine parameter will be displayed, but not modulation.
and at least seeing the "position" knob moving when I activate the LFO as it is moving when I enter in editing mode?
 

EvilDragon

KSP Wizard
The light around the knob will move according to modulation, in instrument edit mode. That's normal for any modulatable parameter.
 
OP
Claud9

Claud9

Active Member
Thread starter
  • Thread Starter
  • Thread Starter
  • #39
The light around the knob will move according to modulation, in instrument edit mode. That's normal for any modulatable parameter.
I was meaning if it is possible with a script to see that knob movement we see in instrument edit mode also in our own GUI when we activate an LFO?
 
Top Bottom