Join GitHub today
GitHub is home to over 40 million developers working together to host and review code, manage projects, and build software together.Sign up
Well, another question, related to FableSounds BBB and SampleModeling brass.
I can't avoid this conflict. Tried to make two additional positions in separate group: pressed and released. And press the note only if pressed is not active, but it produces some sort of recursion or infinite loop, as I have to turn the pressed art if released is active :) And all crashes
Bank file to reproduce the "crash":
I think I'm not too surprised that this causes some infinite loop. It's a clever use of output filtering and articulation output events and quite a bit too clever for the intended uses. :)
Of course it shouldn't hang. So I'll need figure out how to detect this case and avoid the infinite loop.
In the meantime, back to the original problem you were trying to solve, are you saying with the Samplemodeling Trumpet example that you need to keep C2 (note 48) held between articulations?
I have the Samplemodeling Trumpet but unfortunately for some reason the different portamento types aren't working for me. Still, looking at the docs, it's not clear there should be a problem with retriggering the C2 between different articulations.
So wouldn't something like this work?
Program 1 has no output events, so this will serve to release any held notes from the other programs.
Jack, yep, it also worked for me. The problem is going through the arrange.
Reduced test case:
Sequence of events:
Technically step 3 could simply check the output events of the active articulation in group 1 and notice that none of them are filtered, and therefore doesn't need to be retriggered. But this doesn't fundamentally fix the infinite recursion which could take different (and more indirect) paths.
The more permanent fix is to keep track of emitted art output events (by means of 4 32-bit bitmaps) and refuse to re-emit anything that was already emitted. This should prevent all forms of recursion shenanigans.