| Namespace | Windows.Devices.Midi2.Transports.Rtp |
|---|---|
| Type Name | MidiRtpRemoteClientSettings |
| Type | WinRT Runtime Class |
| IDL | MidiRtpRemoteClientSettings.idl |
Held in MidiRtpHostRemoteClientSettingsConfig.RemoteClientSettings. Reported by MidiRtpConfiguredHost.RemoteClientSettings and MidiRtpSavedHost.RemoteClientSettings.
| Constructor | Description |
|---|---|
MidiRtpRemoteClientSettings() |
Creates an empty entry with the default settings |
MidiRtpRemoteClientSettings(remoteClientName) |
Creates an entry for this remote device with the default settings |
| Property | Description |
|---|---|
RemoteClientName |
The name the remote device sends |
SendSpeedLimit |
How fast the host sends to this remote device. Unlimited by default. See MidiRtpSendSpeedLimit |
SkipInBetweenValuesToCatchUp |
True to skip some in-between steps of long control change, pressure and pitch bend moves when messages pile up behind SendSpeedLimit, so this device catches up. True by default. Set it to false for a device that needs every message, however late. Added in version 2 of MidiTransportsRtpApiContract |
OfflineRetentionSeconds |
How long the host keeps this device’s endpoint and its MIDI 1.0 port after the device leaves. Immediate by default. See MidiRtpOfflineRetention. Added in version 2 of MidiTransportsRtpApiContract |
EndpointDeviceId |
Read only. The endpoint the host is keeping for this device while it’s away. Empty while the device is connected, and when nothing is kept. Only filled in on the entries from MidiRtpConfiguredHost.RemoteClientSettings. It’s never sent or saved. Added in version 2 of MidiTransportsRtpApiContract |
Use this when one device connected to a host needs settings different from the others. A hardware synth that loses data during a long SysEx dump can get MIDI 1.0 wire speed, while a computer connected to the same host gets no limit. For this device, SendSpeedLimit and SkipInBetweenValuesToCatchUp are used instead of the host’s.
A remote device is known by the name it sends, ignoring uppercase and lowercase differences, the same way the host’s remembered decisions know it. RTP-MIDI carries nothing else that stays the same from one connection to the next. An entry with no name is left out when the configuration is sent or saved.
The host uses this speed from the moment the device connects. A device that’s already connected changes speed right away, without being disconnected.
RTP-MIDI can’t tell this PC when a device misses data, so unlike Network MIDI 2.0 there’s no choice to slow down by itself.
Some people want Windows to be the host, so their device connects to this PC. OfflineRetentionSeconds lets the host keep that device’s endpoint while it’s switched off, the same way a connection this PC makes can. Apps keep their MIDI port, and anything they send to it while the device is away is thrown away. When the device connects again, it gets the same endpoint back.
KeepAlways makes the endpoint as soon as the host starts, even before the device has ever connected. It’s named after RemoteClientName.Immediate, or removing the device’s entry so it uses the host’s settings, removes a kept endpoint straight away. So does turning off or removing the host.KeepAlways, the endpoint stays.While the device is away, the kept endpoint only goes back to a device connecting from an address that device used before. Another device sending the same name from a different address is listed with GetPendingRemoteClients() and waits until someone approves it, even on a host that lets anyone in. Once approved, it gets the kept endpoint too. After the service restarts, a KeepAlways endpoint goes to the first device that connects with its name. So after the device’s address changes, for example when a router hands it a new one, approve it once more.
A remote device is known by the name it sends, ignoring uppercase and lowercase differences, the same way the host’s remembered decisions know it. RTP-MIDI carries nothing else that stays the same from one connection to the next. An entry with no name is left out when the configuration is sent or saved.
The host uses this speed from the moment the device connects. A device that’s already connected changes speed right away, without being disconnected.
RTP-MIDI can’t tell this PC when a device misses data, so unlike Network MIDI 2.0 there’s no choice to slow down by itself.
