-
Notifications
You must be signed in to change notification settings - Fork 19
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
GUI: use the MIDI notes provided in the settings #129
Conversation
…e treated as valid ones based on Pull Request #129
Interesting concept. I've implemented my own version on a update_midi_map branch. I only update on settings load since MIDI notes are very rarely changed and in that case it is ok for me to get the updated MIDI notes after a restart of the GUI. Anyway, it does not work correctly, unfortunately. Since each pad defines all four MIDI notes but usually only uses a subset of these. But the midi map update assumes that all MIDI notes are valid. |
Anyway, it does not work correctly, unfortunately. Since each pad defines all four MIDI notes but usually only uses a subset of these. But the midi map update assumes that all MIDI notes are valid.
You need to set the unused MIDI notes to 0 or so, yes. Otherwise the reverse mapping isn't unique and it cannot distinguish the notes (the last mapped note is assumed to be the correct one).
|
MIDI note 0 cannot be used because it switches different choke methods, see #85. Also, auto pad selection does not work anymore with your implementation. I have fixed both on my branch and it seems to work OK. Can you please test my branch and give some feedback if you are happy with that implementation, too? |
I have fixed both on my branch and it seems to work OK. Can you please test my branch and give some feedback if you are happy with that implementation, too?
Yes, it works fine, thanks!
An unrelated issue I ran into:
Traceback (most recent call last):
File "/home/user/edrum/edrumulus/tools/./edrumulus_gui.py", line 645, in <module>
midiin, port_name_in = rtmidi.open_midiinput([s for s in rtmidi.MidiIn().get_ports() if in_name in s][0], client_name="EdrumulusGUI")
AttributeError: module 'rtmidi' has no attribute 'open_midiinput'
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/home/user/edrum/edrumulus/tools/./edrumulus_gui.py", line 649, in <module>
raise Exception("No native Edrumulus USB device (e.g., Teensy) nor loopMIDI driver found.")
rtmidi.open_midiinput doesn't exist, it's rtmidi.midiutil.open_midiinput (or just use the respective rtmidi function for which it's a wrapper).
You also have to import rtmidi.midiutil, if you want to use it.
|
Argh... That always happens if you change something and do not test it. It always fails :-). I'll fix it. |
Should be fixed now. |
FYI: Everything is on main branch now. I deleted my intermediate branch. |
Nice, thanks!
Then my PR can be closed.
|
No description provided.