The fundamental problem you will hit here is that a figured bass is
ambiguous, it only hints at the harmonic sequence, you have to make
judgements about how frequently the chords should be changing, and where
"obvious" changes have been omitted. (So an artificial intelligence
approach would be needed to do it by computer).
FWIW there is a set of Figured Bass exercises by Handel which I've
packaged with Denemo - you can play the chords and they are installed on
a staff above the bass notes. You can use this "Play Chords over Bass"
command for any score - I've used this to provide a guide realization
for accompanists who don't read from the figured bass directly. Then you
can take the LilyPond output for that staff. But you do have to be able
to play from the figures yourself for this, albeit as slowly as you like
- it waits for you to play the bass note before listening for the
chord(s).

Richard

On Mon, 2015-11-23 at 23:56 +0100, Michael Gerdau wrote:
> Hi list,
> 
> does someone know of a function or snipped that automatically transforms
> some music together with a FigruedBass line into a sequence of chords
> like illustrated in the example below ?
> 
> %%%%%%%%%%%%%%%
> \version "2.19.31"
> 
> bcMusic = \relative {
>   c2 c | c c | c c | c c |
> }
> 
> bcFigures = \figuremode {
>   \override Staff.BassFigureAlignmentPositioning #'direction = #DOWN
>   \bassFigureExtendersOn
>   \set figuredBassPlusDirection = #RIGHT
>   \set figuredBassAlterationDirection = #RIGHT
>   <5 3>2 <5 3> | <6 5+ 2>4 <6 4! 2> <6 4! 2>2 | <6\! 5> <6 5> |
>   <9 4>4 <8 3>4 <8 3>2
> }
> 
> \markup { "Is there a function that transforms this FiguredBass line..." }
> <<
>   \new Staff {
>     \clef bass \bcMusic
>   }
>   \new FiguredBass \bcFigures
> >>
> 
> result = \relative {
>   <c e g>2 <c e g> | <d gis a>4 <d f a> <d f a>2 |
>   <c g' a> <c g' a> | <c f d'>4 <c e c'> <c e c'>2 |
> }
> 
> \markup { "...automatically into this sequence of chords ?" }
> \new Staff { \clef bass \result }
> 
> \markup { "(hoping I got it right manually :)" }
> 
> %%%%%%%%%%%%%%%
> 
> Kind regards,
> Michael
> _______________________________________________
> lilypond-user mailing list
> lilypond-user@gnu.org
> https://lists.gnu.org/mailman/listinfo/lilypond-user



_______________________________________________
lilypond-user mailing list
lilypond-user@gnu.org
https://lists.gnu.org/mailman/listinfo/lilypond-user

Reply via email to