Einzelnen Beitrag anzeigen

klaus schaaff

Registriert seit: 25. Jul 2009
24 Beiträge
 
#97

AW: TMIDIPlayerComp

  Alt 4. Feb 2016, 20:39
Hallo EWeiss,

danke für die schnelle Antwort und Deine Hinweise.

Bei mir existiert ein älteres Projekt "MidiPlayer" aus Delphi 5 siehe Anhang, deshalb die Portierung nach D5. Mir ist noch unklar welche Intension besteht hinsichtlich Deines Projekts. Will man ein einfaches Werkzeug entwickeln das im Wesentlichen die Grundfunktionen für Karaokebearbeitung enthält, oder eine Expertensoftware für Musiker, ein echtes Sequenzerprogram.

Speziell hier habe ich festgestellt, dass die Grundstruktur von MidiComPackage Hindernisse enthält, um weitere Features einzuarbeiten. Beispiel:

Vielleicht hast Du mal eine Note angeklickt in meiner Version. Dann werden die Werte in den kleinen Editoren unterhalb der Transportsteuerung mit den Werten der Note belegt. Mein Ziel wäre, ändert man den Anfang der Note, sollte MusicSheet darauf reagieren und die Note an neuem Platz darstellen. Die Grundstruktur von MusikSheet berechnet aber immer nur einen kompletten Score. Für seqmentierte Berechnungen hat die Unit keine Grundlagenstruktur. Genauso ändere ich Velocity einer Note, sollte bei Play das hörbar werden. All das, rückwärtige Zugriffe, Schnittstellen auf die Midi-Daten, sind in der bisherigen Struktur nur schwer zu realisieren. Dennoch ist der Score an sich eine hervorragende Leistung. Grund genug, um daran weiter zu arbeiten. Hier fehlen noch Features, die das Notenbild einem echten Notenbild und der Arbeitsweise eines Musikers entsprechen und annähern.

Das sind:
- Quantisierung des Notenbilds
- Korrekte Darstellung von Triolen und n-Tolen
- Kanalbasierte Mehrstimmigkeit eines Notensystems.
Channel 1 = Oberstimme,
Channel 2 = Mittelstimme
Channel 3 = Bassstimme
diese beliebig zuweisbar
- Akkoladen
- Textdarstellung der Systeme
System 1 = Viola
System 2 = Continuo
- Weitere Notenschlüssel Violin hoch 8 Violin unter 8, Sopran, Tenor etc.
- Legatobögen
- Korrekte Notengruppierungen, 8tel, 16tel Balken.

Das sind Ansprüche, wo man mir zur Antwort geben kann: Kauf dir doch Cubase. Ich hab Cubase und acht andere. Keins genügt mir für alles. Manchmal schreibe ich mir eigene Midi-Funktionen in meinen MidiPlayer damit ich bestimmte Dinge realisieren kann. Da ist es auch, warum diese Arbeit von Dir so viel wert ist.

Den PianoRoll schaue ich mir mal an, das kann aber dauern. Momentan hadere ich an der Grundstruktur, um überhaupt weitere Features einzubauen zu können. Ich hänge mal meinen MidiPlayer an, wo nicht alles funktioniert, wo man aber sehen kann, wo ich hin will und wo bei mir schon fertige Komponenten existieren.

Meine bisherige Erweiterung von Editoren: Laufanzeige, Locatoren, Taktanzeige, Tempo usw. ist noch unfertig. Die Unit CbEdit.pas sollte nicht als Komponente in Delphi installiert werden, da der Designmodus vollkommen fehlt. Hier war meine Intension den Traffic von Messages in der VCL so weit zu minimieren, das nie Störungen der Midi-Wiedergabe entstehen. Bisher ist das nicht vollständig von mir. Sequenzerprogramme sind neben CAD-CAM Systemen das Aufwendigste was Programmierer machen können. Dagegen sind Datenbankanwendungen steuerungstechnisch nur ein kleiner Kühlschrank und Sequenzersoftware ein Atomkraftwerk.

Mal so weit
Klaus Schaaff
Angehängte Dateien
Dateityp: zip MidiPlayer.zip (482,1 KB, 69x aufgerufen)
  Mit Zitat antworten Zitat