Re: Auto-beaming issues

Jean Abou Samra <[email protected]>
Newsgroups gmane.comp.gnu.lilypond.bugs
Message-ID <[email protected]>
(CCing Jason Yip, who may be interested in this as part of this GSoC application on the auto-beaming project.)


Le mardi 28 mars 2023 à 14:50 +0200, Mats Bengtsson a écrit :
>    Hi,
> 
>    I know that there are several old bug reports on auto-beaming, but I've  
>    come across a couple of problems that are not necessarily covered by  
>    the existing reports.
> 
>    Problem 1: Automatic beaming doesn't always work if a voice context  
>    ends in the wrong place. This might be closely related to #4690, but  
>    I'm not sure. Example:
> 
>    \version "2.24.0"  
>      \score{  
>        \new Voice \fixed c' {  
>          << { e8 f } \\ c4 >> g2. | % Autobeaming fails!  
>          << { e8 f g f } \\ c2 >> g2 | % Autobeaming successful!  
>          << { e8 f g f e f } \\ c2. >> g4 | % Autobeaming fails!  
>          << { e8 f g f e f g f } \\ c1 >> |  % Autobeaming successful!  
>      }  
>    }


The `<< \\ >>` create new voice, and each Voice context has its own beaming engravers. It works if you make one of the Voice contexts continue from the polyphonic passage into the monophonic one.

```
\version "2.24.1"

\new Voice \fixed c' {
  <<
    { \voiceOne e8 f } %% no \new Voice !
    \new Voice { \voiceTwo c4 }
  >>
  \oneVoice
  g2.
}
```

I don't think it's possible to make your input "just work" because

```
\version "2.24.1"

\new Voice \fixed c' {
  <<
    { e8 8 8 }
    \\
    { c8 8 8 }
  >>
  d
}
```

does not tell if it should be engraved as

```
\version "2.24.1"

\new Voice \fixed c' {
  <<
    { \voiceOne e8 8 8 }
    \new Voice { \voiceTwo c8 8 8 }
  >>
  \oneVoice
  d
}
```

or

```
\new Voice \fixed c' {
  <<
    \new Voice { \voiceOne e8 8 8 }
    { \voiceTwo c8 8 8 }
  >>
  \oneVoice
  d
}
```

So, no bug here from my point of view.

> 
>    Another example of the same problem is  
>    \version "2.24.0"  
>    \score{  
>      \fixed c' { \partial 4 e8 | f e f g f e f \fine }  
>    }

Not sure if this one is already registered in the tracker, there are many beaming issues...

>    Problem 2: The current logic which only provides rules on when a beam  
>    should be ended, obviously provides limited possibilities to express  
>    the beaming patterns. I was recently typesetting some 18th century  
>    music where I wanted to imitate the original beaming patterns, where in  
>    4/4, 16th triplets and 32nd notes were beamed in half beats, but where  
>    patterns like 8. 32 32 were beamed together. Unfortunately that cannot  
>    be handled by the current logic, but the following example is extra  
>    ugly since also the two eighth notes in the first beat don't get any  
>    beam:
> 
>    \version "2.24.0"  
>    \score{  
>      \fixed c' {  
>        a8 g f8.-\trill ( e32 f ) e32 f g f e f g f e4 |  
>      }  
>      \layout{  
>        \context {  
>           \Score{  
>              \overrideTimeSignatureSettings  
>              4/4        % timeSignatureFraction  
>              1/4        % baseMomentFraction  
>              1,1,1,1        % beatStructure  
>              #'((end . ((1/8 . (4 4))  ; 1/8 notes half measure  
>                 (1/12 . (3 3 3 3))  ; triplets and shorter by beat  
>                         (1/24 . (3 3 3 3 3 3 3 3 )) ; 16th triplets and  
>    shorter by half beats  
>                 )))  
>          }  
>        }  
>      }  
>    }
> 
>    Fortunately, in this specific example, it's actually enough to manually  
>    beam the second beat, in order to get an automatic beam on the first  
>    beat:  
>    a8 g f8.-\trill [ ( e32 f ) ] e32 f g f e f g f e4 |
> 
>    Feature request: It would of course be desirable to have more rich  
>    possibilities to express beaming patterns, where I for example would be  
>    able to express beaming patterns so that the previous example  
>    automatically gives the same as
> 
>    \score{  
>      \fixed c' {  
>        a8 [ g ] f8.-\trill [ ( e32 f ) ] e32 [ f g f ] e [ f g f ] e4 |  
>      }  
>    }

Sounds interesting. You understand more about this topic than I do, maybe create the tracker issue yourself?
signature.asc (application/pgp-signature, 228 B)
-----BEGIN PGP SIGNATURE-----

iHUEABYKAB0WIQSZ7TKxnKGyBvBjzBmj8PYLiTOX/gUCZCM1zwAKCRCj8PYLiTOX
/u+HAQDJhdJe98B+5PTO5NfpMhG7ZQiyAtDcFnQtLn+ARpNY1wEAnOZETc/dBvHv
70DS1gIT1BsUsedcseyy1A4ymZy+4AA=
=CCYp
-----END PGP SIGNATURE-----
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.