lilypond-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Doc: Add a section about handling MIDI dynamics with multiple voices


From: Carl . D . Sorensen
Subject: Re: Doc: Add a section about handling MIDI dynamics with multiple voices (issue 302930043 by address@hidden)
Date: Mon, 11 Jul 2016 09:39:01 -0700

Heikki, this is so much better than your first patch.  Thanks for
working on it!

As I mention in the comments, I think the current behavior of changing
dynamics in identically-named but distinct voices is flawed, so I think
it should be a known issue, not in the main documentation.  But I like
the main documentation entry about the default value; I think it belongs
right where it is and is a great addition to our documentation.

Thanks,

Carl



https://codereview.appspot.com/302930043/diff/20001/Documentation/notation/input.itely
File Documentation/notation/input.itely (right):

https://codereview.appspot.com/302930043/diff/20001/Documentation/notation/input.itely#newcode3028
Documentation/notation/input.itely:3028: value 0.71 in the available
MIDI volume range between 0 and 1.
I think that it's useful to know what the default value is.  But I also
think we should have a comment that indicates it is defined in
scm/midi.scm  It would probably also be useful to give the name of the
variable that holds the default value, because the user can specify any
desired default value by changing the variable.

And it might be useful to show how to use
default-dynamic-absolute-volume to set the default value to one of the
dynamic levels (it's currently between mf and f).

https://codereview.appspot.com/302930043/diff/20001/Documentation/notation/input.itely#newcode3030
Documentation/notation/input.itely:3030: identically named voices in the
same @code{Staff}.
I hadn't realized this feature of MIDI.  I believe this behavior to be a
bug.  Dynamic changes should only apply to a specific voice, and as is
made clear in
http://lilypond.org/doc/v2.18/Documentation/notation/creating-and-referencing-contexts
,
\new will always create a new context.  The fact that a new context is
created is demonstrated in the first note of the new voice A getting the
default value, rather than the pppp value.

I believe it is a flaw in the MIDI performer to allow any Voice in a
Staff with the same name to share MIDI dynamics.

In your code, if you change the second A voice name to AA, the c1 on
line 3052 would have the dynamic level of  pppp.

I appreciate your effort to document the fact that a default dynamic
level exists.  I think that is important.  I also appreciate your effort
to document the current behavior of LilyPond, but I don't think we
should do it, because I think it's a bug and we shouldn't document bug
behavior in the main body of the manual (I don't think it's intended
behavior; at least I wouldn't be in favor of that behavior).

I think that the behavior indicated in your example should be documented
as a Known Issue, which means we recognize it as a bug.  And we should
have an issue as well (MIDI volume levels leak between identically named
voices).

https://codereview.appspot.com/302930043/



reply via email to

[Prev in Thread] Current Thread [Next in Thread]