Adding midish sequencer as an engine


Started working on adding midish as an engine, and i’m actually getting somewhere, not at all a
working version and the code looks like turds, but since i know there’s been talk about adding midish before i was wondering if i’m doing double work here or if you’ve found a good reason to drop midish


Hi @Mikee!

These are GREAT NEWS!! Really!

I really love midish and i played with it some time ago, at the beginning of Zynthian project. Although it doesn’t supports jackd MIDI, it can be connected using the a2j … and better, i see that it’s being recently maintained, so perhaps native jackd support is on the way :wink:

As it’s the first sequencer engine, i think we should think deep about the key concepts:

  • sequencer UI workflow => try to keep the spirit of current audio engines
  • abstraction, regarding the future implementation of other sequencer engines.
  • integration with “audio” engines
  • tempo, synchronization, etc.

Please, could you explain a little bit the basic functionality that you are implementing in the new engine?
How you plan to connect it to the other "audio " engines? Etc.

Thanks a lot for your time and effort!!


I’ve been thinking of implementing the knobs in a different way than the other engines, first off my zynthian is not a true zynthian, i only have the 7" touch display and an audioinjector card so no physical knobs. For now i’ve settled on making a row of buttons a transportbar and using the screen list as a track list where you can select the active track, in the future i was hoping to connect one knob to track selection, one knob to button selection, rec play stop and so on, the third knob to the transportbar and the fourth to exit. By having buttons changeing state between rec and pause you can easealy punch in and out.
Midish can create un connected alsasequencer ports so i’ve tried connecting those with a2j_bridge so now i have midish running with jack ports, haven’t gotten autoconnect to catch it though.
I was thinking of connecting midish as a midi input and selecting midichannel for each track to output on, that way you can start another instrument engine and select a midichannel and it will recieve midi from midish on that channel.

I’ll try to upload a video of the gui in its current shitty state later



Ji @Mikee!

Any update/improvement with this?
Have you managed to connect the midish ouput to the zynthian layers/engines using the “autoconnector”?



Haven’t had much time to work on it, wrote some test code to try to connect hw inputs to midish in and midish out to zyncoder. That gave some strange results that may be zyncoder related, changeing controller page when playing the demo song, but no notes sent through to zynaddsubfx. Ill have to look in to that


Actually got some moderate success last night when i decided to connect midish in parallel to zyncoder autoconnecting hw in to midish in and midish out to engines, midish would play zynaddsubfx on midichannel 1, so now it’s just the internal filter routings in midish and all the rest😪