public void TestChannel() { Console.WriteLine(string.Join(", ", MidiCommunicationChannel.AvailableMidiInputPorts.Select(a => a.Name))); using (MidiCommunicationChannel comms = new MidiCommunicationChannel(TestInputPort, TestOutputPort)) { comms.MidiResponse += MidiResponse; Console.WriteLine("Sending Message"); var status = new SXLStatusMessage(0); DebugMessage(status); comms.SendMidiMessage(status, a => Console.Write("made it back")); Thread.Sleep(200); Console.WriteLine("Response"); Console.WriteLine(response == null ? "No Response" : string.Join("", response.RawData.Select(a => a.ToString("x2")))); if (response != null) { var parsed = new AkaiSysExResponseParser().Parse(response.RawData); } //comms.SendMidiMessage(new ZStatusMessage(0)); //comms.SendMidiMessage(new RawMidiMessage(new byte[] { 0xF0, 0x47, 0x1, 0x0, 0x48, 0xF7 }, 0, 0)); } }
public async Task TestConnect() { var api = MidiAccessManager.Default; var output = await api.OpenOutputAsync(api.Outputs.First(a => a.Name == TestConstants.S1100PortOutput).Id); var msg = new SXLStatusMessage(0).FormatToMidiBytes(); output.Send(msg, 0, msg.Length, 0); }