Re: [Rosegarden-user] Unwanted CCs - update
> On Thu, 5 Feb 2015 20:22:34 + > Abrolag wrote: > > [...] > I've tried attaching the MIDI version of my test file if anyone wants to > have a > look at it and see what happens. > Have looked at your test MIDI and let MidiEvent::print trace it out. Thank you, and also thank whoever created MidiEvent::print years ago. The one wrong-looking thing I see is that we never erase the msb and lsb variables. Once case MIDI_CTRL_CHANGE has set lsb or msb, case MIDI_PROG_CHANGE will consider it set to that value, forever, until case MIDI_CTRL_CHANGE sets another value. We don't aim lsb and msb at a specific channel, either, so other channels' MIDI_PROG_CHANGEs could be affected. My suspicion is that remembering lsb,msb after MIDI_PROG_CHANGE confuses later MIDI_PROG_CHANGEs that don't have bank controllers, and also we probably shouldn't share them between channels. Does this make sense to you? Tom Breton (Tehom) PS: Added a CC to the devel list. Does this still need to go to RG-user? -- Dive into the World of Parallel Programming. The Go Parallel Website, sponsored by Intel and developed in partnership with Slashdot Media, is your hub for all things parallel software development, from weekly thought leadership blogs to news, videos, case studies, tutorials and more. Take a look and join the conversation now. http://goparallel.sourceforge.net/ ___ Rosegarden-user mailing list Rosegarden-user@lists.sourceforge.net - use the link below to unsubscribe https://lists.sourceforge.net/lists/listinfo/rosegarden-user
Re: [Rosegarden-user] Unwanted CCs - update - !!!AHA!!!
> Perhaps I misunderstood your setup - are you reading a MIDI file in, it > contains bank changes, and when you play back they are messed up? Or they > show the wrong banks in the Instrument Parameter Panel? That would make > this code suspect, otherwise I'm afraid I don't see a connection. OK, catching up on my email, I read the other thread (without "AHA!"), so I see that is essentially what's going on. Now it's just nagging at me, if simply copying over the lsb and msb isn't right, what *is* supposed to happen? Or have we overlooked some minor mistake that corrupts the whole thing? Will look further, and look at the MIDI Abrolag sent - thank you for that. Tom Breton (Tehom) -- Dive into the World of Parallel Programming. The Go Parallel Website, sponsored by Intel and developed in partnership with Slashdot Media, is your hub for all things parallel software development, from weekly thought leadership blogs to news, videos, case studies, tutorials and more. Take a look and join the conversation now. http://goparallel.sourceforge.net/ ___ Rosegarden-user mailing list Rosegarden-user@lists.sourceforge.net - use the link below to unsubscribe https://lists.sourceforge.net/lists/listinfo/rosegarden-user
Re: [Rosegarden-user] Unwanted CCs - update - !!!AHA!!!
> I just had a nose around in MidiFile.cpp - without full hazmat too :) > > At line 1221 you have the start of a section that interprets bank changes. > This > is very risky as almost every synth maker has a different way of handling > them. > > Commenting out both the msb and lsb code appears to cure the problem. > > Can someone more knowledgeable have a look and see what other implications > there > may be? The first thing that jumps out at me is that it's part of convertToRosegarden, which imports MIDI into RG. It's not playing or exporting anything. Perhaps I misunderstood your setup - are you reading a MIDI file in, it contains bank changes, and when you play back they are messed up? Or they show the wrong banks in the Instrument Parameter Panel? That would make this code suspect, otherwise I'm afraid I don't see a connection. Tom Breton (Tehom) -- Dive into the World of Parallel Programming. The Go Parallel Website, sponsored by Intel and developed in partnership with Slashdot Media, is your hub for all things parallel software development, from weekly thought leadership blogs to news, videos, case studies, tutorials and more. Take a look and join the conversation now. http://goparallel.sourceforge.net/ ___ Rosegarden-user mailing list Rosegarden-user@lists.sourceforge.net - use the link below to unsubscribe https://lists.sourceforge.net/lists/listinfo/rosegarden-user
Re: [Rosegarden-user] Unwanted CCs - update - !!!AHA!!!
On Tue, 10 Feb 2015, D. Michael McIntyre wrote: > I was wondering about that, now that you mention it. Controller banks? > Does anything support more than 127 controllers? Are bank changes Controllers have standardized numbers - e.g. 7 is "master volume" - so the main issue isn't really that a single device has more than 127 controllers (although yes, some DO), but that there are more than 127 different kinds of controllers in the world. It's made worse by the fact that a single controller number only handles a 7-bit value, so if you need finer granularity than that, you need to assign two or more of the 127 controller numbers to the more and less significant chunks of a finer-grained value. And it's also true that controller numbers ended up being used for other things, such as selecting banks for the separate "program change" messages. The namespace of 127 controllers ran out very fast. -- Matthew Skala msk...@ansuz.sooke.bc.ca People before principles. http://ansuz.sooke.bc.ca/ -- Dive into the World of Parallel Programming. The Go Parallel Website, sponsored by Intel and developed in partnership with Slashdot Media, is your hub for all things parallel software development, from weekly thought leadership blogs to news, videos, case studies, tutorials and more. Take a look and join the conversation now. http://goparallel.sourceforge.net/ ___ Rosegarden-user mailing list Rosegarden-user@lists.sourceforge.net - use the link below to unsubscribe https://lists.sourceforge.net/lists/listinfo/rosegarden-user
Re: [Rosegarden-user] Unwanted CCs - update - !!!AHA!!!
On 02/10/2015 01:46 PM, Abrolag wrote: > I just had a nose around in MidiFile.cpp - without full hazmat too :) > > At line 1221 you have the start of a section that interprets bank changes. > This > is very risky as almost every synth maker has a different way of handling > them. I was wondering about that, now that you mention it. Controller banks? Does anything support more than 127 controllers? Are bank changes used for something else? Was that code meant to tackle a known case? The answer to all those questions is "probably" but yet I somehow doubt our good-intentioned code even works anyway. The fastest way to find out whether anybody is using something or not is to disable it and wait for the complaints. H. -- D. Michael McIntyre -- Dive into the World of Parallel Programming. The Go Parallel Website, sponsored by Intel and developed in partnership with Slashdot Media, is your hub for all things parallel software development, from weekly thought leadership blogs to news, videos, case studies, tutorials and more. Take a look and join the conversation now. http://goparallel.sourceforge.net/ ___ Rosegarden-user mailing list Rosegarden-user@lists.sourceforge.net - use the link below to unsubscribe https://lists.sourceforge.net/lists/listinfo/rosegarden-user
Re: [Rosegarden-user] Unwanted CCs - update - !!!AHA!!!
I just had a nose around in MidiFile.cpp - without full hazmat too :) At line 1221 you have the start of a section that interprets bank changes. This is very risky as almost every synth maker has a different way of handling them. Commenting out both the msb and lsb code appears to cure the problem. Can someone more knowledgeable have a look and see what other implications there may be? -- Will J Godfrey http://www.musically.me.uk Say you have a poem and I have a tune. Exchange them and we can both have a poem, a tune, and a song. -- Dive into the World of Parallel Programming. The Go Parallel Website, sponsored by Intel and developed in partnership with Slashdot Media, is your hub for all things parallel software development, from weekly thought leadership blogs to news, videos, case studies, tutorials and more. Take a look and join the conversation now. http://goparallel.sourceforge.net/ ___ Rosegarden-user mailing list Rosegarden-user@lists.sourceforge.net - use the link below to unsubscribe https://lists.sourceforge.net/lists/listinfo/rosegarden-user
Re: [Rosegarden-user] Unwanted CCs - update
On Mon, 09 Feb 2015 20:30:31 -0500 "D. Michael McIntyre" wrote: > On 02/09/2015 05:10 PM, Abrolag wrote: > > > I've tried attaching the MIDI version of my test file if anyone wants to > > have a > > look at it and see what happens. > > I'm piddling around... > > > The bank changes (CC32) in order should be: > > CH1, 105 > > CH1, 105 > > CH1, 7 > > CH2, 110 > > CH3, 105 > > CH1, 5 > > 105 > 110 > 105 > 105 > > Lots of weird things going on here. First, there was no 7 or 5 in the > data. Second, we map either 110 or 105 to 255, sure enough. > > I didn't sort it out before hitting the limit of my attention span. > Stuff is created in MidiFile.cpp, but who what where when and why > remains a mystery to untangle, if anyone is in the mood for untangling > mysteries. > > I, apparently, am not as much in that mood as I first thought. A bit of extra info. I had the bright idea of using aplaymidi to pretend to be a keyboard and send the data with Rosegarden in record mode. All CCs came through quite correctly, so it is *only* import that has the problem. -- Will J Godfrey http://www.musically.me.uk Say you have a poem and I have a tune. Exchange them and we can both have a poem, a tune, and a song. -- Dive into the World of Parallel Programming. The Go Parallel Website, sponsored by Intel and developed in partnership with Slashdot Media, is your hub for all things parallel software development, from weekly thought leadership blogs to news, videos, case studies, tutorials and more. Take a look and join the conversation now. http://goparallel.sourceforge.net/ ___ Rosegarden-user mailing list Rosegarden-user@lists.sourceforge.net - use the link below to unsubscribe https://lists.sourceforge.net/lists/listinfo/rosegarden-user
Re: [Rosegarden-user] Unwanted CCs - update
On 02/09/2015 05:10 PM, Abrolag wrote: > I've tried attaching the MIDI version of my test file if anyone wants to have > a > look at it and see what happens. I'm piddling around... > The bank changes (CC32) in order should be: > CH1, 105 > CH1, 105 > CH1, 7 > CH2, 110 > CH3, 105 > CH1, 5 105 110 105 105 Lots of weird things going on here. First, there was no 7 or 5 in the data. Second, we map either 110 or 105 to 255, sure enough. I didn't sort it out before hitting the limit of my attention span. Stuff is created in MidiFile.cpp, but who what where when and why remains a mystery to untangle, if anyone is in the mood for untangling mysteries. I, apparently, am not as much in that mood as I first thought. -- D. Michael McIntyre -- Dive into the World of Parallel Programming. The Go Parallel Website, sponsored by Intel and developed in partnership with Slashdot Media, is your hub for all things parallel software development, from weekly thought leadership blogs to news, videos, case studies, tutorials and more. Take a look and join the conversation now. http://goparallel.sourceforge.net/ ___ Rosegarden-user mailing list Rosegarden-user@lists.sourceforge.net - use the link below to unsubscribe https://lists.sourceforge.net/lists/listinfo/rosegarden-user
Re: [Rosegarden-user] Unwanted CCs - update
On Thu, 5 Feb 2015 20:22:34 + Abrolag wrote: > Just tried build 13868 and can confirm that it now sends the correct data. > > However on *importing* a midi file CC32 values are set as either 0 or 255. > This > is bank LSB and should be settable 0-127. A value of 255 should be quite > impossible! > > The actual values I've set (and correctly sent) are 105, 7, 110, 5. > > Just to confirm this is designed as a test file, but it's supposed to be > testing > Yoshimi! :) Just tripple checked this with aplaymidi, ardour3 and muse2. Rosegarden 13868 is *definitely* exporting the correct MIDI data and it is purely the import side that is now having problems. P.S. after using those last two I was *extremely* grateful to be able to return to Rosegarden, for all their bells and whistles they simply are not musician friendly :( I've tried attaching the MIDI version of my test file if anyone wants to have a look at it and see what happens. The bank changes (CC32) in order should be: CH1, 105 CH1, 105 CH1, 7 CH2, 110 CH3, 105 CH1, 5 This is intersped with program changes and actual (loosely described) music. -- Will J Godfrey http://www.musically.me.uk Say you have a poem and I have a tune. Exchange them and we can both have a poem, a tune, and a song. RootBankProgChangeTest.mid Description: MIDI audio -- Dive into the World of Parallel Programming. The Go Parallel Website, sponsored by Intel and developed in partnership with Slashdot Media, is your hub for all things parallel software development, from weekly thought leadership blogs to news, videos, case studies, tutorials and more. Take a look and join the conversation now. http://goparallel.sourceforge.net/___ Rosegarden-user mailing list Rosegarden-user@lists.sourceforge.net - use the link below to unsubscribe https://lists.sourceforge.net/lists/listinfo/rosegarden-user