/// <summary> /// Query DeviceInformation class for Midi Output devices /// </summary> private async Task EnumerateMidiOutputDevices() { // Clear output devices OutputDevices.Clear(); OutputDeviceProperties.Clear(); outputDeviceProperties.IsEnabled = false; // Find all output MIDI devices string midiOutputQueryString = MidiOutPort.GetDeviceSelector(); DeviceInformationCollection midiOutputDevices = await DeviceInformation.FindAllAsync(midiOutputQueryString); // Return if no external devices are connected, and GS synth is not detected if (midiOutputDevices.Count == 0) { OutputDevices.Add("No MIDI output devices found!"); outputDevices.IsEnabled = false; NotifyUser("Please connect at least one external MIDI device for this demo to work correctly"); return; } // List specific device information for each output device foreach (DeviceInformation deviceInfo in midiOutputDevices) { OutputDevices.Add(deviceInfo.Name); outputDevices.IsEnabled = true; } NotifyUser("MIDI Output devices found!"); }
public void UpdateDevices() { InputDevices.Clear(); OutputDevices.Clear(); VideoDevices.Clear(); for (int i = 0; i < WaveIn.DeviceCount; i++) { InputDevices.Add(new InputMenuData { Name = WaveIn.GetCapabilities(i).ProductName }); } for (int i = 0; i < WaveOut.DeviceCount; i++) { OutputDevices.Add(new OutputMenuData { Name = WaveOut.GetCapabilities(i).ProductName }); } var videoDevices = new FilterInfoCollection(FilterCategory.VideoInputDevice); foreach (FilterInfo device in videoDevices) { VideoDevices.Add(new VideoMenuData { Name = device.Name }); } }
/// <summary> /// Clear all input and output MIDI device lists and properties /// </summary> private void ClearAllDeviceValues() { // Clear input devices InputDevices.Clear(); InputDevices.Add("Click button to list input MIDI devices"); inputDevices.IsEnabled = false; // Clear output devices OutputDevices.Clear(); OutputDevices.Add("Click button to list output MIDI devices"); outputDevices.IsEnabled = false; // Clear input device properties InputDeviceProperties.Clear(); InputDeviceProperties.Add("Select a MIDI input device to view its properties"); inputDeviceProperties.IsEnabled = false; // Clear output device properties OutputDeviceProperties.Clear(); OutputDeviceProperties.Add("Select a MIDI output device to view its properties"); outputDeviceProperties.IsEnabled = false; }