Colin Campbell <c...@shaw.ca> wrote:

> Thanks for this, Graham!  I've added this to the tracker
> as issue 1711. Can you also provide a test file which
> would demonstrate the problem? I recognise this may not
> be all that easy to do, but it would help in verifying
> the fix.

Here's an example based on one Richard Sabey sent me.

In 2.14.1, the sixth tone sharp g comes out as a flattened
g sharp.  The pitch bend message is 0xe0 0x71 0x2a and the
note-on 0x90 0x38 0x5a.  Without pitch bends, g the
note-on is 0x90 0x37 0x5a, so g is 0x37 not 0x38. The third
byte of the pitch bend should be between 0x30 and 0x50 if
they're minimized.

A one semitone pitch bend is 0x1000.  The f is flat by a
f is flat by a sixth tone or a third of a semitone, so the
LSB of the bend should be (-0x1000/-3)&0x7f or (0x4000 -
0x2000/6)&0x7f, which is either 0x2a or 0x2b depending on
how you round it.  With 2.1.14, it's 0x39 (0xe0 0x39 0x35)
and with the patch it's 0xe0 0x2b 0x35.


                          Graham
\version "2.12.3"

xxxivPitchNames = #`(
	(f . ,(ly:make-pitch -1 3 -1/6))
	(g . ,(ly:make-pitch -1 4 1/6))
)
#(ly:parser-set-note-names parser xxxivPitchNames)

\score
{
	\new Staff { g4 f }
	\midi { }
}
_______________________________________________
lilypond-devel mailing list
lilypond-devel@gnu.org
https://lists.gnu.org/mailman/listinfo/lilypond-devel

Reply via email to