| Namespace | Windows.Devices.Midi2.Transports.Synth |
|---|---|
| Type Name | MidiSynthStatus |
| Type | WinRT Runtime Class |
| IDL | MidiSynthStatus.idl |
MidiSynthStatus holds the synthesizer’s settings at the moment you ask. Get one from MidiSynthManager.GetStatus().
It’s also where you start when you change a setting. MidiSynthConfig has a constructor that takes one, and that makes it safe to change a single setting.
| Property | Description |
|---|---|
IsEnabled |
Whether the synthesizer is turned on. When false, it has no MIDI endpoint at all and doesn’t hold the audio device |
RenderMode |
The MidiSynthRenderMode in use |
AudioOutputMode |
The MidiSynthAudioOutputMode in use |
BankSelectMode |
The MidiSynthBankSelectMode in use |
VolumeDecibels |
The volume adjustment set by the person using the PC, in decibels. Zero is the standard level |
AreEffectsEnabled |
Whether reverb and chorus are turned on |
EndpointDeviceId |
The synthesizer’s one endpoint. Empty while it’s turned off. Pass it to MidiSession.CreateEndpointConnection |
Zero decibels isn’t silence. It’s the standard level. The synthesizer is set up to be as loud as the older synthesizer that came with Windows, so existing files sound as loud as they always did. VolumeDecibels turns it up or down from there. It’s the only volume control the synthesizer has. The service runs in the background, in session 0, and sound from there doesn’t get its own slider in the Windows Volume Mixer.
This is separate from the Master Volume that a MIDI file sets with a Universal System Exclusive message. The music controls that one, and a System Reset clears it. This one belongs to the person using the PC, and nothing in a file can change it.
An empty EndpointDeviceId is normal when IsEnabled is false. The endpoint is removed, not muted, so there’s no id to give.
What you read is what’s really running. If a value in the configuration was out of range or the wrong type, it’s corrected when it’s read. So this reports what the synthesizer is really doing, not what the configuration asked for.
