hello samuel

[vcf~] is probably the way to go.

you can also cheat a little using [envgen] which is a graphic envelope generator, currently set between 0 and 1. The documentation isn't perfect, but these are the messages you need to know.

[0 50 1 50 ( <--- slightly different syntax from [line] or [line~], it goes, target (first one's instant), gap, target, gap etc.

[duration 5000( < --- changes the duration of your envelope without changing the shape.

a bang outputs the messages for [line] or [line~] or [vline~].

you can also draw your envelope manually.


This is useful if you don't want to spend much time on sorting out your envelope generator. Oh, and the 0 to 1 problem. In audio you'll have to do some arithmetic, but if you use a signal line you can use [range 0 1 X X] replacing the x's with the upper and lower limit you want for your filters. 

Hope this helps

Andrew

P.S. to convert the audio 0 - 1 to a range you want, use 

[line~]
|
[*~ (the size of your range)]
|
[+~ (the lower limit of your range)]




Date: Mon, 22 Nov 2010 23:10:47 +0100
From: pimassat@gmail.com
To: samueldavidrowe@hotmail.co.uk
CC: pd-list@iem.at
Subject: Re: [PD] Simple Subtractive Synth filter envelope

Would this do?

You should be aware that there is a difference between "message" and "audio" inlets (different color). The sound may be very diffrent depending on the type of inlet an audio object has if you want to change a parameter dynamically. This is particularly relevant for filters. Check the difference between [bp~] and [vcf~].

Pierre

2010/11/22 samuel rowe <samueldavidrowe@hotmail.co.uk>
Hi

I'm relatively new to PD, but I've been working with hardware synthesizers for years now, and I've used SynC to build synths on my computer, and I'm doing an Audio Technology degree, so I'm not clueless on the subject.
However, I'm trying to build a simple subtractive synth where I press a PutBang which triggers an envelope generator with ADSR to alter the filter cutoff, and I just can't work out how to do it. No-one at my university program in pd or max, so I have had to search the internet for help. I've read these two pages

http://obiwannabe.co.uk/html/music/6SS/six-simple-synthesisers.html
http://en.flossmanuals.net/PureData/SimpleSynth

and whilst the vline object on the flossmanuals site is fine when altering the envelope of an overtone in an additive synth, the output will not feed into the argument for a filter cutoff value. I can't even get the "attack decay" generator on the first site to work, let alone figure out how to alter it's seemingly inefficient design to allow sustain and release.

I know this is quite trivial compared to some of the things that get posted in the mailing list, I would really appreciate it if anyone could help me, or point me in the right direction. I've spent too many nights scouring the internet and trying to work it out for myself, but I've simply hit a brick wall.

Thank you in advance

Samuel

p.s. this is the text for the file i have been working on, it's a little bit messy and doesn't seem to work properly. BE CAREFUL, IT MAKES A THUMP WHEN OPENED, TURN OFF "COMPUTE AUDIO"

#N canvas 366 35 610 629 10;
#X obj 106 485 dac~;
#X obj 94 115 phasor~;
#X floatatom 104 77 5 0 0 0 - - -;
#X obj 231 154 bng 15 250 50 0 empty empty hit_to_trigger_envelope_and_make_sound
17 7 0 10 -262144 -1 -1;
#X obj 152 116 phasor~;
#X obj 109 175 +~;
#X obj 151 140 -~ 0.5;
#X obj 96 140 -~ 0.5;
#X obj 167 96 *~;
#X floatatom 182 30 5 -25 25 1 osc2_detune - -;
#X obj 182 75 +~ 1;
#X obj 181 52 /~ 10000;
#X obj 207 258 del;
#X obj 200 321 0 \$1;
#X obj 273 324 1 \$1;
#X obj 235 357 line;
#X floatatom 331 175 5 0 0 1 attack_value? - -;
#X floatatom 337 228 5 0 0 1 decay_value? - -;
#X obj 110 376 lop~ 3000;
#X obj 110 403 lop~ 3000;
#X obj 110 427 lop~ 3000;
#X obj 110 451 lop~ 3000;
#X obj 214 203 t b b;
#X obj 254 196 t f f;
#X obj 206 288 f 50;
#X obj 249 287 f 50;
#X obj 217 391 + 20;
#X connect 1 0 7 0;
#X connect 2 0 1 0;
#X connect 2 0 8 0;
#X connect 3 0 22 0;
#X connect 4 0 6 0;
#X connect 5 0 18 0;
#X connect 6 0 5 1;
#X connect 7 0 5 0;
#X connect 8 0 4 0;
#X connect 9 0 11 0;
#X connect 10 0 8 1;
#X connect 11 0 10 0;
#X connect 12 0 24 0;
#X connect 13 0 15 0;
#X connect 14 0 15 0;
#X connect 15 0 26 0;
#X connect 16 0 23 0;
#X connect 17 0 24 1;
#X connect 18 0 19 0;
#X connect 19 0 20 0;
#X connect 20 0 21 0;
#X connect 21 0 0 0;
#X connect 21 0 0 1;
#X connect 22 0 12 0;
#X connect 22 1 25 0;
#X connect 23 0 12 1;
#X connect 23 1 25 1;
#X connect 24 0 13 0;
#X connect 25 0 14 0;
#X connect 26 0 18 1;
#X connect 26 0 19 1;
#X connect 26 0 20 1;
#X connect 26 0 21 1;


_______________________________________________
Pd-list@iem.at mailing list
UNSUBSCRIBE and account-management -> http://lists.puredata.info/listinfo/pd-list



_______________________________________________ Pd-list@iem.at mailing list UNSUBSCRIBE and account-management -> http://lists.puredata.info/listinfo/pd-list