smbolton / hexter

Yamaha DX7 modeling DSSI soft synth
http://dssi.sourceforge.net/hexter.html
GNU General Public License v2.0
109 stars 15 forks source link

LV2 support? #8

Open io7m opened 7 years ago

io7m commented 7 years ago

Hello!

Any chance that this will be ported to LV2? Right now, it's very painful to use the synth from Ardour (because Ardour has dropped support for DSSI, and Hexter doesn't run in hosts like Carla). It's by far the best open source FM synth available (to be fair, there's not exactly much competition!) and I'd love to be able to use it painlessly from Ardour.

smbolton commented 7 years ago

Hi Mark, My roadmap is to do 1) a bug-fix release of hexter Real Soon Now(TM), 2) a release of hexter that will run in hosts like Carla that don't support run_multiple_synths() sometime in the next couple months, and 3) eventually, a version of hexter for LV2, VST, or something else that can be used in Ardour.

You can help: I want hexter to easily support having a large bank of patches available, that can be easily selected from the GUI or via MIDI program change. I haven't figured out how to do that in LV2. Can you recommend any LV2 plugins which you feel accomplish that well, that I could study as implementation examples? Thanks-

io7m commented 7 years ago

'Ello.

My roadmap is to do 1) a bug-fix release of hexter Real Soon Now(TM), 2) a release of hexter that will run in hosts like Carla that don't support run_multiple_synths() sometime in the next couple months, and 3) eventually, a version of hexter for LV2, VST, or something else that can be used in Ardour.

Sounds great, glad to hear it!

You can help: I want hexter to easily support having a large bank of patches available, that can be easily selected from the GUI or via MIDI program change. I haven't figured out how to do that in LV2. Can you recommend any LV2 plugins which you feel accomplish that well, that I could study as implementation examples? Thanks-

Good question. I'm going to continue investigating as I don't know much about the LV2 API. I agree that the typical single drop-down list doesn't scale to the large number of presets you'd usually have in an FM synth.

Would you want to maintain DX7 compatibility with regards to patch selection? If not, maybe you could expose two parameters: category and program, where both are integer parameters in the range [0, 127]. The synth would select a patch based on the combination of category and program, giving you 16384 patches to work with. The UI could expose a pair of drop-down menus that allow for the naming of categories and patches. Breaking it into a pair of parameters might prevent the "this drop-down menu is larger than my screen" problem that LV2 plugins with masses of patches tend to have.