Entwickler-Ecke
Multimedia / Grafik - MIDI-Töne erzeugen
Florian H - Mo 03.11.03 21:29
Titel: MIDI-Töne erzeugen
Hallo,
wie kann ich denn mit meinem Programm einen Ton als MIDI erzeugen?
Also dass das an die Soundkarte gesendet wird...
ich habe da folgenden Code gefunden:
Delphi-Quelltext
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16: 17:
| procedure TForm1.Button1Click(Sender: TObject); var devHandle: HMIDIIN; midiRes: MMRESULT; theMsg : cardinal; begin devHandle := midiOutOpen( @devHandle, 1, 0, 0, CALLBACK_NULL );
theMsg := DWORD(MidiMessage) Or (DWORD(MidiData1) shl 8) Or (DWORD(MidiData2) shl 16);
midiRes := midiOutShortMsg( devHandle, theMsg );
midiInClose(devHandle); end; |
Jetzt weiß ich aber nicht genau, was ich bei MidiMessage und MidiData 1+2 einsetzen soll/kann/darf/muss.
Weiß das einer (Google hat mir nicht geholfen...) oder funzt der Code überhaupt vom Prinzip her?
Man muss übrigens die mmSystem eingebunden haben...
Viele Grüße
Florian[/delphi]
Florian H - Di 04.11.03 17:29
hm, da gibts allerdings nur was zum abspielen einer kompletten MIDI-Datei oder zum Device rausfinden...aber nix für einen einzelnen ton... :?
ich such aber mal nach ner kompo...
mimi - Di 04.11.03 18:26
bei toryy gib es MidiGen(TonGen ?) oder so änlich. das kann einzelne midi töne erzeugen
Florian H - Di 04.11.03 18:44
Yeah, danke!
Habe es vorhin gefunden, habe aber bis vor ein paar Minuten gebraucht, um rauszufinden, wie es funktioniert und hab mein Programm das ich haben wollte jetzt grade fertiggestellt *freu*
mimi - Di 04.11.03 19:06
was wolltes du denn damit schreiben?
Florian H - Di 04.11.03 19:24
so ein virtuelles Keyboard, also dass man die Tastatur benutzen kann statt eines MIDI-Keyboards, weil mein Gameport-Anschluss kaputt ist :wink:
Da gibts zwar schon eines (oder mehrere) aber die sind entweder Shareware oder sie müssen selbst immer im Vordergrund sein, also den Focus haben, damit die Tastendrücke erkannt werden.
Meines kann jetzt minimiert werden und ich kann gemütlich an anderen Programmen was machen und gleichzeitig spielen.
Entwickler-Ecke.de based on phpBB
Copyright 2002 - 2011 by Tino Teuber, Copyright 2011 - 2026 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!