[PD] isosonic curves : level the perceptual loudness of different pitches

Alexandre Quessy listes at sourcelibre.com
Thu Feb 8 06:43:19 CET 2007


Hello all,
Very nice, mr. Zmoelnig. Of course, this is exactly what I need.

It appears that the object [list length] cannot be created. Is this a
pd 0.40 new feature of the [list] object ? (using pd 0.39-2 extended
on Linux)

To use this very nice abstraction, I simply need to multiply the
amplitude of the pitch I want to level by the corresponding amplitude
in db, which will need to passed in [db2rms] ?

[tabread]
   |
[db2rms]
   |
[*~]
 ...

Awesome !

Alexandre Quessy
http://alexandre.quessy.net


2007/1/25, IOhannes m zmoelnig <zmoelnig at iem.at>:
> Alexandre Quessy wrote:
> > Hi all,
> >
> > I would like to create an abstraction to adjust the amplitude of
> > synthetic sounds according to the ear sensitivity. At a given
> > amplitude, we hear the notes in the middle range louder than the high
> > and low notes. This perceptual property of the audition can be
> > somewhat undesired in a musical work. (in my opinion at least)
> >
> > The equal lines of actual amplitude of notes that seem to have the
> > same loudness are called "isosonic curves". Here are 2 different
> > graphics of these curves :
> >
> > http://www.multimedia.uqam.ca/cours/audio/images/diag/sonpsy_isoson.gif
> > http://www.comm.uqam.ca/GRAM/illu/mus/nature/CourbeDIsosonie.GIF
> >
> > A few links that might give you a few hint for the calculations :
> >
> > http://en.wikipedia.org/wiki/DB%28A%29
> > http://en.wikipedia.org/wiki/Weighting_filter
> > http://en.wikipedia.org/wiki/Stevens%27_power_law
> >
> > Anyone would have a formula or a table containing data that could help
> > me to calculate this ? For instance, we would be able to generate sine
> > waves of any frequencies that would be perceived as having the same
> > intensity for all of them, by changing their amplitude according to
> > this leveling formula . This way, we could hear our low freq notes as
> > much as the middle ones. Very valuable. :)
>
> btw, there is an object in iemmatrix called [mtx_phon_curve] which
> should give you what you want.
>
> since it is an abstraction, you can even see how the curves are created.
>
>
> mfga.sdr
> IOhannes
>
>
> >
> > Thanks !
>
>


x




More information about the Pd-list mailing list