-
-
Notifications
You must be signed in to change notification settings - Fork 21.5k
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
If a midi device is in use, subsequent midi devices will not be listed in OS.get_connected_midi_inputs() #79811
Milestone
Comments
vgezer
pushed a commit
to vgezer/godot
that referenced
this issue
Jun 27, 2024
Aims for more consistent MIDI support across Windows, MacOS, Linux and to provide a base for adding MIDI drivers for other platforms. Reworks the MIDIDriverALSAMidi MIDI parsing implementation as a platform independent version in MIDIDriver::Parser. Uses MIDIDriver::Parser to provide running status support in MacOS MIDIDriverCoreMidi. Collects connected input names at open, ensuring devices indices reported in events match names in array returned from get_connected_inputs. Fixes godotengine#77035. Fixes godotengine#79811. With code review changes by: A Thousand Ships (she/her) <[email protected]>
sorascode
pushed a commit
to sorascode/godot-soras-version
that referenced
this issue
Jul 22, 2024
Aims for more consistent MIDI support across Windows, MacOS, Linux and to provide a base for adding MIDI drivers for other platforms. Reworks the MIDIDriverALSAMidi MIDI parsing implementation as a platform independent version in MIDIDriver::Parser. Uses MIDIDriver::Parser to provide running status support in MacOS MIDIDriverCoreMidi. Collects connected input names at open, ensuring devices indices reported in events match names in array returned from get_connected_inputs. Fixes godotengine#77035. Fixes godotengine#79811. With code review changes by: A Thousand Ships (she/her) <[email protected]>
Luis-Wong
pushed a commit
to Luis-Wong/godot
that referenced
this issue
Jul 26, 2024
Aims for more consistent MIDI support across Windows, MacOS, Linux and to provide a base for adding MIDI drivers for other platforms. Reworks the MIDIDriverALSAMidi MIDI parsing implementation as a platform independent version in MIDIDriver::Parser. Uses MIDIDriver::Parser to provide running status support in MacOS MIDIDriverCoreMidi. Collects connected input names at open, ensuring devices indices reported in events match names in array returned from get_connected_inputs. Fixes godotengine#77035. Fixes godotengine#79811. With code review changes by: A Thousand Ships (she/her) <[email protected]>
2nafish117
pushed a commit
to 2nafish117/godot
that referenced
this issue
Aug 5, 2024
Aims for more consistent MIDI support across Windows, MacOS, Linux and to provide a base for adding MIDI drivers for other platforms. Reworks the MIDIDriverALSAMidi MIDI parsing implementation as a platform independent version in MIDIDriver::Parser. Uses MIDIDriver::Parser to provide running status support in MacOS MIDIDriverCoreMidi. Collects connected input names at open, ensuring devices indices reported in events match names in array returned from get_connected_inputs. Fixes godotengine#77035. Fixes godotengine#79811. With code review changes by: A Thousand Ships (she/her) <[email protected]>
chryan
pushed a commit
to chryan/godot
that referenced
this issue
Aug 6, 2024
Aims for more consistent MIDI support across Windows, MacOS, Linux and to provide a base for adding MIDI drivers for other platforms. Reworks the MIDIDriverALSAMidi MIDI parsing implementation as a platform independent version in MIDIDriver::Parser. Uses MIDIDriver::Parser to provide running status support in MacOS MIDIDriverCoreMidi. Collects connected input names at open, ensuring devices indices reported in events match names in array returned from get_connected_inputs. Fixes godotengine#77035. Fixes godotengine#79811. With code review changes by: A Thousand Ships (she/her) <[email protected]>
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Godot version
4.1.stable
System information
Windows 10
Issue description
When attempting to open midi devices, if a device is in use with a lower index than one that's not in use, the list of devices will not show the second device.
Not sure why the error says there's not enough memory. The device is simply in use (and for some dumb reason, Windows won't allow more than one application use midi devices).
Problem code:
Note that the connected_sources only has the midi device added if there are no errors opening it, which means the device at index 0 gets skipped and inserting at index 1 or higher gives errors. The midi device still functions, but it's not possible to get the name of it.
Side note: It would be good to be able to get the list of midi devices without opening all of them, then explicitly open the desired one. In my case, I only want to listen to 1 specific device.
Steps to reproduce
In Windows, have 2 midi devices plugged in, such as keyboards. Using a DAW, such as Reaper, have the first midi device in use. Run Godot with the below script to open the and print devices. Note that the list is empty and there are errors.
Minimal reproduction project
The text was updated successfully, but these errors were encountered: