Einzelnen Beitrag anzeigen

Delfiano

Registriert seit: 13. Jul 2020
61 Beiträge
 
#8

AW: erweiterte Demo für BASSMIDI.DLL

  Alt 21. Nov 2020, 21:35
Danke für die Antwort, aber das Probem besteht leider weiter.

Ich hab das jetzt noch paar mal durchgetestet, mal mit wordwrap, mal ohne, mal mit dem ursprünglichen ProcessMarkText und mal mit Deiner übersichtlicheren Version.

Die Ergebnisse sind identisch, ausser dass beider Deiner Version von ProcessMarkText am Dateiende noch eine zusätzliche Leerzeile drangehängt wird. Daraufhin werde ich mir das noch mal genauer ansehen.

Das Problem ist nach wie vor, dass immer die letzte Zeile eines Absatzes geschluckt wird, weil ich doch die vorletzte Zeile auswerte, damit nur vollständige Zeilen geschrieben werden. Ich weiss nicht, wie ich an die letzte (vollständige) Zeile komme, bevor neuer Text eingelesen wird.

Als ich es mal anders machte und wirklich jede Änderung in die Datei schrieb, waren diese letzten Zeilen der Asbätze zwar enthalten, aber dafür jede Menge unbrauchbaren Zeilen.

Mal hier die so erzeugten letzten Zeilen des ersten Absatzes von "achy-breaky-heart" (Midi-Datei im Anhang zur Kontrolle)

But Mr. DJ, please
I'm beggin' on my knees
I just can't take no
But Mr. DJ, please
I'm beggin' on my knees
I just can't take no more
But Mr. DJ, please
I'm beggin' on my knees
I just can't take no more of
But Mr. DJ, please
I'm beggin' on my knees
I just can't take no more of Bil
But Mr. DJ, please
I'm beggin' on my knees
I just can't take no more of Billy
But Mr. DJ, please
I'm beggin' on my knees
I just can't take no more of Billy Ray

Bei der von mir im Prog benutzten Methode, nur vollständige Zeilen zu schreiben, fehlt die letzte, also "I just can't take no more of Billy Ray" und das ist bei allen Absätzen so.

Auch hab ich probiert, erst alles intern (wie oben gezeigt) zwischenzuspeichern und dann auszuwerten, aber auch das ist mißglückt.

Das Problem ist ganz einfach, dass die Texte bruchstückweise erscheinen, damit sie zur jeweiligen Stelle der Musik passen und ich einfach nicht weiss, wie ich sie sauber und vollständig zu einer ganzen Zeile zusammenfassen und speichern kann, bevor die nächste beginnt und alles vorherige löscht.

Ergänzung

Wie weitere Tests ergaben, sind Lyrics in Midi-Dateien absolut nie einheitlich integriert. Mit der ProcessMarkText-Version von Delphi.Narium werden bei einigen saubere Zeilenumbrüche erzeugt, die es bei der Original-Version von un4seen.com nicht gibt. Da klebt manches direkt aneinander.

Aber leider gibt es (je nach Midi-Datei) auch mit der Version von Delphi.Narium Probleme.

Ich häng hier mal noch einen Link zu einer Website mit Karaoke-Midi-Dateien an. Interessanterweise sind da auch die Texte nochmal komplett angegeben, was den Vergleich mit dem erlaubt, was durch das Prog angezeigt bzw. gespeichert wird.

http://www.karaokeden.com/karaoke
Angehängte Dateien
Dateityp: zip achy-breaky-heart.zip (29,3 KB, 10x aufgerufen)

Geändert von Delfiano (22. Nov 2020 um 00:04 Uhr) Grund: Link zu Website mit Karaoke-Midi-Dateien hinzugefügt
  Mit Zitat antworten Zitat