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

Reply via email to