View Issue Details

IDProjectCategoryView StatusLast Update
0001115OpenMPTAudio I/Opublic2023-09-11 12:22
ReporterSaga Musix Assigned To 
PrioritynormalSeverityfeatureReproducibilityN/A
Status newResolutionopen 
Target VersionOpenMPT 1.32 / libopenmpt 0.8 (goals) 
Summary0001115: Support Windows 10 UWP MIDI API
Description

The new UWP MIDI API in Windows 10 supports features such MIDI over Bluetooth and being able to open a port from more than one application at the same time.
A sensible approach might be to use this C wrapper, which allows the API to be used in a plain Win32 application when available, and fall back to WinMM if Windows 10 is not available: https://github.com/stammen/winrtmidi

TagsNo tags attached.
Has the bug occurred in previous versions?
Tested code revision (in case you know it)

Activities

manx

manx

2023-07-28 15:48

administrator   ~0005767

https://github.com/jcelerier/libremidi/ has a Windows UWP backend

Saga Musix

Saga Musix

2023-07-28 15:59

administrator   ~0005768

Support for RtMidi was also merged recently: https://github.com/thestk/rtmidi/pull/299

Saga Musix

Saga Musix

2023-09-10 17:24

administrator   ~0005779

RtMidi has been updated to v6.0.0 in our repository, which means that UWP support can now be enabled for testing purposes.

Saga Musix

Saga Musix

2023-09-10 19:08

administrator   ~0005780

An odd side effect of turning on UWP MIDI support in RtMidi makes the ASSERT(oleinit != FALSE); assertion in CTrackApp::InitInstanceEarly fire. Ignoring that assertion, it can be observed that e.g. MFC falls back to using the old-style file dialogs.

Saga Musix

Saga Musix

2023-09-11 12:22

administrator   ~0005781

It appears that output port names (but not input port names, mysteriously!) from devices that only implement the MM API are butchered when they are exposed through the UWP API. RtMidi tries to work around this but it doesn't always succeed. This is definitely one reason for not completely replacing MM with UWP when both are available.

Issue History

Date Modified Username Field Change
2018-04-18 12:34 Saga Musix New Issue
2021-11-17 17:26 manx Target Version OpenMPT 1.?? (long term goals) => OpenMPT 1.31.01.00 / libopenmpt 0.7.0 (upgrade first)
2023-04-10 08:24 manx Target Version OpenMPT 1.31.01.00 / libopenmpt 0.7.0 (upgrade first) => OpenMPT 1.32 / libopenmpt 0.8 (goals)
2023-07-28 15:48 manx Note Added: 0005767
2023-07-28 15:59 Saga Musix Note Added: 0005768
2023-09-10 17:24 Saga Musix Note Added: 0005779
2023-09-10 19:08 Saga Musix Note Added: 0005780
2023-09-11 12:22 Saga Musix Note Added: 0005781