klawischnigg: mp3 läuft, Takte der Partitur werden markiert - wie geht das?

Beitrag lesen

problematische Seite

Hi there,

Da ja MuseScore die Partituren (Grafik) softwaremäßig erstellt (hochgeladen werden die Daten), kann die Software wissen, wie width und height jeder Takt auf der Grafik ist.

Ja, Du mußt "nur" das MuseScore-Format aufdröseln, sonst kannst Du das nicht automatisieren, weil ein Takt zwar immer gleich lang ist, aber nicht immer aus der gleichen Anzahl von Noten (oder Pausen oder was immer man so notieren kann) besteht.

Ich fürchte, das ist nicht wirklich trivial (wenn es überhaupt frei- oder bekanntgegeben wurde). Wenn Du nicht selbst ein Programm schreibst, das das MuseScore-Format auf dem Server analysiert und auflöst, dann mußt Du auf Deinem Server irgendeine Version von MS selbst laufen lassen die Du mit CLI (command line-Befehlen) steuerst. MS kann das und Du kannst bspw. soweit ich weiß mit der Option -O einen Midi-Dump erstellen - und aus einem Midifile solltest Du theoretisch Deine Geschichte erstellen können - auch wenn selbst das nicht wirklich trivial ist, aber Midifiles sind offen und sehr gut dokumentiert.

Ich werde da mal anfragen. Das hätte ich gerne für meine instrumentalen Arrangements.

Die werden Dir dazu auch nichts anderes sagen können.

Meine Hypothese wäre: da gibt's eine Steuertabelle, die angibt, zu welchem Zeitpunkt welcher Takt beginnt und wo er sich auf dem Notenblatt befindet.

Ja, klar, die wird eben aus dem MS-File oder eben aus einer Midi-Datei erzeugt werden, wenn's mit Hochladen gehen soll. Wenn Du das selbst von Hand erledigen willst, dann kannst Du eh alles, was ich vorher geschrieben habe, vergessen, aber dann wird's halt etwas mühsam; wobei, im Prinzip müsste es ja reichen, wenn Du irgendetwas in der Art notierst: 1.Takt x-Noten, 2. Takt x-Noten, 3.Takt x-Noten uswusf. Dann brauchst Du eigentlich nur mehr die BPM-Rate ('tschuldige, für Leute die Deine Art von Musik machen "Mälzels Metronom") und Du weißt, wann ein Takt beendet ist und ein neuer eingefärbt werden soll (dessen Länge Du ebenfalls Deiner Tabelle entnehmen kannst)...