Program Changes aus Songfiles auslesen

Guido

Guido

Registriert
09.06.04
Beiträge
611
Reaktionen
79
Punkte
967
Hallo!

Weiß jemand, wie man aus den Songfiles (*.song) die Program Changes für Hardwaresynthesizer rauskriegt? Aus meiner Sicht stehen die Werte in XML-Files unter Presets\External Devices\

Das schaut etwa so aus:
XML:
<?xml version="1.0" encoding="UTF-8"?>
<ExternalDevicePreset cid="{C34F3DB7-2330-4FED-8F72-E76E284BA6CA}">
    <Attributes x:id="InstrumentData">
        <List x:id="channels">
            <Attributes channel="0" programEnabled="1" programValue="0.000247478601522743701934814453125"/>
            <Attributes channel="1" programEnabled="0" programValue="0"/>
            <Attributes channel="2" programEnabled="0" programValue="0"/>
        </List>
    </Attributes>
</ExternalDevicePreset>

Das ist hier konkret mein Hydrasynth. Auf dem ersten MIDI-Kanal ist der Program Change aktiv. Allerdings stehen anscheinend Programmnummer, MSB und LSB verrechnet in diesem programValue, und ich habe keine Ahnung, wie man daraus die Einzelwerte zurückrechnet.
 
Was sind das für "*.song" Dateien?
Wo sind die denn in Verwendung?
 
Davon abgesehen.
Es wird wohl letztlich via Midi ein Tonerzeuger angesprochen.
Du kannst doch dieses Midi aufnehmen und im Midi-Editor dann nachsehen welche Werte in Midi verarbeitet werden, oder?
 
Studio One. .song ist die extension. Eigentlich ein normales Zip File in dem dann XML Daten stecken.

Ich nehme mal an, die Frage hat damit zu tun:


Ich wüsste aber nicht, warum man das so umständlich machen sollte. Das sind ja nur Midi Daten. Vor allem, was macht man dann mit den Daten, sollte man sie erfolgreich extrahiert haben? Irgend einem anderen .song file unterschieben?
 
Zuletzt bearbeitet:
AXO
Was bei Cubase eine *.cpr Datei ist, ist in Studio One eine *.song Datei?
 
Studio One. .song ist die extension. Eigentlich ein normales Zip File in dem dann XML Daten stecken.

Ich nehme mal an, die Frage hat damit zu tun:


Ich wüsste aber nicht, warum man das so umständlich machen sollte. Das sind ja nur Midi Daten. Vor allem, was macht man dann mit den Daten, sollte man sie erfolgreich extrahiert haben? Irgend einem anderen .song file unterschieben?
Ja, genau, ich weiß bei manchen Projekten nicht mehr, welcher Patch verwendet wurde und muss das aus dem Songfile ermitteln.

Ich habe es gerade ausprobiert: Es funktioniert, wenn ich das alte Songfile habe und den Wert aus programValue ins neue Songfile reinschreibe. Dann tauchen in der GUI die richtigen Patchinfos auf. Das ist aber halt etwas mühsam. Andererseits muss ich ja sowieso ins Songfile reinschauen und dann mit dem Wert die Patchinfos errechnen, um sie dann über die normale SO-GUI eingeben zu können. Ist jetzt auch nicht weniger Aufwand.

Würde aber trotzdem gerne wissen, wie das berechnet wird :)
 
Das können Dir vermutlich nur die Autoren des XML-Codes verraten, wie sie das beim Einlesen deuten...
Ja, es sei denn, es gibt einen allgemeinen MIDI-Standard, wie man solche Werte verrechnet. Habe aber erstmal nix in der Richtung gefunden.
 
Nope - Im Midi Standard ist es der Programmchange Befehl und der ist transparent.

Dieses XML ist quasi proprietär.
Steinberg schreibt auch Daten für ihre Produkte aus CUBASE raus in XML weg...
 
Meine Vermutung hier wäre dass die Formel lautet: 1.0 geteilt durch Anzahl Presets mal Index des ausgewählten Presets. Indexe fangen bei 0 an. Sprich hast Du das 16. Preset ausgewählt wäre der Index 15. Dadurch entsteht dieser Wert. Ist aber nur eine Vermutung.
 
Ich weiß es auf Anhieb auch nicht, könnte aber mal nachfragen. Ich vermute aber ähnliches: Um MSB und LSB in einem Wert zu speichern, rechnet man MSB * 128 + LSB. Ich vermute, dass in obigem Wert alle drei Werte stecken: MSB * 128 * 128 + LSB * 128 + Programmnummer - oder in anderer Reihenfolge. Und das ganze dann als Kehrwert wie djdeveloper vermutet hat. Dadurch ergeben sich zumindest Werte in dieser Größenordnung.
 
Zuletzt bearbeitet:

Ähnliche Themen

S
Antworten
3
Aufrufe
872
orpheus2006
orpheus2006
popsta
  • Artikel
News MIDI
Antworten
0
Aufrufe
6K
popsta
popsta

Oft gelesene Themen

Zurück
Oben