[wdmaudiodev] Re: Developing a "simple" user mode installable MIDI driver.

  • From: "Matthew van Eerde" <dmarc-noreply@xxxxxxxxxxxxx> (Redacted sender "Matthew.van.Eerde" for DMARC)
  • To: "wdmaudiodev@xxxxxxxxxxxxx" <wdmaudiodev@xxxxxxxxxxxxx>
  • Date: Wed, 23 May 2018 15:38:59 +0000

Windows doesn’t support user-mode drivers for custom MIDI hardware; only Kernel 
Streaming (usbaudio.sys or a third-party driver) and Bluetooth MIDI are 
supported.


  *   DriverProc function

This kind of solution is supported for the audio compression manager (see 
acmDriverAdd) but not for MIDI.

Can you add a feature suggestion for custom user-mode MIDI endpoints in the 
Feedback Hub, and share a link?
https://blogs.msdn.microsoft.com/matthew_van_eerde/2016/09/26/report-problems-with-logs-and-suggest-features-with-the-feedback-hub/

________________________________
From: wdmaudiodev-bounce@xxxxxxxxxxxxx <wdmaudiodev-bounce@xxxxxxxxxxxxx> on 
behalf of Chris Hubbard <chris@xxxxxxxxxxxxxxxxx>
Sent: Tuesday, May 22, 2018 8:44:21 PM
To: wdmaudiodev@xxxxxxxxxxxxx
Subject: [wdmaudiodev] Developing a "simple" user mode installable MIDI driver.

Hi All,

I develop a range of applications which communicate with external equipment via 
MIDI.

However, there are a number of devices which my app also communicates with that 
have different interfaces. For these devices, I provide “translator” apps, 
which convert the standard MIDI messages into whatever the device needs. The 
user then needs to “connect” the translator app to my main application using 
their preferred MIDI loop back driver.

I would however like to make things a bit simpler for my users, and it would 
seem that one way to do this would be for the translators to become user mode 
installable MIDI drivers. This would then result in the translators appearing 
in the main application’s list of available MIDI ports.

My research so far has suggested that they need to become DLLs, which include a 
DriverProc function. What about all the other functions like midiInGetDevCaps? 
Do they have their entry points, or are they somehow called via DriverProc?

Are they any samples anywhere I can download?

Thank you in advance,

Kind Regards,
Chris Hubbard,
CH Sound Design.
www.chsounddesign.com

Sent from my abacus.

Other related posts: