# analysis loader.audio >> fcut.signal fcut.frame >> w.frame w.frame >> fft.frame fft.fft >> smanal.fft smanal.magnitudes >> (pool, 'magnitudes') smanal.frequencies >> (pool, 'frequencies') smanal.phases >> (pool, 'phases') # subtraction fcut.frame >> smsub.frame smanal.magnitudes >> smsub.magnitudes smanal.frequencies >> smsub.frequencies smanal.phases >> smsub.phases smsub.frame >> (pool, 'frames') essentia.run(loader) #store to file outaudio = pool['frames'].flatten() awrite = es.MonoWriter (filename = outputFilename, sampleRate = params['sampleRate']); outvector = es.VectorInput(outaudio) outvector.data >> awrite.audio essentia.run(outvector)
# write audio output print audioout.shape awrite(audioout.astype(np.float32)) if mode == 'streaming': out = np.array(0) loader = es.MonoLoader(filename = inputFilename, sampleRate = 44100) pool = essentia.Pool() fcut = es.FrameCutter(frameSize = framesize, hopSize = hopsize, startFromZero = False); w = es.Windowing(type = "hann"); fft = es.FFT(size = framesize); ifft = es.IFFT(size = framesize); overl = es.OverlapAdd (frameSize = framesize, hopSize = hopsize); awrite = es.MonoWriter (filename = outputFilename, sampleRate = 44100); #gen = audio #VectorInput(audio) loader.audio >> fcut.signal fcut.frame >> w.frame w.frame >> fft.frame fft.fft >> ifft.fft ifft.frame >> overl.frame overl.signal >> awrite.audio overl.signal >> (pool, 'audio') essentia.run(loader) print type(pool['audio']) print pool['audio'].shape