[PD] Re: [PD-dev] i need some help with this

marius schebella marius.schebella at chello.at
Thu Sep 5 09:20:27 CEST 2002

this is a very good book i am using
you should read about convolution http://www.spectrumsdi.com/ch6.pdf but
also chapter18. http://www.spectrumsdi.com/ch18.pdf
everything is in there, written very easily and in better english than mine.
so i will answer only pd related stuff:

----- Original Message -----
From: "J. Scott Hildebrand" <jshildebrand at ucdavis.edu>
To: "marius schebella" <marius.schebella at chello.at>
Cc: <pd-list at iem.kug.ac.at>
Sent: Thursday, September 05, 2002 12:38 AM
Subject: Re: [PD-dev] i need some help with this

>          hey marius,
>             thanks a bunch for the patch. i've spent some time going
> over it and i think that it'll definitely be possible to modify this a
> little and make it work. i understand the organization of it but i do have
> some questions. i don't have any EE background!

what is the abbreviation EE?

>             you have [; filterarray const 0] in a message box; does that
> initialize the elements to 0?

not initialize, but simply set to 0

> and don't i need to create a filterarray
> array? right now there's 5 arrays, all labeled array1 - array5, but they
> are all each 100 in size.

no, they are labeled like their name says, ... array1, filterarray, filter,
input, output some of them are 128, some of them 256 right klick and see
properties dialog.

> wouldn't i just need two of those that are of
> size 256? and then two more size 256 arrays for the filters?

that was for demonstration, of course, just have in mind, that if you use
[tabsend~] from inside a [block~ 128] patch, only 128 samples will be sent,
(so if sent to a 256-size array the second half stays always 0).

>             when the actual convolution is happening, i don't quite
> understand why i need to use the complex portion of the output. don't i
> just use the left output of the rfft~ for and then multiply the real
> portions?
>     why do i have subtraction on one side and addition on the
> other?
>             i'm not too sure about why i need to do the normalization
> either.

the fft in pd outputs values ranging from 0 to windowsize, (instead of 0 to
1) so you need to divide by windowsize. because of the convolution with two
128-vectors, i used the normalisation of 128*128 (16384)

>             and one more thing, when it finally outputs back to the
> overlapnadd window there's an input comparing thing. that's just to graph
> the waveforms right?


> ok that's it for now. i do appreciate the help
> immensely, and if anybody is startled by my childishly simplistic
> questions, well my excuse is that i was dropped a few times when i was an
> infant :)
>                                   k thanks,
>                                                 scott

i hope that's it at last...

More information about the Pd-list mailing list