Buffalo_Bunch Geschrieben 22. Mai 2002 Geschrieben 22. Mai 2002 Tach Leutz! Mein Anliegen passt irgendwie nirgendwo rein, deswegen probier ich´s nochmal hier : Setze mich gerade mit Adaptionsprogrammierung für das Programm EMagic Sounddiver auseinander. Mein Problem ist, das ich gehört habe, das bei Midi-Datenpaketen das MSB immer = 0 bzw leer sein muss. Also wie übertrage ich denn 8 Bit Werte mit 7 Bit, die ich effektiv nutzen kann ???? Hab gehört, es gibt die Methode 2x7 Bit und Nibblen und so.... Irgendjemand ?? Zitieren
floppy Geschrieben 22. Mai 2002 Geschrieben 22. Mai 2002 Hi! Ich bin neu hier, aber Dein Problem ist mir gleich aufgefallen. Soweit ich das verstehe, willst Du MIDI programmieren, ist das richtig? Ich habe nur einen "kurzen" Einblick in die MIDI-Welt bekommen, am besten Du suchst mal mit google nach MIDI, da findest Du ein paar Seiten in deutsch und viele in englisch zu dem Thema MIDI-Spezifikationen. Da findest Du auch manchmal Codefragmente, wie man 8-bit und 7-bit Zahlen ineinader konvertieren kann (meisstens macht man das mit Bit-shifting), aber Vorsicht: überprüfe den Code, ob er auch wirklich das tut, was Du willst. Die 7-bit Codierung brauchst Du allerdings nur bei Angaben von Zeiten (delta-times), sonst sind alle Steuernachrichten (SysEx, ControlChange...) grösser 128, also 8-bit-Werte und alle "normale" Nachrichten (Noten zum Beispiel) kleiner 128, also 7-bit Werte. Ich hoffe, es hilft Dir erstmal weiter, falls ich die Internetseiten noch irgendwo finde, kann ich sie Dir nochmal schicken. Zitieren
Buffalo_Bunch Geschrieben 23. Mai 2002 Autor Geschrieben 23. Mai 2002 Danke! Bin gezz auch ein bissel weiter. Nur zur Info : Es gibt folgende Methoden : 7Bit, HiLo / LoHi Nibbles, ASCIIHex ,8x7Bit Packed, 7Bit and 1+7Bit Mixed, Word oriented organization, 2x7 Bit. So ist´s.... Btw : Ich dachte, generell bei jedem Midi-Datenpaket muss das MSB leer seinm oder ??? Zitieren
floppy Geschrieben 23. Mai 2002 Geschrieben 23. Mai 2002 Das kommt darauf an, was Du für Controler-Befehle (BnHEX) verarbeiten willst. Controler 0..31 sind MSB, 32..64 LSB. Probleme soll es wohl beim Übergang zwischen 2 MSB-Werten kommen. Hier ein paar Internet-Seiten: http://iem.kug.ac.at/ritsch/Vorlesungen/sn/node11.html http://home.snafu.de/sicpaul/midi/midiy.htm www.midi.org www.harmony-central.com/MIDI/Doc/doc.html www.zem-college.de/midi/index.html www.tu-chemnitz.de/informatik/RA/kompendium/vortraege_97/sound/sound_kap3_1.html Zitieren
Buffalo_Bunch Geschrieben 24. Mai 2002 Autor Geschrieben 24. Mai 2002 Hi! Erstma vielen Dank für die Mühe, die Du dir gegebn hast. Hast Du denn schon mal was für Midi programmiert ??? Ich bin auf dem Gebiet sozusagen Anfänger, hab mich bis jetzt wirklich nur theoretisch damit auseinander gesetzt. Wenn Du mal eine einfache routine oder so anzubieten hättest, aus der Anfänger was lernen kann, dann wärs cool, wenn Du mir sowas zukommen lassen könntest.... Was hast Du denn damit so grundsätzlich programmiert ????? Auch so etwas wie diese Adaptionen im EMagic sounddiver ?? Greetz Buffalo Zitieren
floppy Geschrieben 24. Mai 2002 Geschrieben 24. Mai 2002 Ich habe nur mal einen Text2MIDI-Programm geschrieben, nur so für mich zum herumtesten. Momentan schreibe ich einen Programm, der das ganze andersrum machen soll (MIDI2Text), habe aber schon meine Probleme, auch wegen den ganzen Formaten. Quellcodes findest Du überall im Netz (unter anderem auch auf den Seiten, die ich aufgeschrieben habe), da kann man sich halt mal angucken, wie man sowas machen müsste, ich versuche es aber selber zu programmieren, damit ich erstmal das Programmieren richtig lerne und auch etwas über MIDI erfahre. Leider habe ich von dem, was Du speziell suchst keine Ahnung. Ich würde mich aber freuen, wenn wir ein paar Erfahrungen austauschen könnten. Zitieren
floppy Geschrieben 24. Mai 2002 Geschrieben 24. Mai 2002 Übrigens, auf http://www.josef-k.net/mim/MidiFileFormat.html findest Du C-Codefragmente, wie man 8-bit und 7-bit ineinader wandeln kann. Zitieren
Empfohlene Beiträge
Dein Kommentar
Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.