def __call__(self): from aubio.median import short_find task.__call__(self) isonset,val = self.opick.do(self.myvec) if (aubio_silence_detection(self.myvec(),self.params.silence)): isonset=0 freq = -1. else: freq = self.pitchdet(self.myvec) minpitch = self.params.pitchmin maxpitch = self.params.pitchmax if maxpitch and freq > maxpitch : freq = -1. elif minpitch and freq < minpitch : freq = -1. freq = aubio_freqtomidi(freq) if self.params.pitchsmooth: self.shortlist.append(freq) self.shortlist.pop(0) smoothfreq = short_find(self.shortlist, len(self.shortlist)/2) freq = smoothfreq now = self.frameread ifreq = int(round(freq)) if self.oldifreq == ifreq: self.oldifreq = ifreq else: self.oldifreq = ifreq ifreq = 0 # take back delay if self.params.delay != 0.: now -= self.params.delay if now < 0 : now = 0 if (isonset == 1): if self.params.mintol: # prune doubled if (now - self.last) > self.params.mintol: self.last = now return now, 1, freq, ifreq else: return now, 0, freq, ifreq else: return now, 1, freq, ifreq else: return now, 0, freq, ifreq
def __call__(self): from aubio.median import short_find task.__call__(self) if (aubio_silence_detection(self.myvec(), self.params.silence) == 1): freq = -1. else: freq = self.pitchdet(self.myvec) minpitch = self.params.pitchmin maxpitch = self.params.pitchmax if maxpitch and freq > maxpitch: freq = -1. elif minpitch and freq < minpitch: freq = -1. if self.params.pitchsmooth: self.shortlist.append(freq) self.shortlist.pop(0) smoothfreq = short_find(self.shortlist, len(self.shortlist) / 2) return smoothfreq else: return freq
def __call__(self): from aubio.median import short_find task.__call__(self) if (aubio_silence_detection(self.myvec(),self.params.silence)==1): freq = -1. else: freq = self.pitchdet(self.myvec) minpitch = self.params.pitchmin maxpitch = self.params.pitchmax if maxpitch and freq > maxpitch : freq = -1. elif minpitch and freq < minpitch : freq = -1. if self.params.pitchsmooth: self.shortlist.append(freq) self.shortlist.pop(0) smoothfreq = short_find(self.shortlist, len(self.shortlist)/2) return smoothfreq else: return freq