public OutputDeviceEventSink(OutputDevice outDevice, MidiEvents eventSource) { FOutDevice = outDevice; FEventSource = eventSource; RegisterEvents(); }
void Start() { midiEvents = new MidiEvents(); midiEvents.AddGenerator(MidiInput.singleton as IMidiEvents); midiEvents.AddGenerator(MidiKeyboardInput.singleton as IMidiEvents); midiEvents.AddGenerator(MidiPlayMakerInput.singleton as IMidiEvents); midiEvents.AddGenerator(MidiSeqKaraokeScript.singleton as IMidiEvents); midiEvents.NoteOnEvent += NoteOnHandler; }
public static OutputDeviceEventSink FromDeviceID(int deviceID, MidiEvents eventSource) { var deviceCount = OutputDevice.DeviceCount; if (deviceCount > 0) { deviceID %= deviceCount; return(new OutputDeviceEventSink(new OutputDevice(deviceID), eventSource)); } return(null); }
public MidiEventSourceManager(MidiEvents evts) { if (evts != null) { var obs = Observable.FromEventPattern <ShortMessageEventArgs>(evts, "ShortMessageReceived"); FReceivedEvents = obs.Select(evt => evt.EventArgs).Chunkify().GetEnumerator(); } else { FReceivedEvents = Observable.Empty <ShortMessageEventArgs>().Chunkify().GetEnumerator(); } }
public void SetMidiEventSource(MidiEvents midiEvents) { if (FMidiEventSource != midiEvents) { if (FMidiEventSource != null) { FMidiEventSource.ShortMessageReceived -= FMidiEventSource_RawMessageReceived; } FMidiEventSource = midiEvents; if (FMidiEventSource != null) { //receive midi events FMidiEventSource.ShortMessageReceived += FMidiEventSource_RawMessageReceived; } } }
public override void CompleteParse() { if (MediaType == "MIDI") { foreach (var c in this.ChildElements) { if (c.ElementName.ToUpper() == "E") { var m = new ReaperMidiEvent(); m.Selected = c.Data[0] == "e" ? true : false; m.PositionDelta = Convert.ToInt32(c.Data[0]); m.MidiEvent = (ReaperNoteEvent)Convert.ToInt32(c.Data[1], 16); m.Note = Convert.ToInt32(c.Data[2], 16); m.Velocity = Convert.ToInt32(c.Data[3], 16); MidiEvents.Add(m); } } } }
public void SetMidiEventSource(MidiEvents midiEvents) { if(FMidiEventSource != midiEvents) { if(FMidiEventSource != null) FMidiEventSource.RawMessageReceived -= FMidiEventSource_RawMessageReceived; FMidiEventSource = midiEvents; if(FMidiEventSource != null) { //receive midi events FMidiEventSource.RawMessageReceived += FMidiEventSource_RawMessageReceived; } } }