def walk(self, N=64, freq_base=A2, freq_max=C8,  start=0, end=None, each=True, combine=False, twin=0.020, thop=0.010):
        ''''''
        N = int(N)
        assert N > 0
        #
        samplerate = self.audio.samplerate
        assert 1 <= freq_base <= freq_max <= samplerate/2.0
        #
        #step = int(2**np.ceil(np.log2(float(samplerate) / N)))
        step = 1024
        win = step
        assert 0 < step <= win
        #
        coeffies = self.make_erb_filter_coeffiences(samplerate, N, freq_base, freq_max)
        zi = None
        #
        cstep = int(np.ceil(thop*samplerate))
        cwin = int(np.ceil(twin*samplerate))
        Y = np.zeros((0,N))
        if combine:
            assert thop <= twin < 0
            assert 0 < cstep <= cwin
        #
        for samples in self.audio.walk(win, step, start, end, join_channels=True):
            y, zi = self.filter(samples, coeffies, zi)
            if not combine:
                if each:
                    for frame in y: yield frame
                else:
                    yield y
            else:
                Y = np.append(Y, y, 0)
                while Y.shape[0] >= cwin:
                    wf, Y = Y[:cwin], Y[cstep:]
                    yield np.sqrt(np.mean(np.square(wf), 0))
        if combine and Y.shape[0] > 0:
            yield np.sqrt(np.mean(np.square(Y), 0))
dataset/ETHPy150Open dongying/dear/dear/spectrum/auditory.py/GammatoneSpectrum.walk/swapped operands of `<`