lilypond-devel
[Top][All Lists]
Advanced

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

Re: Patch to autobeaming code.


From: Trevor Daniels
Subject: Re: Patch to autobeaming code.
Date: Sun, 17 Aug 2008 09:12:14 +0100


Carl

I think you're right. Looking at Beaming_pattern::find_rhythmic_importance in beaming-pattern.cc, it seems that both beatLength and beatGrouping are used together to determine the importance of stems. beatLength sets the length of beats to be used in a beatGroup. I don't have time today to explore this properly, but it does look as if 511 might be based on wrong assumptions.

Trevor

----- Original Message ----- From: "Carl D. Sorensen" <address@hidden>
To: "LilyPond Development" <address@hidden>
Sent: Saturday, August 16, 2008 9:55 PM
Subject: Patch to autobeaming code.


I've been trying to figure out how to use beatLength to make the rhythms
documentation correct.

Issue #511 makes it sound like beatLength is used to create autobeaming
responses.   And it works for "odd" timing.  However, for standard timings,
it doesn't work properly.

For example, in 12/16 music, when beatLength is set to 1/8, instead of
creating beams that will end every 1/8 note (which is the expected
behavior according to issue 511), beatLength has the effect of setting
the autobeaming behavior to match 6/8 time.  I believe this is the designed
behavior -- autobeaming should be based on beatLength, not the denominator
of the time signature.

Note that the autobeam settings for 6/8 time are to end at 3/8; this is
what happens.

I believe the correct response is to use the measure-grouping property to
calculate autobeams, instead of beatLength.

A known issue of Time signatures is that "Automatic beaming does not use
the measure grouping specified with set-time-signature".

I have now created a patch to scm/auto-beaming.scm that ends beams as
specified in beatGrouping.  I've attached the patch, as well as a file
that tests its functionality.

Is it OK to apply?

Thanks,

Carl

P.S. I don't think this really fixes issue 511, but it makes it invalid. The
correct way to easily get custom autobeaming behavior for all beams is to
define beatGroupings, not to change beatLength.







--------------------------------------------------------------------------------


_______________________________________________
lilypond-devel mailing list
address@hidden
http://lists.gnu.org/mailman/listinfo/lilypond-devel






reply via email to

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