On 05.09.2024 17:11, ichthyo wrote:
On 05.09.2024 09:41, Will Godfrey wrote:
I'll try to dig into the issue with Carla, although I don't know how
many
people actually use it with Yoshimi.
On 05.09.24 15:41, Kristian Amlie wrote:
For the record, I do. In fact, with Yoshimi I use nothing but Carla. 🙂
I didn't quite get it from the context, what is the issue with Carla?
- Will and myself engaged into work towards a better separation of GUI
and Core
- as a prototypic solution, I developed a new connection system which
allows the
 GUI to enrol with the core and receive push updates. The prototype
uses this
 to send effect parameters and especially the EQ response curve.
 As you know, the existing GUI code has the unfortunate habit of
grabbing right
 into the SynthEngine internals, at any time, and without proper thread
 synchronisation. The push updates of larger chunks of data aim at
resolving
 these long standing problems.
Indeed, it's been bugging me many times while inside the code, but I
always considered it too big for me to attack. It's great that this
receiving attention!
 For small updates, like single float variable, there is already the
toGUI
 ringbuffer, and the "returns-update" in the GUI
- this prototype was landed somewhere this spring. But later it turned out
 that this made the feature with multiple Yoshimi instances much more
fragile,
 and sometimes broke it. Especially the mode where several SyntEngine
instances
 are automatically re-created on start-up.
- this turned out very dificult to solve. In the end, I decided to more
or less
 rewrite main.cpp and introduce a dedicated InstanceManager and a well
defined
 lifecycle for SyntEngine instances
- this necessitated rework of the LV2 plugin. I just finished this some
days ago
Fantastic that this is close to completion!
- after welding out some bugs, Will reported that almost all hosts work
now.
 Just Clara starts, but does not produce any sound. Clara is difficult
to build
 and is known to produce lots of headaches on the programming side,
since it
 tends to push the LV2 standard to its limits, or rather actually do what
 the standard permits.
Indeed! It is also one of the best hosts though, I would say. In fact
it's the only host I have where all LV2 plugins work. It's my goto host
whenever my native host doesn't load the LV2 plugin correctly, or
something inside it doesn't work. Then I load Carla as a VST, and then
Yoshimi under that as LV2. Don't ask me why VST works better, but it
tends to. I think it may be related to JUCE, and their VST/LV2 support,
since many hosts rely on it, also closed source ones.
For the record, I tested your branch, and I'm seeing exactly the same as
you, so at least the setup appears to be correct. I briefly looked at
your changes, but the differences from master are far too extensive for
me to try to spot what it could be.
--
Kristian
_______________________________________________
Yoshimi-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/yoshimi-devel