def init(self, context): RawEKG = context.get_channel('Channel 1', color='red', label='Raw with 50/60 Hz Noise') RawEKG = DCBlock(RawEKG).ac RAWOSC1 = Oscilloscope('Raw Signal', channels=[RawEKG]) RAWOSC1.autoscale = True gridFilter = BandPass(1.0, 35.0, input=RawEKG) EKG = gridFilter.output EKG.color = 'green' RAWOSC1.channels.append(EKG) fftFilt = Spectrograph('Spectrogram', mode='waterfall') fftFilt.freq_range = gridFilter.range fftFilt.label = 'Frequency Spectrum' heart = HeartAnalyzer(input=EKG) BPM = TextBox('BPM', label='Heartbeats per minute') BPM.input = heart.bpm drum = MIDIDrum(port=0) drum.trigger = heart.beat self.RAWOSC1 = RAWOSC1 self.fftFilt = fftFilt
def init(self, context): Fz = context.get_channel('Channel 1', color='red', label='Raw with 50/60 Hz Noise') Fz = DCBlock(Fz).ac Fz = BandPass(1.0, 25.0, input=Fz) Osci1 = Oscilloscope('Raw Signal', channels=[Fz]) Alpha = RMS(BandPass(9.0, 11.0, input=Fz)) Alpha = Normalizer(Alpha) self.midi = MidiControl(cc={23: Alpha}) self.midi.cc[1] = Normalizer(RMS(BandPass(4, 8, input=Fz))) #self.midi.cc[2] = Normalizer(Intensity(BandPass(15, 18, input=Fz))) #self.midi.cc[3] = Normalizer(Intensity(BandPass(18, 21, input=Fz))) #dom_freq = DominantFrequency(Fz).freq #dom_freq.color = 'green' #self.midi.cc[4] = dom_freq Osci2 = Oscilloscope('Intensity', channels=[Alpha]) Osci2.autoscale = False self.midi.cc[1].color = 'red' Osci2.channels.append(self.midi.cc[1]) #fftFilt = Spectrograph('Spectrogram', mode='waterfall') #fftFilt.freq_range = gridFilter.range #fftFilt.label = 'Frequency Spectrum' self.RAWOSC1 = Osci1 self.OSC2 = Osci2 #self.fftFilt = fftFilt self.bars = BarSpectrogram('Spectrogram', input=Fz)