Linux: Redux computer keyboard does not work in Ardour

Hello,

When the on-screen Redux keyboard keys are clicked, they show as such by becoming grey and a sound is made. When the computer keyboard is used, the corresponding on-screen key becomes grey, but no sound is heard. Seems (sounds) like a bug. Redux demo version, Linux Mint 17, Redux used as a plugin for Ardour. External MIDI keyboard works fine.

Edit: As I follow along the Quick Start, the Esc and TAB keys do not work, to edit and move along columns, as they do in Renoise. I think it would be safe to say that the computer keyboard does not work at all, even though, when trying to play a sample, the corresponding key is greyed out (eg. pressing ā€˜zā€™ will make the hexagonal on-screen ā€˜zā€™ become grey). This means that Redux recognizes the computer keyboard, and that thereā€™s a problem further down in processing. As such, it is not possible to buy Redux with this problem.

I do have Renoise 3 on the same machine and everything works just fine.

Thatā€™s unfortunately a problem or ā€œmissing implemented featureā€ in later versions of Ardour. There is an option to forward keys to plugin windows in ardour, but it seems that itā€™s not implemented or working for VSTs.

Is there a way to forward keys to plugins in renoise? I havenā€™t tried redux in renoise when if you have a synth plugin window focused you canā€™t play that synth.

What is misleading here is that when the ā€˜zā€™ computer key is pressed, the Redux hexagonal ā€˜zā€™ button is greyed. It means that the computer keyboard key press is recognized by Redux, isnā€™t it ? Which would mean in turn that Ardour does not block the key, would it ? If there was no reaction on Redux part I could understand that keys are blocked. But there is reaction. Are you certain Ardour has a blocking role and if so, can you explain technically what it would be. This is Ardour 4.2.0.

Mevia just out of curiosity try these stepsā€¦

First of all, get a simple project saved that just uses one instance of Redux on a midi track (and an audible instrument in Redux) in Ardour. Close everything and start againā€¦

Load in Ardour

Load up your simple session.

Now very careful here (read my post completely before trying thisā€¦)

In the mixer view youā€™ll have an instance of Redux on your track. Click your right mouse button on it and go to the option ā€˜Editā€™ (Donā€™t double click on the Redux insert to open up the GUI !!!)

Now the Redux GUI should open with the instrument AND you will see that popup box stating that this is a demo version.

Donā€™t click anywhere with the mouse!!! AND Donā€™t move the Redux window!! (This is really important!)

BUT, make sure your mouse pointer is floating somewhere inside the Redux window.

Now press keys on your keyboard. Does it play the sample sound?

It does for me. Move your mouse pointer outside the window. Now for me it doesnā€™t sound (but the GUI still responds as you say.)

Also as soon as I move the Redux GUI window, thatā€™s it. It never sounds again.

[Edit: Ah, TakTik found the possible issue with Ardour not implementing the LXVSTPluginUI::forward_key_event function :)]

[Interesting though as when the Redux window initially pops up, you do actually get ā€˜Key Eventsā€™ sent (and it does work as intended.) But if the user clicks on the title bar or moves the window, Ardour/GTK reassess itself and stops sending the key events.]

What is misleading here is that when the ā€˜zā€™ computer key is pressed, the Redux hexagonal ā€˜zā€™ button is greyed. It means that the computer keyboard key press is recognized by Redux, isnā€™t it ? Which would mean in turn that Ardour does not block the key, would it ? If there was no reaction on Redux part I could understand that keys are blocked. But there is reaction. Are you certain Ardour has a blocking role and if so, can you explain technically what it would be. This is Ardour 4.2.0.

If the hexagonal Z is reacting on the keypress it should work, yes. Have tested Redux in Ardour 4.0.something only, will check 4.2.0.

Regarding the not implemented function I meant ā€œLXVSTPluginUI::forward_key_event (GdkEventKey*)ā€:

https://github.com/Ardour/ardour/blob/master/gtk2_ardour/lxvst_plugin_ui.cc

Also check the little keyboard icon on the top right of Ardourā€™s plugin UI.

Hi,

If I use the Fluxbox window manager, the computer keyboard does work.

Ardour-4.2.64

Mixbus-3.0.1508

But on KDE, Gnome, XFCE, it doesnā€™t.

Debian Jessie.

But there are seg faults from time to time. When saving a session with Redux loaded for example. Not always, thoughā€¦

Mevia just out of curiosity try these stepsā€¦

(ā€¦)

In the mixer view youā€™ll have an instance of Redux on your track. Click your right mouse button on it and go to the option ā€˜Editā€™ (Donā€™t double click on the Redux insert to open up the GUI !!!)

