1.5.2 Più voci

Questa sezione presenta le note simultanee in più voci o più righi.


Polifonia su un solo rigo

Istanziare esplicitamente le voci

La struttura di base necessaria per ottenere più voci indipendenti in un solo rigo è illustrata nell’esempio seguente:

\new Staff <<
  \new Voice = "prima"
    { \voiceOne r8 r16 g e8. f16 g8[ c,] f e16 d }
  \new Voice= "seconda"
    { \voiceTwo d16 c d8~ d16 b c8~ c16 b c8~ c16 b8. }
>>

[image of music]

Le voci sono istanziate esplicitamente e vengono contrassegnate da dei nomi. I comandi \voiceOne\voiceFour impostano le voci in modo che la prima e terza voce abbiano i gambi in su, la seconda e la quarta voce i gambi in giù, le teste di nota della terza e quarta voce siano spostate orizzontalmente e le pause in ciascuna voce siano spostate automaticamente per evitare collisioni. Il comando \oneVoice ripristina tutte le impostazioni della voce alle direzioni neutrali predefinite.

Pasaggi polifonici temporanei

Un passaggio polifonico temporaneo si può creare col seguente costrutto:

<< { \voiceOne … }
  \new Voice { \voiceTwo … }
>> \oneVoice

In questo esempio la prima espressione all’interno di un passaggio polifonico temporaneo è posta nel contesto Voice che era in uso immediatamente prima del passaggio polifonico e quello stesso contesto Voice continua dopo la sezione temporanea. Le altre espressioni comprese nelle parentesi uncinate vengono assegnate a voci temporanee distinte. Questo permette di assegnare il testo a una voce che continua prima, durante e dopo una sezione polifonica:

<<
  \new Voice = "melody" {
    a4
    <<
      {
        \voiceOne
        g f
      }
      \new Voice {
        \voiceTwo
        d2
      }
    >>
    \oneVoice
    e4
  }
  \new Lyrics \lyricsto "melody" {
  This is my song.
  }
>>

[image of music]

I comandi \voiceOne e \voiceTwo sono necessari per definire le impostazioni di ogni voce.

Il costrutto con la doppia barra inversa (backslash)

Il costrutto << {…} \\ {…} >>, in cui due (o più) espressioni sono separate da due barre inverse (backslash), si comporta diversamente dal costrutto simile privo delle due barre: tutte le espressioni in questo costrutto vengono assegnate a nuovi contesti Voice. Questi nuovi contesti Voice vengono creati implicitamente e ad essi vengono assegnati dei nomi prestabiliti "1", "2", etc.

Il primo esempio potrebbe essere riscritto nel modo seguente:

<<
  { r8 r16 g e8. f16 g8[ c,] f e16 d }
  \\
  { d16 c d8~ d16 b c8~ c16 b c8~ c16 b8. }
>>

[image of music]

Questa sintassi si usa quando non importa che le voci temporanee siano create e poi eliminate. A queste voci create implicitamente vengono assegnate le impostazioni equivalenti all’uso dei comandi \voiceOne\voiceFour, nell’ordine in cui appaiono nell’input.

Nell’esempio seguente, la voce intermedia ha i gambi in su, dunque viene inserita in terza posizione in modo che diventi la terza voce, che ha i gambi in su. Si usano le pause spaziatrici per evitare il raddoppio delle pause ordinarie.

