lilypond-user
[Top][All Lists]
Advanced

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

Re: writing score in absolute time


From: Gregory Evans
Subject: Re: writing score in absolute time
Date: Sat, 4 Feb 2023 08:48:06 -0600

Here is a copy of my message to Jacopo. I seem to forget to reply all!

Hi everyone,
Yes music notation is strictly pre-cartesian. Notice the durational representation of musical time requires all these dots, ties, and prolation brackets to get anything that isn't just powers of 2. And notes don't have true "Stop-offsets" visually displayed on the score. But the results we get by coercing this ancient notation to behave proportionally is actually very successful and I've never seen a great argument against it other than it certainly does take up a lot of space. I'll give myself away a little early in this message by giving reference to Abjad's definition of assignability:
"Western notation makes it easy to notate notes, rests and chords with durations like 1/4 and 3/16. But notating notes, rests and chords with durations like 1/3 can only be done with recourse to tuplets or ties. Abjad formalizes the difference between durations like 1/4 and 1/5 in the concept of assignability: a duration n/d is assignable when and only when numerator n is of the form 2**i-2**j with i>j and denominator d is of the form 2**v. In this definition i must be a positive integer, and j and v must be nonnegative integers. Assignability is important because it explains why you can set the duration of any note, rest or chord to 1/4 or 7/4 but never to 1/5 or 7/5."

Yes, I’m part of the Abjad family! As long as, I assume, the request is for a way to compose while thinking in clock-time the solution would be the abjad-ext-nauert library (https://github.com/Abjad/abjad-ext-nauert). It is a quantization library based on Paul Nauert’s paper on Q-grids. The library was originally written by Josiah Oberholtzer and recently refactored by Tsz Kiu Pang after languishing for some time. I have never used the quantizer so I’m no help in that regard, however the documentation can be found here: https://abjad.github.io/api/abjadext/nauert/index.html

regards,
gr evans

p.s. I hope I'm not too bold in assuming you are not already composing with abjad. I suppose that's only my assumption because your question was fielded to the lilypond email list rather than the abjad list. I just wanted to give a warning that it will likely not be a simple task to use the quantizer without commiting to learning how to use the API (and by extension the Python language) at large.

On Sat, Feb 4, 2023 at 3:50 AM Jacopo Greco d'Alceo <cordelia@disroot.org> wrote:
Hi Andrew,

thank you for your answer. I’ll tell you a secret: almost the entire occidental notation system is a nice and juicy cartesian linear graph.

Anyway, as you said, no notation program can do this task. As far as I know maybe just bach library inside max.

The idea maybe could be transposed in another way: is it possible for each measure (e.g. quaver = 60) to write a lilypond score that take just some note and an x value for space free from tempo link?

On 4 Feb 2023, at 10:32, Andrew Bernard <andrew.bernard@mailbox.org> wrote:

My composer colleague always wants to write 3cm = 1 second for his scores. I insist that music is not linear graph paper and never was. So we disagree. I just do not believe musicians read music that way. Yet this is what some people want. Consequently I have looked into this and I do not know of any notation program that can do it. if you think about it, forcing a specific length for bars etc means the sophisticated layout engines cannot do their job.

If I am out of date and this _can+ be done, then I really want to know about it.

Andrew


On 4/02/2023 8:26 pm, Jacopo Greco d'Alceo wrote:

I’ve always wondered if it’s possible to write a lilypond score in absolute time, just giving almost 2 parameters: note and absolute time in seconds, without the measure boundaries.




--
gregory rowland evans

reply via email to

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