Yoshimi / yoshimi

A sophisticated soft-synth originally forked from ZynAddSubFX V2.4.0 in 2009 by Alan Calvert, and still in continuous development - This is also mirrored at http://sourceforge.net/projects/yoshimi/ : Current news is at http://sourceforge.net/p/yoshimi/news/ : Our email discussion list is: http://www.freelists.org/list/yoshimi and here is our website
http://yoshimi.github.io/
Other
237 stars 39 forks source link

DAW Version without standalone options. #141

Open LyrixCaz opened 3 years ago

LyrixCaz commented 3 years ago

Would it be possible to make a version of yoshimi weather vst or lv2 to integrate better with say, something a DAW like reaper? For example on the standalone program i can set it's audio device options, i can bring up its mixer and i can also bring up extra windows; on reaper i can do the same. The issue is that for it to do that on a daw, makes the screen a little convoluted.. Specially when having multiple instances of yoshimi, also the window doesn't embed into reaper, is always floating which is a little nuisance.. So i suggest, if it be possible, to sort of eliminate those standalone features on yoshimi-lv2.

The standalone options like; the mixer panel, patch panel, even the virtual keyboard, the menu bar on top where it says yoshimi and so on.. Reaper or basically any daw can manage those things.. And it'll be great if the instrument browser could be chosen from reaper's preset list.

Pictures from the lv2 version: Screenshot_20210615_093417

Screenshot_20210615_095502

Screenshot_20210615_093141

Screenshot_20210615_093316

abrolag commented 3 years ago

I'd quite like to to see better integration myself, but we are a very small team. I don't think anyone has VSTi coding experience, and we're rather weak on LV2.

I think the necessary 'hooks' are there in the code, so if someone comes along with the time and ability, we'd welcome them on board.

AnClark commented 1 year ago

I'd quite like to to see better integration myself, but we are a very small team. I don't think anyone has VSTi coding experience, and we're rather weak on LV2.

Maybe I can help. I'm planning to port Yoshimi to DPF, which will bring supports for VST2, VST3 as well as CLAP formats.

abrolag commented 1 year ago

On Sat, 04 Feb 2023 06:19:35 -0800 AnClark Liu @.***> wrote:

I'd quite like to to see better integration myself, but we are a very small team. I don't think anyone has VSTi coding experience, and we're rather weak on LV2.

Maybe I can help. I'm planning to port Yoshimi to DPF, which will bring supports for VST2, VST3 as well as CLAP formats.

Well that would certainly be interesting. Quite a lot of work though. Let us know how you get on.

-- Will J Godfrey {apparently now an 'elderly'} https://willgodfrey.bandcamp.com/ http://yoshimi.github.io Say you have a poem and I have a tune. Exchange them and we can both have a poem, a tune, and a song.

AnClark commented 1 year ago

Yes, porting requires a bundle of work. I wonder if Yoshimi still use OSC (client-server structure) or not. Using OSC in pure-local situations could be troublesome on modern DAWs.

abrolag commented 1 year ago

On Sat, 04 Feb 2023 15:16:48 -0800 AnClark Liu @.***> wrote:

Yes, porting requires a bundle of work. I wonder if Yoshimi still use OSC (client-server structure) or not. Using OSC in pure-local situations could be troublesome on modern DAWs.

No. Yoshimi never did use OSC, we forked from Zyn before that. We mostly use a combination of compact command block structure along with our own internal text messaging system.

-- Will J Godfrey {apparently now an 'elderly'} https://willgodfrey.bandcamp.com/ http://yoshimi.github.io Say you have a poem and I have a tune. Exchange them and we can both have a poem, a tune, and a song.

AnClark commented 1 year ago

Great! The current structure is reliable for a modern audio plugin.

Now I have started porting: https://github.com/anclark/yoshimi/tree/dpf-impl.

abrolag commented 1 year ago

On Sun, 05 Feb 2023 18:22:17 -0800 AnClark Liu @.***> wrote:

Great! The current structure is reliable for a modern audio plugin.

Now I have started porting: https://github.com/anclark/yoshimi/tree/dpf-impl.

Just thought I'd mention we have now released Yoshimi V 2.2.3 You should be able to just merge it in. I can't think of anything that would conflict.

-- Will J Godfrey {apparently now an 'elderly'} https://willgodfrey.bandcamp.com/ http://yoshimi.github.io Say you have a poem and I have a tune. Exchange them and we can both have a poem, a tune, and a song.

AnClark commented 1 year ago

Roughly migrated to DPF. However FLTK UI itself does not have APIs for embedding windows, unless migrating to NTK.

abrolag commented 1 year ago

On Wed, 15 Feb 2023 16:59:53 -0800 AnClark Liu @.***> wrote:

