On Saturday 15 May 2010 04:20:05 D. Michael McIntyre wrote: > On Friday 14 May 2010, Niek van den Berg wrote: > > However this construction ignores the event property "accidental". > > ... > > now correct notes are in the MusicXML file. > > Nobody has worked on the Music XML export code since long before the Pitch > class existed.
It seems there is a nice task for me :-) > > Rosegarden used to have really stupid problems with notes like B# (it would > write C# for B#, F# for E# and so on) and it is very likely nobody ever > adjusted the Music XML code to take advantage of our newer, smarter pitch > and accidental resolution methods. I will have a look and try to repair the Music XML export a little. > > > I'm willing to create a patch but I still have another problem. Now at > > > > least the notes are correct (B B# A# Cb) but the B# is one octave too > > high and the Cb is one octave too low. It looks to me > > Pitch::getOctave(octaveBase) is doing something strange because it > > ignores the pitch accidental. But this method is called in several > > places and I'm not sure what will be broken when changing this. Maybe > > somebody can comment on this? > > I can remember at least one other place in the code where I had to have > some manual if/then logic in there to override edge cases where > Pitch::getOctave() would come out wrong. If you make Pitch::getOctave() > smarter, you will break code in these places, and I don't remember where > they are. It would be safest just to do the same kind of if/then logic in > here. It's probably screwing up at the B#/Cb divide. I don't know > exactly what the pattern will turn out to be off hand, but there should be > a pretty simple test to make if this and this and this are met, then > change the result by this much. It clear, I have to be careful. Nevertheless I will dive into this. > > Sorry I'm being so vague. You put on some tracks, thanks, Best regards, Niek. ------------------------------------------------------------------------------ _______________________________________________ Rosegarden-devel mailing list [email protected] - use the link below to unsubscribe https://lists.sourceforge.net/lists/listinfo/rosegarden-devel
