Forums > MaxMSP

longer lists for FFT's

April 17, 2006 | 9:29 am

hi

working from/on the "forbidden planet 2003" patch (which is in the
exemples/fft-fun) i tried to hear what a finer subdivision would
sound like

changing the pfft~ argument from 1024 to 2048 (or higher) and the
internal buffer~ and Uzi from 512 to 1024 (or higher) is easy and
yes, in the low register there is a finer definition

however changing the multislider from 253 bands (why 253 and not 256
? I soon understood why..) to 512 does not work – or has no effect,
since the "prepend set 0" (in the inside fft patch) only understands
lists of no more than 255

I tried zl join, the limit is still of 255 ; yes, I know _most_ max
objects do not work with lists bigger than 255

however, in this case, is there some way to work with more
precision?? I _hope_ table can accept more points (it seems so, with
"get info")

_so, is there a way to pass this list of 512, or 1024 multislider’s
values, with "set 0" before??

many thanks

kasper

Kasper T. Toeplitz
noise, composition, bass, computer

http://www.sleazeArt.com


April 17, 2006 | 11:57 am

hi,
if you want to control individual fft bins, why not use [waveform] in
draw mode to directly manipulate the "eqFun"-buffer data?
easily scalable and offsetable with vzoom and voffset, no more
troubles with packing/unpacking of large lists etc.
also make sure to set "clipdraw 1" to limit the data to the desired
range.
volker.


April 17, 2006 | 12:17 pm

underscore’s [_] maximum number of elements is 1024

or use javascript…

/*j


April 17, 2006 | 12:40 pm

>use [waveform] in draw mode to directly manipulate the "eqFun"-buffer data

hummm _ never thought about it

will give it a try

thanks

kasper


April 17, 2006 | 12:43 pm

>underscore’s [_] maximum number of elements is 1024

great!!

>
>or use javascript…
>
I was trying to avoid it – for the moment

thanks

kasper


April 17, 2006 | 3:14 pm

You can also replace all this old thing by listfunnel as it’s limited
to 1024 items (Thanks xoaz :-).

Best,
ej

#P window setfont "Sans Serif" 9.;
#P window linecount 1;
#P newex 302 130 51 196617 pack 0 0.;
#P newex 343 102 40 196617 / 127.;
#P newex 302 78 51 196617 unpack;
#P newex 302 52 52 196617 listfunnel;
#P newex 171 235 74 196617 fftout~ 2 nofft;
#P toggle 182 48 15 0;
#P number 210 48 35 9 0 0 0 3 0 0 0 221 221 221 222 222 222 0 0 0;
#P newex 182 27 53 196617 dspstate~;
#P newex 47 165 27 196617 *~;
#P newex 8 165 27 196617 *~;
#P newex 86 110 72 196617 index~ EqFun~;
#P newex 302 235 68 196617 peek~ EqFun~;
#P newex 373 235 95 196617 buffer~ EqFun~ 512;
#P message 373 213 31 196617 clear;
#P newex 302 28 55 196617 r spectFun;
#B color 6;
#P newex 8 222 49 196617 fftout~ 1;
#P newex 8 50 89 196617 fftin~ 1;
#P window linecount 2;
#P comment 78 169 107 196617 < - this is how you do convolution
filtering;
#P window linecount 4;
#P comment 173 75 123 196617 for a 1024 point fft , the fft frames
in fftpatcher will be made up of 512 freq bands;
#P window linecount 1;
#P comment 95 68 62 196617 frame index;
#P connect 3 0 10 0;
#P connect 10 0 4 0;
#P connect 9 0 10 1;
#P connect 3 1 11 0;
#P connect 11 0 4 1;
#P connect 9 0 11 1;
#P connect 3 2 9 0;
#P connect 9 0 15 0;
#P connect 12 0 14 0;
#P connect 12 2 13 0;
#P connect 5 0 16 0;
#P connect 16 0 17 0;
#P connect 17 0 19 0;
#P connect 19 0 8 0;
#P connect 17 1 18 0;
#P connect 18 0 19 1;
#P connect 6 0 7 0;
#P window clipboard copycount 20;


April 18, 2006 | 2:39 pm

Kasper T Toeplitz wrote:
>> or use javascript…
>>
> I was trying to avoid it – for the moment
>

or use the mxj list.* java externals, no need to get into java its done
already for you.
[mxj list.join] should do it (it doesn’t have a help file, but it works
exactly like [zl join] without the 256 elements limit.

Stefan

[][] [][][] [][] [][][]
[][][][][][][][][][][][][][][]

Stefan Tiedje
Klanggestalter
Electronic Composition
&
Improvisation

/~~~~~
\ /|() ()|
))))) )| | |( \
/// _/)/ )))))
___/ ///

————————-x—-
–_____———–|———–
–(_|_ —-|—–|—–()—-
– _|_)—-|—–()———–
———-()————x—–

14, Av. Pr. Franklin Roosevelt,
94320 Thiais, France
Phone at CCMIX +33-1-57 42 91 09


April 18, 2006 | 3:46 pm

"use java" seems to be the new rtfm of 2006, isn t it?

maybe we can just use 2 multislider objects
and send 2 lists if we have more than 255 fft
frames, like we did it back in the days.

:)


April 18, 2006 | 4:18 pm

>"use java" seems to be the new rtfm of 2006, isn t it?

yeah… except than reading is faster than learning java…..

>maybe we can just use 2 multislider objects
>and send 2 lists if we have more than 255 fft
>frames, like we did it back in the days.
>

and ffor appending those 2 lists??? well, yeah, use java !!

best

kasper


April 19, 2006 | 6:19 am

Kasper T Toeplitz wrote:
>> "use java" seems to be the new rtfm of 2006, isn t it?
>
> yeah… except than reading is faster than learning java…

but you don’t need to learn it, its like any external, just type in the
name…

It took myself quite a while to realize that there is a lot coming with
Max already. (I never read manuals, you guessed it… ;-)

Stefan

[][] [][][] [][] [][][]
[][][][][][][][][][][][][][][]

Stefan Tiedje
Klanggestalter
Electronic Composition
&
Improvisation

/~~~~~
\ /|() ()|
))))) )| | |( \
/// _/)/ )))))
___/ ///

————————-x—-
–_____———–|———–
–(_|_ —-|—–|—–()—-
– _|_)—-|—–()———–
———-()————x—–

14, Av. Pr. Franklin Roosevelt,
94320 Thiais, France
Phone at CCMIX +33-1-57 42 91 09


Viewing 10 posts - 1 through 10 (of 10 total)