Forums > MaxMSP

Pfft + cascade?

February 3, 2007 | 5:07 pm

Hi, I need help to figure out exactly what’s happening in the following pfft subpatch.
An audio-rate filter (cascade) is used to filter the amplitude values coming out of a Cartopol module (which should output fft bins)
The two modules should be not compatible to each other. I mean, cascade shouldn’t accept values from a poltocar module.
Surprisingly for me, cascade does accept the signal from Poltocar and I need to figure out what exactly is happening.
Can someone help me?

Here’s the pfft patch:

max v2;
#N vpatcher 5 40 1158 906;
#P window setfont "Sans Serif" 9.;
#P message 587 38 14 9109513 1;
#P newex 107 376 48 9109513 cascade~;
#P newex 75 308 48 9109513 cascade~;
#P number 647 233 149 9 0 6 3 139 0 0 0 221 221 221 222 222 222 0 0 0;
#P message 647 254 164 9109513 nfilters $1;
#P user filtergraph~ 647 280 370 224 139 9 20. 20000. 0.0625 16. 0 1 1 0 0 1 1;
#X frgb 170 170 170;
#X brgb 209 209 209;
#X rgb2 0 0 0;
#X rgb3 130 130 130;
#X rgb4 0 0 0;
#X rgb5 76 108 172;
#X rgb6 210 74 54;
#X rgb7 255 22 22;
#X linmarkers 5512.5 11025. 16537.5;
#X logmarkers 10. 100. 1000. 10000.;
#X nfilters 1;
#X setfilter 0 5 1 0 0 613.25824 0.061786 1.250754 0. 0. 0. 0. 0. 0.;
#X done;
#P number 241 231 149 9 0 6 3 139 0 0 0 221 221 221 222 222 222 0 0 0;
#P message 241 252 164 9109513 nfilters $1;
#P user filtergraph~ 241 278 370 224 139 9 20. 20000. 0.0625 16. 0 1 1 0 0 1 1;
#X frgb 170 170 170;
#X brgb 209 209 209;
#X rgb2 0 0 0;
#X rgb3 130 130 130;
#X rgb4 0 0 0;
#X rgb5 76 108 172;
#X rgb6 210 74 54;
#X rgb7 255 22 22;
#X linmarkers 5512.5 11025. 16537.5;
#X logmarkers 10. 100. 1000. 10000.;
#X nfilters 1;
#X setfilter 0 5 1 0 0 8108.912109 5.957832 1.223438 0. 0. 0. 0. 0. 0.;
#X done;
#P newex 527 31 45 9109513 loadbang;
#N in 3;
#P newobj 639 33 23 9109513 in 3;
#N vpreset 6;
#X append 1 2 11 278 241 filtergraph~ nfilters 1 ; 11 278 241 filtergraph~ setoptions 0 5 1 0 0 ; 11 278 241 filtergraph~ params 0 8108.912109 5.957832 1.223438 ; 11 278 241 filtergraph~ updateflag 1 ; 13 231 241 number int;
#X append 1 2 0 ; 14 280 647 filtergraph~ nfilters 1 ; 14 280 647 filtergraph~ setoptions 0 5 1 0 0 ; 14 280 647 filtergraph~ params 0 613.25824 0.061786 1.250754 ; 14 280 647 filtergraph~ updateflag 1 ; 16 233 647;
#X append 1 2 number int 0 ;;
#X append 6 2 11 278 241 filtergraph~ nfilters 1 ; 11 278 241 filtergraph~ setoptions 0 5 1 0 0 ; 11 278 241 filtergraph~ params 0 8108.912109 5.957832 1.223438 ; 11 278 241 filtergraph~ updateflag 1 ; 13 231 241 number int;
#X append 6 2 0 ; 14 280 647 filtergraph~ nfilters 1 ; 14 280 647 filtergraph~ setoptions 0 5 1 0 0 ; 14 280 647 filtergraph~ params 0 613.25824 0.061786 1.250754 ; 14 280 647 filtergraph~ updateflag 1 ; 16 233 647;
#X append 6 2 number int 0 ;;
#P preset 639 59 47 27;
#P newex 145 195 46 9109513 cartopol~;
#P newex 76 195 46 9109513 cartopol~;
#P newex 146 413 27 9109513 +~;
#P newex 75 416 27 9109513 *~;
#P newex 144 120 40 9109513 fftin~ 2;
#P newex 76 544 45 9109513 fftout~ 1;
#P newex 75 119 40 9109513 fftin~ 1;
#P newex 76 514 46 9109513 poltocar~;
#P connect 6 0 17 0;
#P connect 17 0 4 0;
#P connect 1 0 6 0;
#P connect 4 0 0 0;
#P connect 0 0 2 0;
#P connect 18 0 4 1;
#P connect 7 0 18 0;
#P connect 0 1 2 1;
#P connect 1 1 6 1;
#P connect 5 0 0 1;
#P fasten 11 0 17 1 246 517 203 517 203 300 118 300;
#P connect 3 0 7 0;
#P fasten 14 0 18 1 652 528 181 528 181 336 150 336;
#P connect 6 1 5 0;
#P connect 7 1 5 1;
#P connect 3 1 7 1;
#P connect 13 0 12 0;
#P connect 12 0 11 0;
#P fasten 10 0 19 0 532 57 581 57 581 35 592 35;
#P connect 9 0 8 0;
#P fasten 19 0 8 0 592 56 620 56 620 56 644 56;
#P connect 16 0 15 0;
#P connect 15 0 14 0;
#P pop;

