[LAD] Calculate R M S

Alfs Kurmis kallipygos at inbox.lv
Wed Feb 16 17:51:09 UTC 2011


 Hi Experts.
 I wanna normalize my sound stream by loudness (energy / pressure /
 intensity) , not by peaks.
 How i do it ?
 Is available Jack plugin for so what ?
 What is (we hear as) "loudness" ?
 RMS or +(average) or something else ?
 Is somewhere available examples how to calculate RMS ?
 Is it done simlpe by :
  int i, n;  double sums, rms;
  sums=0.0;  n=10;  rms=0;
  for(i=0; i<n;i++)
  {   sums = sums + ( (double)i * (double)i );  }
  rms = sqrt(sums / n);
  printf("         
 rms = %12.12fnn", rms );
 Is so sipmple algo good enough for frequencies > 10 kHz ?
 How to calculate RMS with hi-precision for frequencies > 10 kHz ?
 With inerpolation or so ?
 What is reference ( 0dB ) RMS for example for 16bit PCM signal 1024
 samples ?
   sqrt( 1024*(0x7FFF ^ 2) / 1024 )  ==  sqrt( (0x7FFF
 ^ 2)  ) == 0x7FFF 
 Is it simple  0x7FFF (32000 dec) ?
 How to calc RMS for stereo signal ?
 So , or somehow else ?
 for(i=0; i<n;i++)
  {  ....
    sums = sampleL/2 + sampleR/2;
  }
 In case operating with float point, what should be a bit
 faster,  / 2  or * 0.5 ?
 How to gotta RMS value in dB ?
    20 x log10(Measured/Reference0_dB) 
 or 10 x log10(Measured/Reference0_dB)  ??
 Im just physics student and im new in DSP,
 so pleaz no angree about simple or stuppid questions.
 Any examples and hints welcomed.
 Many Tnx in advance.
 Alf
  ----
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.linuxaudio.org/pipermail/linux-audio-dev/attachments/20110216/c477e3c3/attachment.html>


More information about the Linux-audio-dev mailing list