Abfragen von MIDI-Ausgabegeräten
Bevor Sie eine MIDI-Datei wiedergeben, sollten Sie die midiOutGetDevCaps-Funktion verwenden, um die Funktionen des MIDI-Ausgabegeräts zu bestimmen, das im System vorhanden ist. Diese Funktion übernimmt eine Adresse einer MIDIOUTCAPS-Struktur , die sie mit Informationen über die Funktionen des jeweiligen Geräts füllt. Diese Informationen umfassen den Hersteller und die Produkt-ID, einen Produktnamen für das Gerät und die Versionsnummer des Gerätetreibers (angegeben in den Mitgliedern wMid, wPid, szPname und vDriverVersion ).
MIDI-Ausgabegeräte können entweder interne Synthesizer oder externe MIDI-Ausgabeports sein. Das wTechnology-Element der MIDIOUTCAPS-Struktur gibt die Technologie des Geräts an.
Wenn es sich bei dem Gerät um einen internen Synthesizer handelt, sind zusätzliche Geräteinformationen in den Elementen wVoices, wNotes und wChannelMask verfügbar. Das wVoices-Element gibt die Anzahl der Stimmen an, die das Gerät unterstützt. Jede Stimme kann einen anderen Klang oder ein anderes Klangbild haben. Stimmen werden in MIDI-Kanälen organisiert. Das wNotes-Element gibt die Polyphonie des Geräts an, d. h. die maximale Anzahl von Notizen, die gleichzeitig wiedergegeben werden können. Das wChannelMask-Element ist eine Bitdarstellung der MIDI-Kanäle, auf die das Gerät reagiert. Wenn das Gerät beispielsweise auf die ersten acht MIDI-Kanäle reagiert, wird wChannelMask 0x00FF. Wenn es sich bei dem Gerät um einen externen Ausgabeport handelt, werden wVoices und wNotes nicht verwendet, und wChannelMask ist auf 0xFFFF festgelegt.
Das dwSupport-Element der MIDIOUTCAPS-Struktur gibt an, ob der Gerätetreiber Volumeänderungen, Patchzwischenspeicherung und Streaming unterstützt. Volumeänderungen werden nur von internen Synthesizergeräten unterstützt. Externe MIDI-Ausgabeports unterstützen keine Volumeänderungen. Informationen zum Ändern der Lautstärke finden Sie unter Ändern der internen MIDI-Synthesizer-Lautstärke.