<<
  { r8 g g  g g f16 ees f8 d }
  \\
  { ees,8 r ees r d r d r }
  \\
  { d'8 s c s bes s a s }
>>

[image of music]

In tutti i brani, a eccezione di quelli più semplici, è consigliabile creare contesti Voice espliciti come è spiegato in Contesti e incisori e Definire esplicitamente le voci.

Ordine delle voci

Quando si inseriscono più voci nel file di input, conviene usare il seguente ordine:

Voce 1: la più alta
Voce 2: la più bassa
Voce 3: la seconda più alta
Voce 4: la seconda più bassa
Voce 5: la  terza più alta
Voce 6: la terza più bassa
etc.

Sebbene possa sembrare controintuitivo, ciò semplifica il processo automatico di formattazione. Si noti che le voci con numero dispari hanno i gambi in su, quelle con numero pari hanno i gambi in giù:

\new Staff <<
  \time 2/4
  { f''2 }  % 1: la più alta
  \\
  { c'2  }  % 2: la più bassa
  \\
  { d''2 }  % 3: seconda più alta
  \\
  { e'2  }  % 4: seconda più bassa
  \\
  { b'2  }  % 5: terza più alta
  \\
  { g'2  }  % 6: terza più bassa
>>

[image of music]

Nota: Il testo e gli estensori (come le legature di portamento e di valore, le forcelle, etc.) non possono ‘attraversare’ le voci.

Durate identiche

Nel caso speciale in cui si desideri inserire sezioni musicali parallele con il medesimo ritmo, si possono combinare in un unico contesto Voice, formando dunque degli accordi. Per farlo, vanno racchiuse in un semplice costrutto musicale simultaneo all’interno di una voce esplicita:

\new Voice <<
  { e4 f8 d e16 f g8 d4 }
  { c4 d8 b c16 d e8 b4 }
>>

[image of music]

Questo metodo produce strane travature e avvertimenti se le sezioni musicali non hanno lo stesso ritmo.

Comandi predefiniti

\voiceOne, \voiceTwo, \voiceThree, \voiceFour, \oneVoice.

Vedi anche

Manuale d’apprendimento: Le voci contengono la musica, Definire esplicitamente le voci.

Guida alla notazione: Percussion staves, Pause invisibili, Gambi.

Frammenti: Simultaneous notes.


Stili di voce

Si possono assegnare colori e forme diverse a ciascuna voce per facilitarne l’identificazione:

<<
  { \voiceOneStyle d4 c2 b4 }
  \\
  { \voiceTwoStyle e,2 e }
  \\
  { \voiceThreeStyle b2. c4 }
  \\
  { \voiceFourStyle g'2 g }
>>

[image of music]

Il comando \voiceNeutralStyle permette di ripristinare l’aspetto predefinito.

Comandi predefiniti

\voiceOneStyle, \voiceTwoStyle, \voiceThreeStyle, \voiceFourStyle, \voiceNeutralStyle.

Vedi anche

Manuale d’apprendimento: Sento le Voci, Altre fonti di informazione.

Frammenti: Simultaneous notes.


Risoluzione delle collisioni

Le teste di note che si trovano in voci diverse ma hanno stessa altezza, stessa testa e direzione del gambo opposta vengono unite automaticamente; invece, le note che hanno la stessa testa o la stessa direzione del gambo non vengono unite. Le pause opposte a un gambo in una voce diversa vengono spostate verticalmente. L’esempio seguente mostra tre diverse circostanze, sul primo e terzo movimento della prima battuta e sul primo movimento della seconda battuta, in cui l’unione automatica delle teste di nota non funziona.

<<
  {
    c8 d e d c d c4
    g'2 fis
  } \\ {
    c2 c8. b16 c4
    e,2 r
  } \\ {
    \oneVoice
    s1
    e8 a b c d2
  }
>>

[image of music]

Note con teste diverse possono essere unite come è mostrato sotto. In questo esempio le teste delle note nel primo battito della prima battuta sono unite:

<<
  {
    \mergeDifferentlyHeadedOn
    c8 d e d c d c4
    g'2 fis
  } \\ {
    c2 c8. b16 c4
    e,2 r
  } \\ {
    \oneVoice
    s1
    e8 a b c d2
  }
>>

[image of music]

Le minime e le semiminime, invece, non sono unite, perché sarebbe difficile distinguerle.

Anche le teste di note con diversi punti, come nel terzo movimento della prima battuta, possono essere unite:

<<
  {
    \mergeDifferentlyHeadedOn
    \mergeDifferentlyDottedOn
    c8 d e d c d c4
    g'2 fis
  } \\ {
    c2 c8. b16 c4
    e,2 r
  } \\ {
    \oneVoice
    s1
    e8 a b c d2
  }
>>

[image of music]

La minima e la croma all’inizio della seconda misura sono unite per errore, perché l’unione automatica non riesce a completare correttamente l’unione quando tre o più note sono allineate sulla stessa colonna di note: in questo caso la testa di nota unita non è corretta. Per far sì che l’unione selezioni la testa di nota corretta, occorre applicare il comando \shift alla nota che non deve essere unita. In questo esempio si usa \shiftOn per spostare il Sol superiore (g) fuori dalla colonna e di conseguenza \mergeDifferentlyHeadedOn funziona correttamente.

<<
  {
    \mergeDifferentlyHeadedOn
    \mergeDifferentlyDottedOn
    c8 d e d c d c4
    \shiftOn
    g'2 fis
  } \\ {
    c2 c8. b16 c4
    e,2 r
  } \\ {
    \oneVoice
    s1
    e8 a b c d2
  }
>>

[image of music]

Il comando \shiftOn permette (senza forzare) lo spostamento delle note in una voce. Quando si applica \shiftOn a una voce, una nota o accordo in quella voce vengono spostati solo se il suo gambo altrimenti entrerebbe in collisione col gambo di un’altra voce, e solo se i gambi che collidono puntano nella stessa direzione. Il comando \shiftOff impedisce che si verifichi questo tipo di spostamento.

Per impostazione predefinita, le voci più esterne (solitamente la prima e la seconda voce) hanno specificato \shiftOff, mentre le voci più interne (terza e successive) hanno specificato \shiftOn. Quando si applica uno spostamento, le voci con i gambi in su (voci dispari) vengono spostate a destra, e le voci con i gambi in giù (voci pari) vengono spostate a sinistra.

Ecco un esempio che aiuta a visualizzare come un’espressione simultanea abbreviata viene espansa internamente.

Nota: Attenzione: con tre o più voci, l’ordine verticale delle voci nel file di input non deve essere lo stesso dell’ordine verticale delle voci del rigo!

\new Staff \relative c'' {
  %% inserimento abbreviato
  <<
    { f2  }  % 1: più alta
    \\
    { g,2 }  % 2: più bassa
    \\
    { d'2 }  % 3: più alta centrale
    \\
    { b2  }  % 4: più  bassa centrale
  >>
  %% espansione interna dell'input precedente
  <<
    \new Voice = "1" { \voiceOne   \shiftOff f'2 }
    \new Voice = "2" { \voiceTwo   \shiftOff g,2 }
    \new Voice = "3" { \voiceThree \shiftOn  d'2 } % sposta a destra
    \new Voice = "4" { \voiceFour  \shiftOn  b2  } % sposta a sinistra
  >>
}

[image of music]

Due ulteriori comandi, \shiftOnn e \shiftOnnn, mettono a disposizione altri livelli di spostamento che possono essere specificati in modo temporaneo per risolvere delle collisioni in situazioni complesse – vedi Esempio musicale.

Le note vengono unite solo se presentano opposta direzione dei gambi (come accade, ad esempio, nella prima o seconda voce o quando i gambi sono impostati esplicitamente in direzioni opposte).

Comandi predefiniti

\mergeDifferentlyDottedOn, \mergeDifferentlyDottedOff, \mergeDifferentlyHeadedOn, \mergeDifferentlyHeadedOff.

\shiftOn, \shiftOnn, \shiftOnnn, \shiftOff.

Frammenti di codice selezionati

Voci ulteriori per evitare le collisioni

In alcuni casi di musica polifonica complessa sono necessarie delle voci ulteriori per evitare le collisioni tra note. Se servono più di quattro voci parallele, si possono aggiungere altre voci definendo una variabile con la funzione Scheme function context-spec-music.

voiceFive = #(context-spec-music (make-voice-props-set 4) 'Voice)

\relative c'' {
  \time 3/4
  \key d \minor
  \partial 2
  <<
    \new Voice  {
      \voiceOne
      a4. a8
      e'4 e4. e8
      f4 d4. c8
    }
    \new Voice {
      \voiceTwo
      d,2
      d4 cis2
      d4 bes2
    }
    \new Voice {
      \voiceThree
      f'2
      bes4 a2
      a4 s2
    }
    \new Voice {
      \voiceFive
      s2
      g4 g2
      f4 f2
    }
  >>
}

[image of music]

Forzare lo spostamento orizzonatale delle note

Quando il motore tipografico non riesce a risolvere una situazione, si può usare la sintassi che sovrascrive le decisioni tipografiche. L’unità di misura usata è lo spazio del rigo.

\relative c' <<
  {
    <d g>2 <d g>
  }
  \\
  {
    <b f'>2
    \once \override NoteColumn.force-hshift = #1.7
    <b f'>2
  }
>>

[image of music]

Vedi anche

Glossario Musicale: polifonia.

Manuale d’apprendimento: Note simultanee, Le voci contengono la musica, Esempio musicale.

Frammenti: Simultaneous notes.

Guida al funzionamento interno: NoteColumn, NoteCollision, RestCollision.

Problemi noti e avvertimenti

Se si usa \override NoteColumn.ignore-collision = ##t, le note con teste diverse che si trovano in voci diverse saranno unite in modo non corretto.

\mergeDifferentlyHeadedOn
<< { c16 a' b a } \\ { c,2 } >>
\override NoteColumn.ignore-collision = ##t
<< { c16 a' b a } \\ { c,2 } >>

[image of music]


Combinazione automatica delle parti

La combinazione automatica delle parti si usa per combinare in un unico rigo due parti musicali separate. Ciò è utile soprattutto quando si scrivono partiture orchestrali. Viene stampata una sola voce se le due parti musicali sono identiche, ma nei punti in cui sono diverse viene aggiunta una seconda voce. Le direzioni dei gambi sono impostate in su e in giù in base alla voce di appartenenza, mentre le sezioni solistiche e a due sono a loro volta identificate e contrassegnate.

La sintassi per la combinazione automatica delle parti è:

\partcombine espressione-musicale1 espressione-musicale2

L’esempio seguente illustra il funzionamento di base: le parti sono poste su un unico rigo in modo polifonico e le direzioni dei gambi sono regolate di conseguenza. Si usano le stesse variabili per le parti indipendenti e il rigo combinato.

instrumentOne = \relative c' {
  c4 d e f |
  R1 |
  d'4 c b a |
  b4 g2 f4 |
  e1 |
}

instrumentTwo = \relative g' {
  R1 |
  g4 a b c |
  d4 c b a |
  g4 f( e) d |
  e1 |
}

<<
  \new Staff \instrumentOne
  \new Staff \instrumentTwo
  \new Staff \partcombine \instrumentOne \instrumentTwo
>>

[image of music]

Entrambe le parti hanno note identiche nella terza misura, dunque viene stampata una sola nota. Le direzioni dei gambi e delle legature di portamento e di valore sono impostate automaticamente, a seconda che l’esecuzione delle parti sia solistica o all’unisono. Quando si rende necessario, in caso di polifonia, la prima parte (nel contesto one) ha i gambi in “su”, mentre la seconda (nel contesto two) ha sempre i gambi in “giù”. In caso di parti solistiche, la prima e seconda parte sono contrassegnate rispettivamente con “Solo” e “Solo II”. Le parti (a due) all’unisono sono contrassegnate con la scritta “a2”.

Entrambi gli argomenti di \partcombine sono interpretati come contesti Voice separati, dunque se la musica viene inserita in modo relativo entrambe le parti devono contenere una funzione \relative, ovvero:

\partcombine
  \relative … espressione-musicale1
  \relative … espressione-musicale2

Un blocco \relative che racchiude un \partcombine non ha effetto sulle altezze di espressione-musicale1 e espressione-musicale2.

Nelle partiture professionali, spesso le voci sono tenute separate per lunghi passaggi anche se alcune note sono le stesse in entrambe le voci e potrebbero essere stampate come unisono. Combinare le note in un accordo o mostrare una voce come solista, dunque, non è la scelta ideale, perché la funzione \partcombine considera ogni nota individualmente. In questo caso si può sovrascrivere la funzione \partcombine con i comandi elencati sotto.

I comandi che finiscono con …Once si applicano soltanto alla nota successiva dell’espressione musicale.

instrumentOne = \relative c' {
  \partcombineApart c2^"separato" e |
  \partcombineAutomatic e2^"automatico" e |
  \partcombineChords e'2^"accordo" e |
  \partcombineAutomatic c2^"automatico" c |
  \partcombineApart c2^"separato" \partcombineChordsOnce e^"accordo una volta sola" |
  c2 c |
}
instrumentTwo = \relative c' {
  c2 c |
  e2 e |
  a,2 c |
  c2 c' |
  c2 c |
  c2 c |
}

<<
  \new Staff { \instrumentOne }
  \new Staff { \instrumentTwo }
  \new Staff { \partcombine \instrumentOne \instrumentTwo }
>>

[image of music]

Uso di \partcombine col testo vocale

Il comando \partcombine non è progettato per funzionare col testo vocale; al punto che se una delle voci è nominata in modo esplicito per poterle assegnare del testo, l’unione delle parti smette di funzionare. Tuttavia, questo risultato si può ottenere usando un contesto NullVoice. Vedi Polyphony with shared lyrics.

Frammenti di codice selezionati

Combinare due parti sullo stesso rigo

Lo strumento di unione delle parti (il comando \partcombine) permette di combinare varie parti sullo stesso rigo. Indicazioni testuali come “solo” e “a2” sono aggiunte automaticamente; per toglierele basta impostare la proprietà printPartCombineTexts su f. Per le partiture vocali (inni), non c’è bisogno di aggiungere i testi “solo/a2”, quindi dovrebbero essere disattivati. Tuttavia potrebbe convenire non usarlo se c’è una qualche parte solista, perché non verrebbe indicata. In tali casi è preferibile usare la notazione polifonica normale.

Questo frammento illustra i tre modi con cui due parti possono essere stampate su uno stesso rigo: normale polifonia, \partcombine senza testo e \partcombine con testo.

musicUp = \relative c'' {
  \time 4/4
  a4 c4.( g8) a4 |
  g4 e' g,( a8 b) |
  c b a2.
}

musicDown = \relative c'' {
  g4 e4.( d8) c4 |
  r2 g'4( f8 e) |
  d2 \stemDown a
}

\score {
  <<
    <<
    \new Staff {
      \set Staff.instrumentName = #"Standard polyphony"
      << \musicUp \\ \musicDown >>
    }
    \new Staff \with { printPartCombineTexts = ##f } {
      \set Staff.instrumentName = #"PartCombine without texts"
      \partcombine \musicUp \musicDown
    }
    \new Staff {
      \set Staff.instrumentName = #"PartCombine with texts"
      \partcombine \musicUp \musicDown
    }
    >>
  >>
  \layout {
    indent = 6.0\cm
    \context {
      \Score
      \override SystemStartBar.collapse-height = #30
    }
  }
}

[image of music]

Modificare le indicazioni testuali di partcombine

Quando si usa la funzionalità di combinazione automatica delle parti, si può modificare il testo delle sezioni soliste e dell’unisono:

\new Staff <<
  \set Staff.soloText = #"girl"
  \set Staff.soloIIText = #"boy"
  \set Staff.aDueText = #"together"
  \partcombine
    \relative c'' {
      g4 g r r
      a2 g
    }
    \relative c'' {
      r4 r a( b)
      a2 g
    }
>>

[image of music]

Vedi anche

Glossario Musicale: a due, parte.

Guida alla notazione: Scrittura delle parti.

Frammenti: Simultaneous notes.

Guida al funzionamento interno: PartCombineMusic, Voice.

Problemi noti e avvertimenti

Tutte le funzioni \partcombine… possono accettare soltanto due voci.

Le funzioni \partcombine… non possono essere inserite all’interno di un blocco \tuplet o \relative.

Se printPartCombineTexts è attivo e le due voci eseguono le stesse note “in modo discontinuo” nella stessa misura, potrebbe apparire il testo a2 più di una volta in quella misura.

\partcombine sa soltanto quando una nota inizia in una voce (Voice); non può, ad esempio, ricordare se una nota in una voce è già iniziata quando combina le note già iniziate nell’altra voce. Questo può portare a vari problemi inattesi, tra cui la stampa non corretta dei segni “Solo” e “Unisono”.

\partcombine tiene tutti gli estensori (legature di portamento e di valore, forcelle, etc.) nella stessa voce, quindi se uno di questi estensori inizia o termina in una voce diversa potrebbe essere stampato incorrettamente o non essere stampato affatto.

Se la funzione \partcombine non riesce a combinare le due espressioni musicali (ovvero quando le due voci hanno durate diverse), assegnerà alle voci, internamente, nomi personalizzati: rispettivamente one e two. Ciò significa che se c’è un “passaggio” a un contesto Voice nominato diversamente, gli eventi in quel contesto verranno ignorati.

Consultare i Problemi noti e avvertimenti in Default tablatures se si usa \partcombine con l’intavolatura, e la Nota in Travature automatiche se si usa la disposizione automatica delle travature.


Scrivere la musica in parallelo

La musica che contiene parti diverse può essere messa in parallelo nel codice di input. La funzione \parallelMusic accetta una lista contenente i nomi di un insieme di variabili da creare e un’espressione musicale. Il contenuto delle misure alternate nell’espressione diventa il valore delle rispettive variabili, in modo che possano essere usate successivamente per stampare la musica.

Nota: L’uso dei controlli di battuta | è obbligatorio e le misure devono avere la stessa durata.

\parallelMusic #'(voiceA voiceB voiceC) {
  % Battuta 1
  r8 g'16 c'' e'' g' c'' e'' r8 g'16 c'' e'' g' c'' e'' |
  r16 e'8.~   e'4            r16 e'8.~   e'4            |
  c'2                        c'2                        |

  % Battuta 2
  r8 a'16 d'' f'' a' d'' f'' r8 a'16 d'' f'' a' d'' f'' |
  r16 d'8.~   d'4            r16 d'8.~   d'4            |
  c'2                        c'2                        |

}
\new StaffGroup <<
  \new Staff << \voiceA \\ \voiceB >>
  \new Staff { \clef bass \voiceC }
>>

[image of music]

L’uso del modo relativo è permesso. Attenzione: il comando \relative non deve essere messo dentro \parallelMusic. Le note sono relative alla nota precedente della voce, non a quella precedente nell’input. In altre parole, le note relative di voiceA ignorano le note in voiceB.

\parallelMusic #'(voiceA voiceB voiceC) {
  % Battuta 1
  r8 g16 c e g, c e r8 g,16 c e g, c e  |
  r16 e8.~ e4       r16 e8.~  e4        |
  c2                c                   |

  % Battuta 2
  r8 a,16 d f a, d f r8 a,16 d f a, d f |
  r16 d8.~  d4       r16 d8.~  d4       |
  c2                 c                  |

 }
\new StaffGroup <<
  \new Staff << \relative c'' \voiceA \\ \relative c' \voiceB >>
  \new Staff \relative c' { \clef bass \voiceC }
>>

[image of music]

Questo è molto utile nella musica per pianoforte. Questo esempio combina sezioni di quattro battute consecutive con quattro variabili:

global = {
  \key g \major
  \time 2/4
}

\parallelMusic #'(voiceA voiceB voiceC voiceD) {
  % Battuta 1
  a8    b     c   d     |
  d4          e         |
  c16 d e fis d e fis g |
  a4          a         |

  % Battuta 2
  e8      fis  g     a   |
  fis4         g         |
  e16 fis g  a fis g a b |
  a4           a         |

  % Bar 3 ...
}

\score {
  \new PianoStaff <<
     \new Staff {
       \global
       <<
         \relative c'' \voiceA
         \\
         \relative c'  \voiceB
       >>
     }
     \new Staff {
       \global \clef bass
       <<
         \relative c \voiceC
         \\
         \relative c \voiceD
       >>
     }
  >>
}

[image of music]

Vedi anche

Manuale d’apprendimento: Organizzare i brani con le variabili.

Frammenti: Simultaneous notes.


Altre lingue: English, deutsch, español, français, 日本語.
About automatic language selection.

LilyPond — Guida alla Notazione v2.17.97 (ramo di sviluppo).