public WebMidiPlayer(Uri uri, SmfMusic music)
            : base(music)
        {
            client = ChannelFactory<IMidiDeviceClient>.CreateChannel (new BasicHttpBinding (), new EndpointAddress (uri));
            client.Open ();

            MessageReceived += delegate (SmfMessage msg) {
                switch (msg.StatusByte) {
                case 0xF0:
                case 0xF7:
                    client.ProcessSysExMessage (msg.Data);
                    break;
                case 0xFF:
                    // do nothing
                    break;
                default:
                    client.ProcessMessage (msg.Value);
                    break;
                }
            };
        }
Example #2
0
 public RtMidiPlayer(RtMidiOutputDevice output, SmfMusic music)
     : base(music)
 {
     this.output    = output;
     EventReceived += delegate(SmfEvent e) { SendMidiEvent(e); };
 }
 public PortMidiPlayer(MidiOutput output, SmfMusic music)
     : base(music)
 {
     this.output    = output;
     EventReceived += delegate(SmfEvent m) { SendMidiMessage(m); };
 }
 public PortMidiPlayer(MidiOutput output, SmfMusic music)
     : base(music)
 {
     this.output = output;
     EventReceived += delegate (SmfEvent m) { SendMidiMessage (m); };
 }