Thanks in advance for your help.

Carlo


February 3, 2007 | 5:22 pm

On 3-Feb-2007, at 18:07, Carlo Laurenzi wrote:

> The two modules should be not compatible to each other. I mean,
> cascade shouldn’t accept values from a poltocar module.

Why not? cartopol~ sends out signals. cascade~ accepts signals as
input. cascade~ will perform whatever math it does with the input
values.

In MSP a signal is nothing more than a stream of floating point values.

————– http://www.bek.no/~pcastine/Litter/ ————-
Peter Castine +–> Litter Power & Litter Bundle for Jitter
Universal Binaries on the way
iCE: Sequencing, Recording &
Interface Building for |home | chez nous|
Max/MSP Extremely cool |bei uns | i nostri|
http://www.dspaudio.com/ http://www.castine.de


February 3, 2007 | 5:43 pm

a signal is a signal is a signal.


February 3, 2007 | 5:47 pm


February 3, 2007 | 10:08 pm


February 3, 2007 | 10:28 pm

> No, it makes no physical sense at all.

haha i was waiting for somebody to say that.

> But that’s never stopped anyone from making a patch.
>
> It might actually sound quite interesting, although probably not the
> way Carlo was hoping.

maybe it is not even so uncommon to use "filters"/filters
on fft bins. it might be a bit different than with a music
signal but you can do stuff in there for sure.
it would include [counter~] and some magic but certain
"regular" filter types can giuve you certain results when
used on fft bins.

-110


February 4, 2007 | 4:02 pm


February 5, 2007 | 12:08 am


February 5, 2007 | 8:14 pm

Carlo Laurenzi wrote:
> Since I obtained some good sounds to use in a piece I would like to
> know how to understand its behaviour.

I guess it will somehow smear the signal, if you push high frequencies,
it would enhance the difference between neighbouring bins, low
frequencies would only affect what doesn’t change too much over time,
but only if its lower than the frame frequency… And I guess the bins
will be a bit shuffled as well (but not arbitrarily…)

> Can you suggest me how to understand and re-create this patch in a
> correct way? Thank you very much.

Whatever you’ll find out is the correct way, you should turn this
project into a PhD and become famous…

Stefan


Stefan Tiedje————x——-
–_____———–|————–
–(_|_ —-|—–|—–()——-
– _|_)—-|—–()————–
———-()——–www.ccmix.com


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