Page 1 of 1

SFZ and Gig Engines.

Posted: Tue Jun 12, 2018 2:38 pm
by alextone
Christian, long time no hear, it's Alex.

I have a challenge with using linuxsampler as multiple VST instances inside a daw, in particular, SFZ files.

I've converted all my strings libraries to SFZ from kontakt, and they are loaded as 5 LXVSTs in 5 tracks.
The rest of the orchestra follows along in gig format, and the entire basic template is about 50 VSTs, which load successfully day after day. (All hail the mighty LS.)

Each track/VST instance routes its audio out to two busses, one for reverb and one for pre-main. Those busses then route to master, so the VST tracks don't route to master directly. This is important.

When i load SFZ vsts first, that is my strings, followed by the rest of the orchestra, no matter how much i save, and resave, when the project is opened again, the volume for the sends from the track is at -inf, and the pan is once again centred. The following vst tracks loaded with gig files are also affected the same.

When i load everything else first, that is all my gig tracks and busses, then load the SFZ tracks absolutely last, all the tracks keep their settings. I can repeat this ad infinitum. And the irony is when i do this, even the SFZ routing keeps saved settings. As if when gig has priority, it "forces" SFZ into submission.

Even when i attempt to "fool" the SFZ VST Tracks by placing a gig track above it in the loading order, all the send for all the tracks in the project open with the same hard reset, to volume -inf and centred pans. This includes the audio busses.

So unless the SFZ tracks are absolutely last, the SFZ engine seems (and i speculate here) to hard reset all routing for everything, unless everything else loads first.

I am a bit of a loss how to fix this, and i hope you can help. Is there some command or message in the SFZ engine that forces a hard reset when mixed with gig, if it gets the chance? Do i need to add some sort of command to SFZ to tell it to behave? If so, how? Is there a particular challenge in the VST commands the plugin instances send?

Lastly, when the VST tracks are routed directly to master, with no sends to busses, for both SFZ and Gig, the Gigs save ok, but the SFZs don't..

I've been right through the SFZ files, line by line, and checked for any volume or pan messages that might be instigating this. No luck there. The files are plain and simple.

I don't understand why the SFZ engine would affect the gig engine. You're far better equipped to determine that than I.


Re: SFZ and Gig Engines.

Posted: Thu Dec 13, 2018 6:59 pm
by cuse
The engines themselves are completely separate from each other. The root cause of your issue seems to be a division by zero bug in the SFZ engine which causes "Infinity" floating point special values, which causes to shut the entire audio silent. The reason of the latter is because the audio output of the gig engine and the sfz are probably mixed together in your particular setup. And if the audio stream from the sfz engine contains these "Infinity" numbers, then mixing it with normal audio data (normal floating point numbers) coming from the gig engine will end up as "Infinity" values always. Because Infinity + anything will always result in Infinity mathematically.

To fix that issue one would need to find out where that division by zero happens exactly in the sfz engine. You could run the sampler with a debugger and set a break point on floating point exceptions, then post the stack trace to the developer mailing list.