Jump to content

MIDI Program Change message bug (SOLVED)


John Darrow

Recommended Posts

Ok found out another way, luckily there's the Sekaiju! :) With it, I can see the duplicate Program Change events though both are set correctly to Vibraphone or whatever I set in there, so that seem normal since I was working in a *.cwp file first and then saved as midi file. The only quirk I've noticed is that in the track header, if I choose MIDI Channel = None and save as a midi file, the whole PC event don't appear in the midi file at all (it may be intentional though), there will be only the second one, that was there a bit later in the event list at exactly same position where I have put it. And if I choose any MIDI Channel in the header, the PC event will appear in midi file but always exactly at position 1:1:000. Hmm, not sure how is that suppose to work with GS/XG modules that used to receive sysEx reset at the beginning.

So for the moment I only could check if exporting a midi file is working same way that you see. To be able to check what is Cakewalk sending in realtime I would need to install MIDI-OX here, but I'll rather do it another day, cause I'm right now going through the ugly covid and my willing to live is low ATM. But I see Mark wants to see your project file so you're in good hands.👍

Edited by chris.r
Link to comment
Share on other sites

9 hours ago, John Vere said:

What happens when you delete that Normal from the event list. My guess is it will now work. I've never used that event. You set the Bank to NONE in the inspector. Choose a patch and it should work. Works for me on Yamaha, Roland and Korg outboard synths. 

Unfortunately it doesn't make any difference.

Link to comment
Share on other sites

3 hours ago, msmcleod said:

@John Darrow - can you PM me a copy of your project so we can take a look?

 I started with a blank project, adding a single MIDI track and no midi data. The file below was made like that. Clicking on a patch name in the header sends the two PC messages. Inserting a single PC event using INSERT Bank/Patch change  from the menu gives the same result. It appears as one event in the list but two are transmitted. All of my external hardware is disconnected. If I capture the raw data via MIDI-OX it receives C0 0B ,  C0 00

I really appreciate your efforts to assist me. I now think that I have an unusual installation problem and you will not be able to duplicate it. I have tried uninstalling/reinstalling. Next I will try a complete uninstall, removing registry entries.

MidiPCTest.cwp

Link to comment
Share on other sites

BTW i dig some more just to see something and indeed, if I set a sysEx reset at the beginning of a midi file, Cakewalk will automatically shift all events by an arbitrary amount of ticks, including the Program Change from 1:1:000, so that should work ok. The thing about it that terrifies me though, is that such an imposed intelligence, where Cakewalk is implying a common standard and shifting midi events back and forth at it's will, in any non-standard scenarios like for example when using less-known hardware synths that use their own proprietary set of MIDI rules, can lead to a shot in the foot. *I am in no full control of where exactly my non-standardized midi events are going to take place in the resulting midi file.*

But I realize that's already too much of digression from the topic so sorry about it. I just wanted to vocalize that concern since I was already at it.

Link to comment
Share on other sites

56 minutes ago, chris.r said:

I'm right now going through the ugly covid.

Sorry to hear that Chris. I just had the jab, thankfully. 

I get the same results that you see except for the addition PC message. All PC messages are always immediately followed by C0 00 (PC message patch 0). I never see a single message.

  • Like 1
Link to comment
Share on other sites

1 minute ago, John Darrow said:

Sorry to hear that Chris. I just had the jab, thankfully. 

I get the same results that you see except for the addition PC message. All PC messages are always immediately followed by C0 00 (PC message patch 0). I never see a single message.

Thanks. Glad you've got away with the jab.

I'll download the project also, to see it here on my side. Curious what's going on. Cheers

Link to comment
Share on other sites

8 hours ago, John Darrow said:

 I started with a blank project, adding a single MIDI track and no midi data. The file below was made like that. Clicking on a patch name in the header sends the two PC messages. Inserting a single PC event using INSERT Bank/Patch change  from the menu gives the same result. It appears as one event in the list but two are transmitted. All of my external hardware is disconnected. If I capture the raw data via MIDI-OX it receives C0 0B ,  C0 00

I really appreciate your efforts to assist me. I now think that I have an unusual installation problem and you will not be able to duplicate it. I have tried uninstalling/reinstalling. Next I will try a complete uninstall, removing registry entries.

MidiPCTest.cwp 145.57 kB · 1 download

