Deutschsprachiges LilyPond-Forum

Allgemeine Fragen und Probleme => Fragen und Probleme aller Art => Thema gestartet von: martinusbaum am Freitag, 1. September 2017, 23:00

Titel: Decrescendo über eine Note geht das?
Beitrag von: martinusbaum am Freitag, 1. September 2017, 23:00
hallo,
crescendo/Decrescendo  über eine Note:

das geht nicht:
\version "2.18.2"
c2 \> \!
das geht:
c2 \> d \!

Was ist der Hintergrund? Wäre dankbar um Hilfe oder workaround....
Titel: Antw:Decrescendo über eine Note geht das?
Beitrag von: Manuela am Samstag, 2. September 2017, 06:57
Willst du so etwas?

\version "2.19.62"

\relative c'' { a\espressivo }
Titel: Antw:Decrescendo über eine Note geht das?
Beitrag von: harm6 am Samstag, 2. September 2017, 10:32
Hintergrund:

Bei { c2 \> \! } wird sowohl der Anfang als auch das Ende des Decrescendo derselben Note zugeordnet. LilyPond sieht also Anfang und Ende zum selben Zeitpunkt und beklagt sich.
Als Ausführende wissen wir natürlich, daß ein Decrescendo ein Prozeß ist, der einen Startpunkt hat und nach einer gewissen Zeit endet.
In LilyPond muß das so kodiert werden, daß Start/Ende auf verschiedene rhythmische Ereignisse fällt.
Triviale Beispiele sind:
{ c2 \> d\! } oder { c2 \> r\! }

Ein Decrescendo auf einer Note ohne nachfolgendes rhythmisches Ereignis (wie am Ende eines Stückes) oder ein Crescendo und Decrescendo auf einer längeren Note gibt jedoch Probleme, da man natürlich während eine Note klingt kein rhythmisches Ereignis hat an dem eine Dynamic beendet oder neu gestartet werden könnte.

Lösungen:

Ein Crescendo/Decrecendo kann zwar durch Manuelas Vorschlag angedeutet werden, aber um tatsächliche Crescendi etc schreiben zu können muß man rhythmische Ereignisse schaffen an denen Start/Ende festgemacht werden können.

Kann man mit einer zweiten Stimme machen:

\new Staff
{
<< c2 { s4..\> s16\! } >>
<< c2 { s4\< s8.\> s16\! } >>
}


Oder mit einer kleinen Funktion von David Kastrup, die aber im Kern dasselbe macht:

\version "2.18.2"

at =
#(define-music-function (parser location time event music)
  (ly:duration? ly:music? ly:music?)
  "Place @var{event} at a relative duration @var{time} in relation to @var{music}."
  #{ \context Bottom << { \skip $time <>$event } $music >> #})


{
  \at 2*7/8 \!
  c'2\>
 
  \at 2*7/8 \!
  \at 4 \>
  c'2\<
}



HTH,
  Harm



Titel: Antw:Decrescendo über eine Note geht das?
Beitrag von: Malte am Samstag, 2. September 2017, 11:11
Ich hab grad kein LilyPond zum Ausprobieren da, aber müßte es nicht viel einfacher gehen mit nem leeren EventChord, der ein rhythmisches Ereignis der Länge 0 darstellt? Natürlich nur, falls das Drecrescendo über die ganze Note gehen soll:
\version "2.18.2"
\relative {
  c2\> <>\!
}
Titel: Antw:Decrescendo über eine Note geht das?
Beitrag von: harm6 am Samstag, 2. September 2017, 11:37
Zitat von: Maltemüßte es nicht viel einfacher gehen mit nem leeren EventChord
Sollte wohl, tuts aber nicht. Führt zu:
programming error: bounds of this piece aren't breakable.
Obwohl das pdf ok ist.

Zwar zu einem anderen Thema, doch gibt dieser threads noch ein bißchen mehr Hintergrund zum programming error
http://lilypond.1069038.n5.nabble.com/TupletBracket-shorten-pair-with-strange-output-td202111.html (http://lilypond.1069038.n5.nabble.com/TupletBracket-shorten-pair-with-strange-output-td202111.html)

Gruß,
  Harm