Das hat dann aber keine Taktwechsel, Ritardandos, Fermaten, ...
Ja, ich habe ein ungeklärtes Problem. Habe eine Ablaufgrafik hinzugefügt. Grün sind die aktiven Takte (keine Pause für diese Stimme):
Der Snapshot zeigt den Einsatz des Basses eine s zu früh. Takt 50 wäre richtig. Eine Sekunde (zähle ein-und-zwan-zig) zu früh in eine Pause reinsingen kann nicht akzeptiert werden.
Deshalb die rot-grauen Balken zum ausmessen. Oben korrekt 127 Takte in 12 10 Takt Einheiten +, darunter korrekt 4:03 min in 24 10s Einheiten +.
Die Gesamtdauer 4:03 der Masterspur (erste) ermittle ich mit
arr_ausgewaehlte_audios[0].addEventListener( 'canplaythrough', function () {
durationSec = this.duration.toFixed(2); // Sekunden mit 2 Nachkommastellen
let arr = durationSec.split(".");
minuten = ("00" + Math.floor( arr[0] / 60 )) . slice(-2);
sekunden = ("00" + ( arr[0] - minuten * 60 )) . slice(-2);
if ( document.querySelector( "#duration" ) ) {
document.querySelector( "#duration" ).innerHTML = minuten +":" +sekunden;
}
});
und die laufende Zeit mit
var audioTimer = setInterval( getCurrentTime, 200 );
...
function getCurrentTime() {
runningTime = arr_ausgewaehlte_audios[0].currentTime.toFixed(2);
// #laufbalken weitersetzen, durationSec (Sekunden mit 2 Nachkommastellen)
var arr = runningTime.split(".");
minuten = ("00" + Math.floor( arr[0] / 60 )) . slice(-2);
sekunden = ("00" + ( arr[0] - minuten * 60 )) . slice(-2);
if ( document.querySelector( "#laufbalken" ) ) {
document.querySelector( "#laufbalken" ).style.left = 100 / durationSec * runningTime +"%"; // hundertstel Sekunden
document.querySelector( "#laufbalken" ).innerHTML = " " +minuten +":" +sekunden;
}
Habe überlegt, ob da ein Rundungsfehler vorliegen kann, aber nicht gefunden. Eine andere Frage wäre, ob das Programm MuseScore genau gleiche Taktlängen beim mp3-Export erzeugt.
Als ich die Bass-mp3 als Master genommen habe, ist die duration 04:04