Entwickler-Ecke
Open Source Projekte - Klavier - noch ein Klavier
Horst-Dieter - So 25.08.13 10:38
Titel: Klavier - noch ein Klavier
Mein neues Klavierprogramm sieht auf den ersten Blick aus wie das Programm Klavier von Mathematiker. Dieses diente mir auch als Anregung.
Das vorliegende Programm vereint das Programm von Mathematiker (mit einigen Änderungen) mit meinem Programm Piano, das man auch in der Entwicklerecke finden kann. So war es z. b. notwendig, die als Textdatei bei Mathematiker geschriebenen Musikstücke mit einer Extension zu versetzen (.mel), so dass diese nicht mehr aus einer Resourcendatei gelesen, sondern vom Programm zur Laufzeit geladen werden können. Dies Verfahren ermöglicht auch das Schreiben und Speichern weiterer Musikstücke.
Beide Musikformate (*.mel und *.mmd) sind im Grunde Hilfsformate. Sie können vom Programm in echte Midi-Dateien umgewandelt werden. Das Programm kann auch echte Midi-Dateien laden und abspielen und in das Hilfsformat (.mmd) umwandeln.
Delete - So 25.08.13 11:37
Kann man das Klavierprogramm auch via Master-Keyboard ansteuern?
FinnO - So 25.08.13 11:47
Bei mir geht das nicht ;) Wäre aber mal ein Feature, über das man nachdenken könnte...
Mathematiker - So 25.08.13 12:53
Hallo,
Horst-Dieter hat folgendes geschrieben : |
Mein neues Klavierprogramm sieht auf den ersten Blick aus wie das Programm Klavier von Mathematiker. Dieses diente mir auch als Anregung. |
Sehr schön. Mit den vielen Möglichkeiten kommt mein einfacher Programmierversuch nicht mit.
Horst-Dieter hat folgendes geschrieben : |
Sie können vom Programm in echte Midi-Dateien umgewandelt werden. Das Programm kann auch echte Midi-Dateien laden und abspielen und in das Hilfsformat (.mmd) umwandeln. |
Das ist mir ein Rätsel, wie das funktioniert. Ich habe bis heute noch nicht kapiert, wie das mmd-Format aufgebaut ist.
Ich würde mir wünschen, dass man mmd in mel umwandeln kann. Dann verstehe ich es vielleicht. :wink:
Beste Grüße
Mathematiker
Horst-Dieter - Mo 26.08.13 13:48
Hinweise zum Format .mmd
Long-Midi-Noten bestehen aus zwei Zahlenreihen mit je 8 Ziffern, die durch Semikolon getrennt werden.
Folgendes zu den Spalten:
1 Spalte: Sie enthält Anfangs und Endzeit des Events (Die Differenz entspricht der Länge der Note). Leerzeichen sind nicht zulässig. Die Differenz 8 entspricht einer Viertelnote.
Die Spalten 2,4,6 und 8 enthalten feste Zahlenwerte. Sie sind nur notwendig, um das mmd-Format fehlerfrei in das midi-Format umwandeln zu können.
3. Spalte: Sie enthält das eigentliche Event (z. B. Instrument, NoteOn, NoteOff). Eigentlich wird die Eventangabe als Hexadezimalwert erwartet. Bei meinem Format wird die Hexzahl aber als Dezimalwert eingegeben.
5. Spalte: Sie ethält den Notenwert - also z. B. die Zahl 67 für die Note G.
7. Spalte: Sie enthät Angaben zur Lautstärke( Werte 1=min bis 127=max). Beim Event NoteOff muss die Lautstärke auf 0 gesetzt werden.
Die Zeitangaben(1. Spalte) müssen unbedingt fortlaufend eingegeben werden. Die einzelnen Zeilen werden durch einen Timer (Interval 50) aufgerufen.
Noten köpnnen geschachtelt eingegeben werden. Dies erlaubt zwei oder mehrere Noten gleichzeitig abzuspielen oder natürlich auch, ein Event unterschiedlich lange ablaufen zu lassen.
Das Format reagiert sauer auf Leerzeilen (auch am Ende). Das kann aber auch ein Vorteil sein. Beim Programmieren einer Melodie kann man so die Widergabe an jeder beliebigen Stelle stoppen.
Entwickler-Ecke.de based on phpBB
Copyright 2002 - 2011 by Tino Teuber, Copyright 2011 - 2025 by Christian Stelzmann Alle Rechte vorbehalten.
Alle Beiträge stammen von dritten Personen und dürfen geltendes Recht nicht verletzen.
Entwickler-Ecke und die zugehörigen Webseiten distanzieren sich ausdrücklich von Fremdinhalten jeglicher Art!