lilypond-user
[Top][All Lists]
Advanced

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

Re: irrational meters


From: Leo Correia de Verdier
Subject: Re: irrational meters
Date: Wed, 18 Jan 2023 11:14:39 +0100

If the warnings bother you you could use a function to suppress them, like:

irrtime = #(define-music-function (frac) (pair?) 
             #{ #(ly:expect-warning "strange time signature found") 
                \time #frac #} )

\score { 
  \relative c' {
    \irrtime 4/5
    \tuplet 5/4 1 {
      c4 d e f |
      g a2 g4 | 
      f2 g |
      e4 f e d |
      c1 | }
}}

Or  something more elegantly coded…

And everyone else: Can we talk about breve? It is nowadays usually one of the 
longest durations. I think we should change its name! 😉 (or possibly keep on 
topic)

Best wishes
/Leo

> 17 jan. 2023 kl. 16:13 skrev Karim Haddad <karim.haddad@ircam.fr>:
> 
> Thank you a lot Leo for your advice.
> I'll hence stick with solution #1 which looks preferable.
> 
> @all
> Now about "irrational meter" (or "irrational" rhythms), well this 
> denomination is from the fifties. I am aware that mathematically this is not 
> correct since it is a fraction.However, "irregular" is somehow more vague and 
> doesn't relate to anything in particular. Thanks to Hans' link that shows 
> that it is a somehow a common terminology in music practice. 
> 
> Best to all of you, and thank you for all your comments.
> 
> Karim
> 
> 
> 
> On Tue, Jan 17, 2023 at 01:30:49PM +0100, Leo Correia de Verdier wrote:
>> Hi Karim!
>> 
>> Your first example seems to work to me (I don’t do irrational meters 
>> everyday, so there might be something I’m missing. I would probably write 
>> the tuplets explicitly rather than use \scaleDurations). 
>> \set Staff.timeSignatureFraction is superfluous, the time signature already 
>> does that.
>> 
>> I’m not sure what you’re aiming at with the second example. One source of 
>> error is that you have quoted ly:make-moment, and it wants its arguments as 
>> elements of a list, not as a fraction, so: 
>> #(ly:make-moment 16 25)
>> , not
>> #'(ly:make-moment 16/25)
>> But it is still not the right amount of notes in the bar.
>> 
>> HTH
>> /Leo
>> 
>>> 17 jan. 2023 kl. 12:16 skrev Karim Haddad <karim.haddad@ircam.fr>:
>>> 
>>> Hi,
>>> 
>>> I am wondering which is the best way to write irrational meters (with tempo 
>>> modulations)
>>> 
>>> 1)
>>> %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
>>> \version "2.24.0"
>>> \score {
>>> {
>>> 
>>> \clef "G"
>>> 
>>> \scaleDurations 4/5 {
>>> \time 4/5
>>> \set Staff.timeSignatureFraction = #'(4 . 5)
>>> \mark \markup {\left-column {{\line { \smaller \general-align #Y #DOWN  
>>> \note {4} #1 " = 60 "}} \tiny "1"}}
>>> c'4
>>> c'4
>>> c'4
>>> c'4
>>> |
>>> }
>>> \once \set Staff.whichBar = "|"
>>> }
>>> 
>>> 
>>> \layout {
>>> 
>>> \context {\Score
>>>    %    measureBarType=#""
>>>             }
>>> 
>>> }
>>> }
>>> %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
>>> 
>>> or
>>> 
>>> 2)
>>> 
>>> %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
>>> \version "2.24.0"
>>> \score {
>>> {
>>> \clef "G"
>>> 
>>> \time 4/5
>>> \set Staff.timeSignatureFraction = #'(4 . 5)
>>> \set Timing.measureLength = #'(ly:make-moment 16/25)
>>> \mark \markup {\left-column {{\line { \smaller \general-align #Y #DOWN  
>>> \note {4} #1 " = 60 "}} \tiny "1"}}
>>> c'4
>>> c'4
>>> c'4
>>> c'4
>>> |
>>> \once \set Staff.whichBar = "|"
>>> }
>>> 
>>> \layout {
>>> 
>>> \context {\Score
>>>        measureBarType=#""
>>>               }
>>> 
>>> }
>>> }
>>> %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
>>> 
>>> 
>>> Now the first solution outputs:
>>> 
>>> Processing `irr1.ly'
>>> Parsing...
>>> Interpreting music...
>>> irr1.ly:13:1: warning: strange time signature found: 4/5
>>> 
>>> \time 4/5
>>> Preprocessing graphical objects...
>>> 
>>> 
>>> Which looks good to me as a warning
>>> 
>>> However, the second solution gives:
>>> 
>>> Processing `irr2.ly'
>>> Parsing...
>>> Interpreting music...
>>> warning: type check for `measureLength' failed; value `(ly:make-moment 
>>> 16/25)' must be of type `moment'
>>> irr2.ly:12:1: warning: strange time signature found: 4/5
>>> 
>>> \time 4/5
>>> irr2.ly:20:1: warning: barcheck failed at: 1/5
>>> 
>>> |
>>> Preprocessing graphical objects...
>>> 
>>> 
>>> And if we comment measureBarType=#"" we will have a strange bar at the end.
>>> 
>>> 
>>> Best Regards
>>> 
>>> 
>>> -- 
>>> Karim Haddad
>>> 
>>> Music Representations Team, IRCAM
>>> Research and development manager.
>>> 
>>> 
>> 
> 
> -- 
> Karim Haddad
> 
> Music Representations Team, IRCAM
> Research and development manager.
> 




reply via email to

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