helm icon indicating copy to clipboard operation
helm copied to clipboard

No JACK MIDI in ports?

Open simonvanderveldt opened this issue 8 years ago • 13 comments

I just compiled and installed Helm 0.9.0 and ran into this issue: Helm doesn't have any JACK MIDI in ports, but it does appear to have an audio in port :? I'm not sure if I remember it correctly but I believe Helm used to have JACK MIDI in ports. Did I do something wrong when compiling? Are other dependencies needed apart from jack itself to get this to work? Or could this be a bug in Helm?

Patchbay screenshot for reference: image

simonvanderveldt avatar Jul 23 '17 17:07 simonvanderveldt

I can confirm that in helm 0.8.6 there are midi in ports

image

shimpe avatar Jul 23 '17 19:07 shimpe

@shimpe Thanks for the info. I just built 0.8.6 and I'm experiencing the issue with that as well. So I guess that means something is wrong with how I build Helm and/or it's dependencies?

simonvanderveldt avatar Jul 23 '17 20:07 simonvanderveldt

I guess it's some build flag, but since I'm only a casual user of helm I cannot tell you what went wrong. Just for fun I compiled git master and don't see any midi inputs in that version either...

shimpe avatar Jul 23 '17 21:07 shimpe

@shimpe Could it be that the MIDI in ports you see are actually ALSA MIDI ports, exposed through something like a2jmidid?

Since afaik Helm uses JUCE and JUCE apparently doesn't support JACK MIDI that would mean currently only ALSA MIDI should be supported.

ALSA MIDI isn't working for me either though :(

simonvanderveldt avatar Aug 07 '17 20:08 simonvanderveldt

To be honest I'd be surprised, because

  • helm's changelog for version 0.6.0-1 mentions e.g. "JACK MIDI input is now labeled Helm", which - assuming that the comment is accurate - implies that at some point it must have been present
  • in the source code there are many occurrences of a macro JUCE_JACK (but enabling it doesn't give me JACK MIDI ports :( )
  • in helm 0.8.6 (standalone) I'm pretty sure I see JACK MIDI ports, not ALSA MIDI ports. When I start a2j, I see extra midi ports appear.
  • in latest helm i seem to have no midi ports at all, no matter if a2j is started or not.

On Mon, Aug 7, 2017 at 10:46 PM, Simon van der Veldt < [email protected]> wrote:

@shimpe https://github.com/shimpe Could it be that the MIDI in ports you see are actually ALSA MIDI ports, exposed through something like a2jmidid?

Since afaik Helm uses JUCE and JUCE apparently doesn't support JACK MIDI https://github.com/gentoo-audio/audio-overlay/pull/70#issuecomment-318995367 that would mean currently only ALSA MIDI should be supported.

ALSA MIDI isn't working for me either though :(

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/mtytel/helm/issues/152#issuecomment-320775846, or mute the thread https://github.com/notifications/unsubscribe-auth/AAssYtEekPgIs7i8k9iv9jWFEwpDs0qQks5sV3efgaJpZM4OghPg .

shimpe avatar Aug 08 '17 23:08 shimpe

I've checked the commits between 0.5.0 and 0.6.0 and the changes regarding JACK MIDI were actually related to ALSA MIDI. There is indeed no JACK MIDI support in JUCE, ALSA MIDI is currently the only supported option.

Using either something like a2jmidi or running jack with -Xseq will show ALSA MIDI ports in JACK, which is what's happening for everyone who does see the ports :)

Since this is something that needs to be fixed in JUCE I don't know if this issue should remain open? Judging by JUCE's responses to Linux requests so far I'm not holding my breath...

simonvanderveldt avatar Nov 21 '17 22:11 simonvanderveldt

Same issue here, building it on a debian stretch up-to-date. No JACK-MIDI input connection. That said, one can connect a midi-usb or a virtual keyboard to "midi through port-0" in Catia (should/could be available in other jack patchbay such as qjackctl) and then, my virtual or midi-usb keyboard is able to control helm.

I've another build from https://github.com/mtytel/helm/commit/6784938fe3c124902e452f334970251d78f89b75 that I have access to a JACK-MIDI input with.

@mtytel : is there something we can do or try out or that's just because JACK-MIDI support has been abandoned in helm?

trebmuh avatar Dec 14 '17 23:12 trebmuh

I just downloaded prebuilt helm from https://tytel.org/helm/ and installed it. System is ubuntu 18.04.

No jack or alsa midi port shown in qjackctl.

tavasti avatar Oct 31 '18 08:10 tavasti

Just compiled and it seems helm is in some sort of 'universal omni mode' somewhere around alsa when using jack audio. It repeats everything i put on sequencer64 with no connections to it on every midi channel. Even changing channel won't help. Wery interesting synth. Midi bindings and all. And what a set of preset selection. Kudos to @mtytel

layk avatar Nov 16 '18 21:11 layk

I offer testing help here to get this working.

layk avatar Nov 16 '18 21:11 layk

It's the nicer but the most difficult synth to connect to (probably because of JUCE?). I'm used to use only qjackctl to connect softwares. If MIDI input doesn't show up, then I start: "a2j -e" but in this very case, qjackctl-Connection doesn't help. Instead using Patchage I get Midi Through both via ALSA and JACK.

Helm conf: audio dev= JACK, output=system, Active MIDI Input=Midi Through Port-0

In my last use case, piloting Helm via Seq64 (JACK Transport + Native JACK MIDI), I can do something like:

  • (JACK MIDI) seq64: a2j Midi Through Port-0 -> a2j: Midi Through Port-0
  • (ALSA MIDI) Midi Through:Midi Through Port-0 -> Helm: Midi Through Port-0
  • seq64 track's GUI: select Midi Through

screenshot_20190201_163732

MarcoBodega avatar Feb 01 '19 15:02 MarcoBodega

Using the Helm deb provided on the homepage, I couldn't make it work even after following the instruction provided by MarcoBodega.

Compilation fails on Ubuntu Studio 20.04 with this error:

../../../JUCE/modules/juce_graphics/colour/juce_PixelFormats.h: In member function ‘juce::uint8& juce::PixelARGB::getAlpha()’:
../../../JUCE/modules/juce_graphics/colour/juce_PixelFormats.h:116:77: error: cannot bind packed field ‘((juce::PixelARGB*)this)->juce::PixelARGB::<anonymous>.juce::PixelARGB::<unnamed union>::comps[3]’ to ‘juce::uint8&’ {aka ‘unsigned char&’}
  116 |     forcedinline uint8& getAlpha() noexcept           { return comps [indexA]; }
      |                                                                ~~~~~~~~~~~~~^

anagram3k avatar Jun 08 '20 03:06 anagram3k

I'm having similar issues getting Helm to run standalone. I did have success at some point using qjackctl and routing my MIDI controller into Helm, and then Helm audio out to my soundcard. I'm not sure what changed, but I'm no longer able to do that; Helm only shows Jack audio inputs.

While messing around with Carla I discovered that I can use Helm as a plugin under the Rack tab, and then in Patchbay I can route MIDI through Carla like I used to be able to do with Helm as a standalone app.

lhanson avatar Oct 06 '21 21:10 lhanson