git-moss / ConvertWithMoss

Converts multisamples from a source format (WAV, multisample, KMP, wavestate, NKI, SFZ, SoundFont 2) to a different destination format.
https://www.mossgrabers.de/Software/ConvertWithMoss/ConvertWithMoss.html
GNU Lesser General Public License v3.0
190 stars 13 forks source link

Korg Wavestate from SF2/SFZ not working correctly #15

Closed iamadan closed 1 year ago

iamadan commented 1 year ago

Hi,

I've been trying to convert the Salamander Piano SFZ (a few variants) to Korg MultiSample for Wavestate, and while the sample loads into Sample Builder, there are no samples attached. I think the filenames may be the problem, since the filenames produced don't have MIDI numbers, but I'm not sure. In any case, I've tried the 5 layer, 6 layer, and 15/16 layer versions and I can't get any of them to load correctly with the samples mapped to the right notes (normally, there are no samples at all in the file). Am I missing something? I reviewed the manual, but I can't find what I'm doing wrong. Thank you!

git-moss commented 1 year ago

I am afraid these SFZ files are much too complex to be converted to Wavestate format. The source files also contain special samples for release and pedals which create some additional confusion. I can try to filter out these non-supported samples but nevertheless you will be only able to convert the files partially.

iamadan commented 1 year ago

That makes sense! Thanks. I assumed the pedals and releases would be ignored, but I'd expected the velocity layers and notes themselves might work. But your point about filtering those (and all the extra logic they create) makes complete sense. Thanks for the tool and no worries! All the best...

git-moss commented 1 year ago

If you remove all groups except the first one from the SFZ file, you will get some usable output. But it still contains 16 layers and you will only get max. 4 into the wavestate. Support for release-mode layers will be in the next update.

iamadan commented 1 year ago

Thanks! I actually learned that you can make Wave Sequence steps determined by velocity, so technically you should be able to have 16 velocity layers on one WaveState layer simply by tying each of the 16 multisamples to one velocity-determined step in the Wave Sequence. It's a neat trick and gives a ton of flexibility!