Now the Redux GUI should open with the instrument AND you will see that popup box stating that this is a demo version.

Donā€™t click anywhere with the mouse!!! AND Donā€™t move the Redux window!! (This is really important!)

BUT, make sure your mouse pointer is floating somewhere inside the Redux window.

Hi, canā€™t do that. Because Redux does not start in editor mode. I would tend to think that the computer keyboard would work also when Redux is not in editor mode, but it does not. I use KDE.

From what avoca said it looks like a desktop manager issue. Then I fear there might be a dead end. I know as a fact that Paul, Ardourā€™s creator does not hold KDE in high esteem at all. Any bug fix that is related to KDE would be difficult, I fear, from that side.

Also check the little keyboard icon on the top right of Ardourā€™s plugin UI.

Thanks for mentionning this. Although, even when itā€™s green, the computer keyboard still does not work. In both regular use, and the ā€˜edit useā€™ described by 4Tey. When trying with 4.2.0, please use a desktop manager such as KDE, or the ones that avoca listed.

Ah, the github link does not work.

I know as a fact that Paul, Ardourā€™s creator doe snto hold KDE in high esteem at all. Any bug fix that is related to KDE would be difficult, I fear, from that side.

If it is bug in ardour which can be replicated then Paul or rgareus will have no issue with trying to fix it. If it is something on the KDE side then thereā€™s not much he can do about it, report it to KDE.

If it is bug in ardour which can be replicated then Paul or rgareus will have no issue with trying to fix it. If it is something on the KDE side then thereā€™s not much he can do about it, report it to KDE.

So far the keystroke is received by Redux since the hexagonal on-screen key responds. It is not clear that after receiving it, a desktop manager would prevent subsequent handling within the Redux application. Any idea how this could be ?

Hi, canā€™t do that. Because Redux does not start in editor mode.

On the preferences GUI tab of Redux there is an option to allow Redux to start in a non compact mode so you can see the hex keyboard from startup.

My two centsā€¦ If I was writing a Redux and I came across this problem my first point of call would be to triple check my code, not assume that Linux, window managers, Ardour was the root cause of the problem. In other words, when I program something on a computer (and it doesnā€™t quite work) I ALWAYS assume Iā€™m in the wrong :slight_smile:

Yup. Am working on it but will need more time for this to compile, debug with the latest Ardour and co on various Window Managers and stuff.

Right and Wrong in a fuzzy environment like Linux desktops is impossible to define though. Itā€™s more about getting it ā€œworkingā€ in most of such environments instead of getting it ā€œrightā€ :wink:

Iā€™m sure youā€™ll do it sir. Youā€™re a better programmer than me :slight_smile:

Thanks very much, taktik :slight_smile:

Regarding the not implemented function I meant ā€œLXVSTPluginUI::forward_key_event (GdkEventKey*)ā€:
https://github.com/Ardour/ardour/blob/master/gtk2_ardour/lxvst_plugin_ui.cc

Also check the little keyboard icon on the top right of Ardourā€™s plugin UI.

Did a few more tests. The missing ā€œLXVSTPluginUI::forward_key_eventā€ implementation really seems to be the problem here:

Ardourā€™s window, which hosts the plugin window, grabs away key events, so Redux does not receive any key events. LXVSTPluginUI::forward_key_event is then responsible to forward the keys to the plugin window, when the plugin window is not a GTK window.

The hey keys in Reduxā€™ UI do light up, because they poll the keyboard state, ask the system which keys are currently held down - they do not reflect the state of key events that got received by Redux.

Iā€™m unfortunately not very familiar with GTK, especially not on Linux, so Iā€™d forward this to the Ardour devs. If someone here has some experience with GTK and Linux development, any help would be very apropriated. Of course weā€™re very interested to get this working.

Hi taktik,

Thank you for looking into this.

I might ask on the #ardour irc channel if they can have a look at this, if thatā€™s OK with you.

avoca

Hi taktik,

Thank you for looking into this.

I might ask on the #ardour irc channel if they can have a look at this, if thatā€™s OK with you.

avoca

Yes, that would be great. Or if they are aware of a workaround for us.

Just a thought. As a quick (only partial, as phrases would have to be edited with the mouse) side step around that unimplemented function for the moment. It may be possible to use VMPK (which turns your QWERTY into a piano keyboard) to send midi notes into ardour and then ultimately Redux :slight_smile:

Attachment 5917 not found.

Hereā€™s a post from the Ardour forum concerning the keyboard problem: https://community.ardour.org/node/15778#comment-50208

Are there any news about that issue on the Redux side or could any Redux dev comment on that?

Same issue is apparent with Reaper / Redux.