I have created an application that reads from a USB device.
It needs to act as a midi cable to control virtual devices that accept midi input. In applications such as Cubase, Guitar Rig, or any such virtual instrument application that accepts MIDI control from external source.
What is the best API to create a virtual midi device that appears as a general midi device plugged into a midi device port.
My first guess was to create a kernel mode driver that would emulate a usb midi using portcls.sys but kernal mode development is not much fun and really time consuming.
Is there a nice easy way to accomplish this using a windows user mode API?
A kernel level driver is need to ensure the lowest latency and highest compatibility with other software.
The Dmusuart, Ddksynth, and Fmsynth samples in the Windows DDK show how to build miniport drivers that interface with DirectMusic and MIDI APIs.
Check the microsoft.public.development.device.drivers newsgroup if you need more help in Windows DDK.