MIDI Output not matched to the corresponding input device (SCS.3d), 1.8.0beta2 Windows XP machine

Bug #625157 reported by Bastian Ulber on 2010-08-27
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
Mixxx
Undecided
David Gnedt
1.8
Undecided
David Gnedt

Bug Description

System: Mixxx 1.8.0 beta2, Windows XP Home on 1.6 GHz Atom netbook. Maya 44 USB soundcard, SCS.3d MIDI controller.
When making a fresh install of Mixxx 1.8.0 beta2 and configuring the SCS.3d it seems that there is a problem with routing the outgoing MIDI signals to the controller (no initialization). Control inputs are working (Play, Cue,...) but theres no visual feedback of the SCS.3d (all LEDs stay blue).
Mixxx developer pegasus isolated the corresponding code in the Windows XP mixxx.log:

    Debug: [Main]: Found output device # 0 Microsoft MIDI-Mapper
    Debug: [Main]: Found output device # 3 USB-Audiogerät
    Debug: [Main]: Found output device # 4 Microsoft GS Wavetable SW Synth
    Debug: [Main]: Found output device # 5 To SCS.3 DaRouter
    Debug: [Main]: Found input device # 1 USB-Audiogerät
    Debug: [Main]: Starting script engine with output device ""

Here´s the link to the discussion in the mixxxx forum: http://www.mixxx.org/forums/viewtopic.php?f=3&t=1598
I also attached the complete mixxx.log and in addition a log of a working Mac OSX configuration (both in one file: mixxx_logs.txt).

Bastian Ulber (ulberbast) wrote :
Albert Santoni (gamegod) wrote :

I think this was fixed in the 1.8 branch a few weeks ago:
http://bazaar.launchpad.net/~mixxxdevelopers/mixxx/release-1.8.x/revision/2509

We accepted a patch that matches input/output device names by trimming "To" and "From", which should fix your problem with DaRouter.

Look for this to be fixed in our next release!

Thanks,
Albert

Changed in mixxx:
status: New → Fix Committed

No, this isn't related to that. Notice that the device in question is just called "USB Audio Device" no "to" or "from" involved. (Ignore the DaRouter stuff from the user's log...he just happens to have it installed. Mixxx is supposed to work directly with the SCS.3d regardless.) Something's not right in the matching code.

Changed in mixxx:
status: Fix Committed → New

Maybe a character encoding issue, since in this particular case it's not English? "USB-Audiogerät"

Albert Santoni (gamegod) wrote :

Ok, you might be right. I definitely see a string encoding problem in the code that could cause that garbled string. We're just taking some string from PortMidi verbatim, without caring about the character encoding. Unfortunately, the PortMidi docs say nothing about character encoding, so I sent an email to Roger from PortMidi, and he said "The name string is system-dependent". That's not great. I need to dig into the PortMidi code to see what each native MIDI API returns the device name as and verify their string encodings. I may even end up submitting a patch to PortMidi to make it consistent. Even in that case, I'd still need to fix the encoding interpretation in Mixxx, so there's definitely a real bug here.

It's on my TODO list, don't think it should be too hard to fix.

David Gnedt (lxp13) wrote :

It may be possible that this bug is already fixed with my patch because if you look at the old code the output device name is converted to utf8 whereas the input device name is not converted. I have changed this behaviour with the patch as it wasn't coherent to me.

The corresponding commit:
http://bazaar.launchpad.net/~mixxxdevelopers/mixxx/release-1.8.x/revision/2509

One thought about the PortMidi character encoding problem: I think different character encodings between native MIDI APIs doesn't really matter, because I suppose input and output devices are provided by the same native MIDI API, which should use the same encoding for both devices.
Just my 2cents. I don't know anything about PortMidi.

Ok good. Bastian, are you able to build Mixxx and try this out? (I can't reproduce it myself in any version.) If not, I'll make a Windows build with David's patch included and see if it fixes your problem.

Changed in mixxx:
assignee: nobody → Pegasus (pegasus-renegadetech)
Bastian Ulber (ulberbast) wrote :

Would be better if you build it pegasus, as it would take too much time for me to dig into it. just let me know when you are ready!

Ok, the 1.8.0 final is built and has this patch included, so let me know if this is still an issue for you. Thanks for your patience.

Changed in mixxx:
assignee: Pegasus (pegasus-renegadetech) → David Gnedt (lxp13)
status: New → Fix Committed
Bastian Ulber (ulberbast) wrote :

OK, great. I will install as soon as it is available for download!

Bastian Ulber (ulberbast) wrote :

Looks like the patch is solving this issue, on first look everything works as desired!

Awesome, great to hear. (Also try renaming/deleting your config file and see if it still works correctly on first run.)

RJ Skerry-Ryan (rryan) on 2010-10-05
Changed in mixxx:
status: Fix Committed → Fix Released
Bastian Ulber (ulberbast) wrote :

It also works after deleting the config file!

To post a comment you must log in.
This report contains Public information  Edit
Everyone can see this information.

Other bug subscribers

Bug attachments