fyngyrz
fyngyrz

Reputation: 2658

RtMIDI - works under OSX, does not receive under Windows

RtMIDI under qt 4.7; using port 0 for midi in and midi out ports, using MIDI channel 1 to send and receive.

This works perfectly under OSX. Sends and receives, no issues whatsoever.

It compiles fine under Windows (running in a VMware Fusion Windows XP VM on my Mac), and the app can SEND messages to my control surface, but receives nothing... I never get a callback, so no midi input. Both the open of the MIDI input and output devices seem to go ok, no errors raised.

I can switch back to OSX, run the same app (compiled for OSX of course) and everything works again with no config changes on the control surface.

so : The surface is connecting and opening (it receives MIDI under windows); but I get nothing FROM it.

Am I missing something here?

TIA

Upvotes: 2

Views: 980

Answers (3)

gumtown
gumtown

Reputation: 46

Under windows device 0 is always the windows media player midi synth, midi devices start from device 1. You can make the midi port selection by name if you read the port names then select the index value offset, that allows for the changing port positions when other devices are added/removed so your program selects the same default midi device.

Upvotes: 2

G Hx
G Hx

Reputation: 1147

Unlike OSX, Windows doesn't necessarily keep the input and output ports of the same device at the same ID/portNumber. Cool huh?

A config dialog is really helpful, but if you know one port then you can search through the port names of the opposite IO direction to get its counterpart.

Upvotes: 1

fyngyrz
fyngyrz

Reputation: 2658

Under Windows XP, the device opened for input needs to be device 1 (of 0...1)

Under Windows 7 starter, the device opened for output needs to be device 1 (of 0...1)

Under OSX, both input and output need to be zero.

That's all it was. A config dialog later, problem solved (well, at least handed over to the end user.)

RtMidi is a nice package, little short on documentation, but other than that, super.

Upvotes: 3

Related Questions