lilypond-devel
[Top][All Lists]
Advanced

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

Re: Request for comments: Redesign of TimeSignature


From: Han-Wen
Subject: Re: Request for comments: Redesign of TimeSignature
Date: Thu, 23 May 2002 00:41:13 +0200

address@hidden writes:
> 
> > I think that this will lead to a lot of unnecessary
> > complications (except for mensural stuff, music notation durations are
> > base 2).
> 
> Gregorian chant notation has no fixed duration relations at all (at least
> that is what we assume nowadays).  When notating swing-style jazz, you
> typically have a ternary system, where a quarternote divides into 2 eigthnotes
> of different length (roughly 2:1).  There are many contemporary pieces of
> music without fixed duration relation.  In classical music, the
> durations of some notes in a cadenza also do not necessarily represent a
> strict binary system.  I think I have once seen an example where Haydn
> consistently put "too much" notes into some bars (obviously some of these
> additional notes were intended to be some sort grace notes, but they were
> not explicitly marked as such).
> 
> Still more examples needed? :-)

The real issue is that I want the basic elements of the internal music
representation to be context-free: pitch and duration of musical
objects can be derived without knowing other variables. This holds for
almost all constructs (except for \addlyrics which I would probably
implement differently if I would have to redo it).

Given this assumption, it seems that we should really modify the
parser to support mensural notation: the extended \time syntax not
only sets timeSignatureFraction, but also sets multipliers in the
parser, so that

     (ternary time sig)

     \breve

gets translated during the parse step into

     duration-log = -1, multiplier = 3/2

(Or what have you.)

One thing that is not clear to me, is given the changing proportions
of notes in mensural notation, what the unit for these notes should
be. For example, we could take the Longa as the unit, then all shorter
notes should be multiplied by some fraction depending on the time
signature.

Perhaps this is what you originally proposed in your idea, but my
impression was that you wanted to meddle further downstream (i.e. in
interpretation phase) with how note durations are implemented, and
that is out of the question, because that part of lilypond is better
known as Debugging Hell to me.

> Yes, unfortunately, they often change time signatures during the peace
> (and some even have different time signatures on different staves), as
> far as I know from the examples that I have seen so far; but maybe they
> are not representative.

Ah, this is interesting. If different time sigs (implying different
ratios for the notes) are used, how are polyphonic voices synchronized?

> >    \time 4[2:2:...]/4
> >
> > but for other purposes, eg.
> >
> >     \time 7[2:2:3]/8
> >     \time 7[2:3:2]/8
> >
> 
> Please don't do that!  The syntax [x:y] is VERY common in mensural
> notation and can be still seen in contemporary editions of old music.
> For your purpose, I would rather suggest something like:

Ah, I didn't know.

> 
> \time [2+2+3]/8
> 
> By the way, the "[" might clash with beams, as in:
> 
> \notes { \time 3 [f4 a c] }

\time 3 is not valid syntax. I propose that we keep it that way. If it
[ ] is in between \time and / , then there will be no clash.

> still should implement only those parts of my proposal that only affect
> time-signature{-engraver,}.{cc,hh} (and maybe grob-properties.scm),
> i.e. just the code that produces the time-signature grob?

Hm. Yeah, of course, just retain default behavior.

(and if you like, you could add support for

  6  (3)
  8  (4) 

what Laura seems to want.)


-- 

Han-Wen Nienhuys   |   address@hidden   |   http://www.cs.uu.nl/~hanwen 



reply via email to

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