LMMS / lmms

Cross-platform music production software
https://lmms.io
GNU General Public License v2.0
7.99k stars 995 forks source link

ZynAddSubFX Portament not working #3936

Open superjosh364 opened 6 years ago

superjosh364 commented 6 years ago

The portamento on the ZASFX front page doesn't work for the range 0-64, but if you turn it above 64 it works fine.

screen shot 2018-02-11 at 12 15 11 am

zonkmachine commented 6 years ago

but if you turn it above 64 it works fine.

It is portamento there from 64 and up but it's the same level. It sounds like we're sending an on/off message instead of a level value.

zonkmachine commented 6 years ago

Right. What we have implemented in lmms is midi control message 65, portamento on/off. There are three other control messages for portamento. 5, 37 and 84. In the midi standard boolean values are realized with a value of 0-127, the lower half of a byte, where 0-63 is off and 64-127 is on. Midi standard control messages: https://www.midi.org/specifications/item/table-3-control-change-messages-data-bytes-2 ZASFX, Enable or disable portamento (scroll down for the rest of the portamento code): https://github.com/LMMS/lmms/blob/stable-1.2/plugins/zynaddsubfx/zynaddsubfx/src/Params/Controller.h#L55:L58

musikBear commented 6 years ago

It has been so ever. There has never been a gradual porta control, so this ticket is a feature request, not bug

zonkmachine commented 6 years ago

It has been so ever

You're probably right there.

enp2s0 commented 6 years ago

Maybe we could replace the knob with a toggle? I assume there is some technical reason for implementing the portamento control as an on/off instead of a gradual control.

superjosh364 commented 6 years ago

Well, if you have a portament knob, it usually determines the amount of time the pitch glides from one note to another. So there should be a toggle switch to turn it on, and then a knob for adjusting the length of the portamento.

Spekular commented 6 years ago

From what I've seen, there tends to be a single knob w/ no toggle. Setting the portamento time to 0 naturally turns it off.

On Feb 9, 2018 20:50, "Josh" notifications@github.com wrote:

Well, if you have a portament knob, it usually determines the amount of time the pitch glides from one note to another. So there should be a toggle switch to turn it on, and then a knob for adjusting the length of the portamento.

— You are receiving this because you are subscribed to this thread. Reply to this email directly, view it on GitHub https://github.com/LMMS/lmms/issues/3936#issuecomment-364544149, or mute the thread https://github.com/notifications/unsubscribe-auth/AIgVmtJu43ZmRpmVYPr6bZu19S_JR4ECks5tTKGigaJpZM4QRehc .

enp2s0 commented 6 years ago

@Spekular @superjosh364 What I mean is that if there is no way to access the actual portamento value, we should replace it with an on/off toggle. If we can control that value, by all means do it.

musikBear commented 6 years ago

its just because the 'wrong' controller (red circle) were selected for the ui zynporta It should be time.t (green circle). But as you can see, there are more advanced porta-settings available. Perhaps the dial could be preserved, but default 'grayed-out' meaning no-porta. if enabled with left-click, time.t could be changed. That way the current ui would not have to change drastically.

There is also all the realstate mentioned in #1965

zonkmachine commented 6 years ago

Poking this one a bit in: https://github.com/LMMS/lmms/pull/4167