Betriebssystemabhängig > Windows
Programmierfehler: Impossible or ambiguous (de)crescendo in MIDI
(1/1)
viertel:
Hallo
Ich versuche immer, das Protkoll eine ly-Umwandlung sauber zu halten. D.h. jeglichem Fehler sowieso, aber auch jeder Warnung nachgehen und sie zu eliminieren.
Das gelingt mir aber bei der Meldung, die im Titel steht nicht. Ich hatte sie in einer größeren ly-Datei mehrfach, aber auch mit diesem Minibeispiel erscheint sie:
--- Code: ---\version "2.18.2"
\header { title = "Programmierfehler" }
Noten = {
\new Staff {
\clef treble
\time 3/4
\key g \major
\tempo 4=120
\relative c' {
fis4(\mf g a)
<d g>2.\> % der Übeltäter
<a c>2.\mf
}
\bar "|."
}
}
Dummy = ##t
\score { \Noten \midi { } }
\header { instrument = "Programmierfehler: Impossible or ambiguous (de)crescendo in MIDI." }
\score { \Noten \layout { } }
--- Ende Code ---
Komplette Meldung:
--- Code: ---Starte lilypond-windows.exe 2.18.2 [F3.ly]...
»D:/Daten/LilyPond/Oklahoma/F3.ly« wird verarbeitet
Analysieren...
Interpretation der Musik...
Programmierfehler: Impossible or ambiguous (de)crescendo in MIDI.
Fortsetzung, die Daumen drücken
Interpretation der Musik...
Vorverarbeitung der grafischen Elemente...
MIDI-Ausgabe nach »F3.mid«...
Ideale Seitenanzahl wird gefunden...
Musik wird auf eine Seite angepasst...
Systeme erstellen...
Layout nach »F3.ps« ausgeben...
Konvertierung nach »./F3.pdf«...
Kompilation erfolgreich beendet
Erfolgreich abgeschlossen in 5.8".
--- Ende Code ---
Die Ausgabe wird wird indes korrekt erzeugt (Daumen drücken hilft also anscheinend).
Muß ich mir da Sorgen machen oder kann ich die Meldung getrost ignorieren?
Gruß vom 1/4
harm6:
Hallo,
Du schreibst ein mf dann decrescendo zu mf.
LilyPond versteht eine bestimmte Lautstärke, dann ein leiser werden hin zur selben Lautstärke.
Ich weiß zwar was gemeint ist aber rein von der Programmierlogik ist es natürlich Blödsinn ;)
Um das log clean zu haben könntest Du folgendes versuchen:
--- Code: ---Noten = {
\new Staff {
\clef treble
\time 3/4
\key g \major
\tempo 4=120
\relative c' {
fis4(\mf g a)
<d g>2.*11/12\> s2.*1/12\!
%% oder
%<< <d g>2. { s2\> s8. s16\! } >>
<a c>2.\mf
}
\bar "|."
}
}
--- Ende Code ---
HTH,
Harm
P.S. Das ist übrigens kein Windowsproblem, sondern ein generelles.
viertel:
Hallo Harm
Danke für die Antwort.
Musikalisch macht es durchaus Sinn, einen Ton abklingen zu lassen und dann wieder mit einer bestimmten vorgegebenen Laustärke weiterzuspielen. Bei f statt mf tritt der gleiche Fehler auf, bei p ist Ruhe im Karton.
Warum ist Lilypond da irritiert? Weil keine sinnvolle Endlautstärke für das Decrescendo angegeben ist?
Deine Vorschläge lassen den Fehler verschwinden. Sind aber unschöne trickreiche Workarounds.
Mir ist klar, daß das kein Windows, sondern ein genereller Fehler ist.
Aber wo einordnen? Ein Forum für (solche) Fehler sehe ich nicht.
1/4
harm6:
--- Zitat ---Musikalisch macht es durchaus Sinn, einen Ton abklingen zu lassen und dann wieder mit einer bestimmten vorgegebenen Laustärke weiterzuspielen.
--- Ende Zitat ---
Ja, musikalisch schon. Man muß es aber auch einem Computerprogram "erklären".
Und abklingen bis wohin?
--- Zitat ---Bei f statt mf tritt der gleiche Fehler auf, bei p ist Ruhe im Karton.
--- Ende Zitat ---
??
--- Code: ---Noten = {
\new Staff {
\clef treble
\time 3/4
\key g \major
\tempo 4=120
\relative c' {
fis4(\f g a)
<d g>2.\>
<a c>2.\mf
}
\bar "|."
}
}
--- Ende Code ---
Funktioniert bei mir. Nicht aber wenn ich \f durch \p ersetze.
--- Zitat ---Warum ist Lilypond da irritiert? Weil keine sinnvolle Endlautstärke für das Decrescendo angegeben ist?
--- Ende Zitat ---
Nun, Deine Endlautstärke ist dieselbe wie die Anfangslautstärke, mezzoforte. Wie soll da ein Computerprogramm ein "leiserwerden" gestalten?
--- Zitat ---Deine Vorschläge lassen den Fehler verschwinden. Sind aber unschöne trickreiche Workarounds.
--- Ende Zitat ---
Denke ich nicht. Du mußt angeben wie das decrescendo ausgeführt werden soll und es muß beendet sein bevor das neue mezzoforte zum tragen kommt.
Das letzte ist nicht nur programmiertechnisch sondern natürlich auch musikalisch selbstverständlich ;)
--- Zitat ---Mir ist klar, daß das kein Windows, sondern ein genereller Fehler ist.
Aber wo einordnen? Ein Forum für (solche) Fehler sehe ich nicht.
--- Ende Zitat ---
Nein, es ist kein Fehler ;)
Aber ich hätte kein Problem den Thread in "Fragen zu Funktionen" zu sehen.
EDIT:
Der einzige Fehler, den ich hier sehe ist, daß die Warnung als "Programmierfehler" ausgegeben wird.
Das ganze als tatsächliche "Warnung" zu betitlen wäre eher angemessen, imho.
Navigation
[0] Themen-Index
Zur normalen Ansicht wechseln