Roughly migrated to DPF. However FLTK UI itself does not have APIs for embedding windows, unless migrating to NTK.

Looks like very interesting progress.

Some thoughts!

Not seen anything about NTK for a long time. Last time I saw it there didn't seem to be any option other than dark theme and this is a big problem for anyone with sight issues. This is one reason we've kept the original neutral theme. The other reason is maintaining familiarity for users.

Also, there was some 'politics' a while ago. Do you know if that has been resolved? I wouldn't want Yoshimi to get dragged into it :(

What additional dependencies are there for building?

-- Will J Godfrey {apparently now an 'elderly'} https://willgodfrey.bandcamp.com/ http://yoshimi.github.io Say you have a poem and I have a tune. Exchange them and we can both have a poem, a tune, and a song.

AnClark commented 1 year ago

Not seen anything about NTK for a long time. Last time I saw it there didn't seem to be any option other than dark theme and this is a big problem for anyone with sight issues.

I'm inspired from ZynAddSubFX, which has an NTK UI before switching to Zyn-Fusion.

Maybe we can modify NTK's source to let it support more themes? (Fork it ourselves as a submodule here.)

What additional dependencies are there for building?

For original FLTK GUI: I added DPF as a submodule. No additional dependencies in my fork.

For NTK: It seems that NTK only needs few changes in original code (according to its official site). Also no extra dependencies except NTK itself.

Also, there was some 'politics' a while ago. Do you know if that has been resolved?

What does 'politics' mean?

AnClark commented 1 year ago

What's more, I'm considering migrating Yoshimi to a modern single-window UI, like Zest. That should be a long run.

See: https://github.com/anclark/yoshimi/tree/reform

abrolag commented 1 year ago

On Thu, 16 Feb 2023 04:30:30 -0800 AnClark Liu @.***> wrote:

Also, there was some 'politics' a while ago. Do you know if that has been
resolved?

What does 'politics' mean?

There was a fork of the NON code as some people thought it wasn't being maintained. There was then a big bust-up between the two groups and a lot of arguing and accusations - at which point I stopped looking. I've no idea of the current situation, and am keeping well clear :(

-- Will J Godfrey {apparently now an 'elderly'}

abrolag commented 1 year ago

On Thu, 16 Feb 2023 04:33:18 -0800 AnClark Liu @.***> wrote:

What's more, I'm considering migrating Yoshimi to a modern single-window UI, like Zest. That should be a long run.

See: https://github.com/anclark/yoshimi/tree/reform

If you do this I would suggest making it an option, not the only UI. Many (most?) of Yoshimi's users prefer the current UI to single panel types. Once you are familiar with it is much more flexible, configurable and efficient.

The only compulsory window is the main one, and most of the time you only need two or three open. Uniquely all Yoshimi's windows are fully resizable and remember their last used position and size. The major ones also remember if they were open last time Yoshimi exited, and will reopen on the next start. They also remain open and are updated if you switch parts.

With the mixer panel open you not only see the status of all parts, but have instant access to the major controls for balancing while a song is playing.

When designing new sounds it is useful being able have all three engine editors open at the same time.

With window stacks, such as bank<->root<->path you can run up and down them keeping just one window open by using the right hand mouse button

-- Will J Godfrey {apparently now an 'elderly'} https://willgodfrey.bandcamp.com/ http://yoshimi.github.io Say you have a poem and I have a tune. Exchange them and we can both have a poem, a tune, and a song.

AnClark commented 1 year ago

I see. I mean single-paneled UI could be an option. Both UIs have their advantages.

Also I've found that porting to ImGui is also a hard work, since many unexpected issues may occur.

So the key points changed: how to let FLTK UI be embedded.

It appears that NTK has API to reparent windows, or at least exporting native window handles so that I can call system API to embed them. (Maybe we can hack into FLTK?)

abrolag commented 1 year ago

On Fri, 17 Feb 2023 16:53:16 -0800 AnClark Liu @.***> wrote:

I see. I mean single-paneled UI could be an option. Both UIs have their advantages.

So the key points changed: how to let FLTK UI be embedded.

It appears that NTK has API to reparent windows, or at least exporting native window handles so that I can call system API to embed them. (Maybe we can hack into FLTK?)

Hold back on changing themes. I'm currently working through all the graphics changing direct RGB colours to equivalent colour table entries. These can all be changed with the Fl::set_color( command :)

-- Will J Godfrey {apparently now an 'elderly'} https://willgodfrey.bandcamp.com/ http://yoshimi.github.io Say you have a poem and I have a tune. Exchange them and we can both have a poem, a tune, and a song.

abrolag commented 1 year ago

As of V 2.3.0.2 we have extensive colour theme control.

abrolag commented 10 months ago

Any further progress on this?