create thunder sound ?

Oct 27, 2009 at 10:43am

create thunder sound ?

I was wondering if anyone has tried to build a patch that simulate the thunder sound. I have noticed that in Propellerhead Reason, they have a patche for Subtractor which uses oscillators, FM, LFO, filters, etc to create very real thunder sound. I am very interested to know how this thunder sound can be created in Max/MSP. Any idea ? Thanks.

#46176
Oct 27, 2009 at 12:00pm

You might want to have a look at Andy Farnell’s _Designing Sound_. A great book written with Pure Data in mind, but the examples are easily translated to Max:

< http://aspress.co.uk/ds/>

Best, Charles

#166311
Oct 27, 2009 at 4:06pm

seems to be very interesting.
Thanks.

#166312
Oct 28, 2009 at 4:29pm

I just find this link for the codes of various ambient sound in pd.

http://www.obiwannabe.co.uk/tutorials/html/tutorials_main.html

Unfortunately, it does not seem to be that easy to me to port these codes to max msp. I am not familiar with pd at all.

It seems to me that not many people are interested to synthesize ambient sounds of real life such as explosion, thunder, rain, bubble sound, etc. with Max/MSP. I can’t even find one Max/MSP patch or related discussion about it through google.

Is it useless to synthesize sounds of daily life in the field of film sound design ? Maybe most sound designers would just record the real sounds instead of simulating them by programing.

#166313
Oct 28, 2009 at 6:15pm

a lot of these sounds are really complicated, take a look at the sound of thunder on a sonogram and you’ll see what i mean. But don’t let that put you off trying, why not load an actual thunder sound next to what you’re synthesising and AB them?

#166314
Oct 28, 2009 at 10:26pm
Cheng Chien-Wen wrote on Wed, 28 October 2009 17:29
I just find this link for the codes of various ambient sound in pd.

http://www.obiwannabe.co.uk/tutorials/html/tutorials_main.html

Unfortunately, it does not seem to be that easy to me to port these codes to max msp. I am not familiar with pd at all.

There are similar objects in max. I’m not sure if max’s filters are exactly the same, but they should sound similar…

Pd -> Max:

bp~ -> reson~ (resonant bandpass)
lop~ -> onepole~ (lowpass)
hip~ -> onepole~ +~ onepole *~ -1 (?) (highpass)
env~ -> average~ (rms-mode) (scaled to 1. = 100 dB)
switch~ -> mute~ (only works connected to a subpatch)

A tricky one is ead~ which is a exponential attack/decay envelope external for Pd. I suppose, you’ll have to build that one yourself.

Ah, and be sure to make Pd’s integer arguments float in max, as all numbers in Pd are float!

good luck,
jan.

#166315
Oct 28, 2009 at 10:48pm

You can use [curve~] to imitate the [ead~] object from PureData.

lh

#166316
Oct 29, 2009 at 2:11am

wow, cool Smile
i’ve never noticed the existence of the curve~ object.

…and i always have to remind myself of just how important envelopes are for synthesis.
Cut off the first milliseconds of f.e. classical instruments and it will get real hard to identify them.

It would be great, if there was something like [function] or [env] with an additional curve-shape value per segment…hmmm
*brain starts drifting*

#166317
Oct 29, 2009 at 9:58am

That would be the ej.function [jsui] available here. Check it out, it’s awesome!

lh

#166318
Oct 29, 2009 at 10:17am
Quote:
I just find this link for the codes of various ambient sound in pd.

http://www.obiwannabe.co.uk/tutorials/html/tutorials_main.html

Unfortunately, it does not seem to be that easy to me to port these codes to max msp. I am not familiar with pd at all.

if you open the patches in pd then save them with a .pat extension they will be in the max4 format. Then you can open them in Max4 or 5. Unfortunately there is normally some errors in the process, but it might be a start.

oli

#166319
Oct 29, 2009 at 11:29am

interesting.
is there other ressources like that on web for max/msp ?

#166320
Oct 29, 2009 at 3:28pm

A while back I was translating some of the Andy Farnell’s patches and Stefan Tiedje’s St.ools abstractions came in very handy. This library contains a lot of the Pd externals used in the tutorials.

Cheers,
Andrew

#166321
Oct 31, 2009 at 3:32am

Comparing Andy Farnell’s thunder sound with that of the Subtractor synthesizer in Propellerhead Reason, the former still sounds fake but the later sounds better than real. Neither of these two codes use sound samples. It seems that Andy Farnell’s code is still not perfect. Apparently, there are some other better formulas. (But some of his formula sounds do sound real.)

Is there anyone who knows both Propellerhead Reason and Max/MSP ?

I am thinking of building another code in Max/MSP, following Subtractor’s thunder formula, but there is still something unclear in the manual of Subtractor.

#166322
Oct 31, 2009 at 4:14pm

hi

a patch i found long time ago on a french website “audiofanzine”
unfortunatelly there’s no name of the author
here’s to you to improve and share
you’ll need the soundfile attached made with alu. foil or a candy paper ?
(it’s an mp3)
have fun

– Pasted Max Patch, click to expand. –
#166323
Apr 24, 2013 at 1:28pm

Hi.
Could anyone, tell me the analogs of PD’s [delread]/[delwrite] and [catch]/[throw] in max?

#166324
Apr 24, 2013 at 3:45pm

Hi
an educated guess would be [tapout~]/[tapin~] and [receive]/[send]; but check the last two. Do PD objects not have reference or help notes which describe their function? And why did you post at the bottom of an old thread?

Brendan

#166325
Apr 24, 2013 at 4:12pm

You would use [send~] and [receive~]. You can send multiple [send~] outputs to a single [receive~] in Max but not in Pd.

Also, I would probably just use [svf~] as it provides lowpass, hipass, bandpass, and notch (all with resonance) out of the box. It’s just a little easier if you’re still figuring out filters.

I second the use of [curve~]. Maybe even consider the use of [function] which will allow you to define visually what you want your envelope to look like.

When converting Pd patches, the one thing that tripped me up is that anywhere you specify a float without a decimal, you must suffix with a decimal point otherwise Max will think you’re talking about an integer. Also whenever multiplying and you don’t specify a number, provide “0.” otherwise Max will think you want integer multiplication.

#166326
Apr 24, 2013 at 4:51pm

From what I can figure out from the Reason patch (I attached a screenshot), it is using waveform 13 (a “harmonically rich waveform suited for organ sounds”), which I am using a low-passed saw to approximate.

It is then going through a noise-based LFO (which I am using a [noise~] going through a [sah~] to be able to vary the “rate” of the noise) which is modulating the “mix” of the sound (ring modulation).

It is finally going through a lowpass filter modulated by an envelope.

I threw together a crappy patch in the 15 minutes on my train ride based on the Reason patch. It sucks but I think that someone on here could run with it.

It is possible, and not that difficult to do sound design in Max. I don’t claim to be an expert.

One last thing. [bp~] in Pd has a “Q” value which can be greater than 1 but in Max, [svf~]‘s Q value must be between 0. and 1.

[attachment=221998,5480]

#166327
Apr 24, 2013 at 6:38pm

I forgot a couple things in my last post. The noise modulating the mix in the above is not ring modulation but more general AM IIRC, because the modulation doesn’t go negative.

Also the original Reason patch sounds like it is doing some overdriving of some sort. Using [clip~] or [tanh~] and passing in a signal that goes beyond +/- 1.0 might yield good results.

Also my patch doesn’t handle the amplitude envelope so you would want to add that.

I might try and take another stab later. Good luck.

#166328

You must be logged in to reply to this topic.