Ok, it's as I suspected.  The track's MIDI Program change is being sent out as well as the one in the MIDI clip.

Setting the Track's MIDI Program change to none fixes the issue:
image.png.29fa48b46d0e40c1f97ad0687d3b06f8.png
 

  • Great Idea 1
Link to comment
Share on other sites

11 hours ago, msmcleod said:

Ok, it's as I suspected.  The track's MIDI Program change is being sent out as well as the one in the MIDI clip.

Setting the Track's MIDI Program change to none fixes the issue:

 

Not for me.  I know that the PC message is sent out twice but each time 2 messages are sent out on my system, 4 in total. The second and fourth messages are always PC 0

Link to comment
Share on other sites

11 hours ago, sjoens said:

S7 = Sonar 7.

If both S7 & CbB projects are set up exactly the same using the same .mid file with different results, wouldn't one conclude the 2 programs are handing things differently?

Yes. This exactly describes my experience. Identical files, two different results.

Link to comment
Share on other sites

I FOUND THE FIX!!!

The bug went away when I changed the  MIDI Driver Mode to MME (in MIDI Playback and Recording preferences). It was previously set to UWP.

I don't know why this fixes it. Does anyone else see this problem?

Many thanks for everyone's contributions. 

  • Like 2
Link to comment
Share on other sites

  • John Darrow changed the title to MIDI Program Change message bug (SOLVED)
42 minutes ago, John Darrow said:

I FOUND THE FIX!!!

The bug went away when I changed the  MIDI Driver Mode to MME (in MIDI Playback and Recording preferences). It was previously set to UWP.

I don't know why this fixes it. Does anyone else see this problem?

Many thanks for everyone's contributions. 

Interesting... strange, because Cakewalk follows the exact same code path right up until it calls into the Windows API. Only at that point does it decide whether to make a standard MME call or a UWP call.

Maybe it's a Windows UWP issue, or perhaps a specific MIDI driver issue when using it under UWP.

Personally, because I use older MIDI interfaces (e.g. the original MidiMan MidiSport 8x8), I always use MME.

Link to comment
Share on other sites

  • 9 months later...

 

Hi,

Just wanted to chime in to say that I’ve encountered the same Program Change issue with UWP and reverting to MME solved it.

Unfortunately, I also use a Bluetooth MIDI interface which is only supported with UWP. Not an ideal situation…

@msmcleod If this is a Microsoft bug, hope you can report it upstream.

I’m running BandLab Cakewalk 2021.11 (Build 018, 64 bit) under Microsoft Windows 10 21H1 (19043.1387).

Link to comment
Share on other sites

  • 5 months later...

I just stumbled on this post, after 2 days straight pulling my hair out. DISGUSTING! Unbelievable! What a crap thing to program into

this Cakewalk. These idiots! Unless 'I' can find the solution around this 'intended flaw'? It will be deleted!!

Appreciate yer work, my friend.

  • Meh 2
Link to comment
Share on other sites

41 minutes ago, JJ said:

I just stumbled on this post, after 2 days straight pulling my hair out. DISGUSTING! Unbelievable! What a crap thing to program into

this Cakewalk. These idiots! Unless 'I' can find the solution around this 'intended flaw'? It will be deleted!!

Appreciate yer work, my friend.

HUH?  I read the whole thread just to get to your new post.  It seems that the problem was solved when users changed UWP to MME. With my older gear, UWP causes issues, so I also use MME like others mentioned above.

You seem to be calling Cakewalk idiots.  I thought it was a Windows issue. ("Windows 10 introduced the Universal Windows Platform (UWP), which provides a common app platform on every device that runs Windows.")   So what is "It" that you will be deleting? Windows 10?

PS: Good luck pasting your hair back in.  😉  

  • Haha 2
Link to comment
Share on other sites

6 hours ago, JJ said:

I just stumbled on this post, after 2 days straight pulling my hair out. DISGUSTING! Unbelievable! What a crap thing to program into

this Cakewalk. These idiots! Unless 'I' can find the solution around this 'intended flaw'? It will be deleted!!

Appreciate yer work, my friend.

What's disgusting is creating a whole account just so you can dredge up a 6-month-old solved post and display your lack of reading comprehension.

Not to mention personal insults....

Edited by bdickens
Link to comment
Share on other sites

Please sign in to comment

You will be able to leave a comment after signing in



Sign In Now
×
×
  • Create New...