From 4812012f394cda135934d4d2ce9bb7a5fa3d0fbf Mon Sep 17 00:00:00 2001 From: unspeaker Date: Sat, 28 Dec 2024 23:45:08 +0100 Subject: [PATCH] flatten monitoring --- crates/tek/src/midi/midi_rec.rs | 16 +++++++++------- 1 file changed, 9 insertions(+), 7 deletions(-) diff --git a/crates/tek/src/midi/midi_rec.rs b/crates/tek/src/midi/midi_rec.rs index 6c2bb768..02e75213 100644 --- a/crates/tek/src/midi/midi_rec.rs +++ b/crates/tek/src/midi/midi_rec.rs @@ -19,7 +19,9 @@ pub trait MidiRecordApi: HasClock + HasPlayPhrase + HasMidiIns { for input in self.midi_ins_mut().iter() { for (sample, event, bytes) in parse_midi_input(input.iter(scope)) { if let LiveEvent::Midi { message, .. } = event { - midi_buf[sample].push(bytes.to_vec()); + if self.monitoring() { + midi_buf[sample].push(bytes.to_vec()); + } update_keys(&mut notes_in.write().unwrap(), &message); } } @@ -46,14 +48,14 @@ pub trait MidiRecordApi: HasClock + HasPlayPhrase + HasMidiIns { phrase: &Option>>, midi_buf: &mut Vec>> ) { - let sample0 = scope.last_frame_time() as usize; - let start = started.sample.get() as usize; - let recording = self.recording(); - let timebase = self.clock().timebase().clone(); - let quant = self.clock().quant.get(); if let Some(phrase) = phrase { + let sample0 = scope.last_frame_time() as usize; + let start = started.sample.get() as usize; + let recording = self.recording(); + let timebase = self.clock().timebase().clone(); + let quant = self.clock().quant.get(); let mut phrase = phrase.write().unwrap(); - let length = phrase.length; + let length = phrase.length; for input in self.midi_ins_mut().iter() { for (sample, event, bytes) in parse_midi_input(input.iter(scope)) { if let LiveEvent::Midi { message, .. } = event {