Convolve(input, table, size, mul=1, add=0)
Implements filtering using circular convolution.
Parent class : PyoObject
Parameters:
input : PyoObject Input signal to filter. table : PyoTableObject Table containning the impulse response. size : int Length, in samples, of the convolution. Available at initialization time only. If the table changes during the performance, its size must egal or greater than this value. If greater only the first `size` samples will be used.
Methods:
setInput(x, fadetime) : Replace the `input` attribute. setTable(x) : Replace the `table` attribute.
Attributes:
input : PyoObject. Input signal to filter. table : PyoTableObject. Table containning the impulse response.
Notes :
Convolution is very expensive to compute, so the impulse response must be kept very short to run in real time. Usually convolution generates a high amplitude level, take care of the `mul` parameter!
Examples:
>>> s = Server().boot() >>> s.start() >>> snd = SNDS_PATH + '/transparent.aif' >>> sf = SfPlayer(snd, loop=True, mul=.5).out() >>> a = Convolve(sf, SndTable(SNDS_PATH+'/accord.aif'), size=512, mul=.3).out()
Methods details:
Convolve.setInput(x, fadetime=0.05): Replace the `input` attribute. Parameters: x : PyoObject New signal to process. fadetime : float, optional Crossfade time between old and new input. Default to 0.05. Convolve.setTable(x): Replace the `table` attribute. Parameters: x : PyoTableObject new `table` attribute.