simon-r / dr14_t.meter

Compute the DR14 of a given audio file according to the procedure described by the Pleasurize Music Foundation
http://dr14tmeter.sourceforge.net
GNU General Public License v3.0
125 stars 33 forks source link

mismatch between RMS estimates by DR14 and TT DR Meter #35

Closed landroni closed 7 years ago

landroni commented 7 years ago

I'm using dr14_meter on Ubuntu and TT DR Offline Meter 1.4 using Wine.

I'm getting slight mismatches between RMS estimates.

DR14 (using -s -b):

----------------------------------------------------------------------------------------------  
 Analyzed folder:  Worrisome_Heart
----------------------------------------------------------------------------------------------  
 DR Peak    RMS Duration    File name   
----------------------------------------------------------------------------------------------  
 DR10    -0.10 dB    -12.61 dB   4:21    01 - Melody Gardot - Worrisome Heart.wav   
 DR8     -0.10 dB    -9.88 dB    2:37    02 - Melody Gardot - All That I Need Is Love.wav   
 DR10    -0.10 dB    -12.79 dB   2:52    03 - Melody Gardot - Gone.wav  
 DR9     -0.10 dB    -12.13 dB   3:22    04 - Melody Gardot - Sweet Memory.wav  
 DR9     -0.10 dB    -13.32 dB   5:24    05 - Melody Gardot - Some Lessons.wav  
 DR9     -0.10 dB    -11.66 dB   4:13    06 - Melody Gardot - Quiet Fire.wav    
 DR10    -0.24 dB    -14.73 dB   2:02    07 - Melody Gardot - One Day.wav   
 DR10    -0.10 dB    -14.12 dB   4:05    08 - Melody Gardot - Love Me Like A River Does.wav 
 DR9     -0.10 dB    -11.82 dB   3:04    09 - Melody Gardot - Goodnite.wav  
 DR8     -1.67 dB    -14.61 dB   1:01    10 - Melody Gardot - Twilight.wav  
----------------------------------------------------------------------------------------------  
Number of files:    10
Official DR value:  DR9

Dr14 T.meter 1.0.16 
==============================================================================================  

TT DR Meter (manually sorted to put tracks in the right order):

----------------------------------------------------------------------------------------------
 Analyzed folder: Z:\media\geek\Misc\Music\tmp\Worrisome_Heart\
----------------------------------------------------------------------------------------------
 DR        Peak            RMS           Filename
----------------------------------------------------------------------------------------------

 DR10     -0.10 dB   -12.15 dB   01 - Melody Gardot - Worrisome Heart.wav
 DR8      -0.10 dB    -9.63 dB   02 - Melody Gardot - All That I Need Is Love.wav
 DR10     -0.10 dB   -12.38 dB   03 - Melody Gardot - Gone.wav
 DR9      -0.10 dB   -11.65 dB   04 - Melody Gardot - Sweet Memory.wav
 DR9      -0.10 dB   -12.68 dB   05 - Melody Gardot - Some Lessons.wav
 DR9      -0.10 dB   -11.20 dB   06 - Melody Gardot - Quiet Fire.wav
 DR10     -0.24 dB   -14.06 dB   07 - Melody Gardot - One Day.wav
 DR10     -0.10 dB   -13.34 dB   08 - Melody Gardot - Love Me Like A River Does.wav
 DR9      -0.10 dB   -11.43 dB   09 - Melody Gardot - Goodnite.wav
 DR8      -1.67 dB   -13.72 dB   10 - Melody Gardot - Twilight.wav
----------------------------------------------------------------------------------------------

 Number of files:    10
 Official DR value:  DR9 

==============================================================================================

Is this a (known) issue?

simon-r commented 7 years ago

Yes. I'm using a "fast" approximation for computing the RMS.

landroni commented 7 years ago

Is there a toggle to do the "slow", more exact estimation? If not, would it be difficult to add one?

simon-r commented 7 years ago

No It's pretty easy.

simon-r commented 7 years ago

I've corrected the RMS computation

landroni commented 7 years ago

Great! Thanks.

landroni commented 7 years ago

I've tested latest GIT and strangely I'm now getting even bigger (much bigger) offsets:

----------------------------------------------------------------------------------------------  
 Analyzed folder:  Worrisome_Heart
----------------------------------------------------------------------------------------------  
DR  Peak    RMS Duration    Title [codec]   
----------------------------------------------------------------------------------------------  
 DR10    -0.10 dB    -15.59 dB  4:21    01 - Melody Gardot - Worrisome Heart.wav    
 DR8     -0.10 dB    -12.82 dB  2:37    02 - Melody Gardot - All That I Need Is Love.wav    
 DR10    -0.10 dB    -15.92 dB  2:52    03 - Melody Gardot - Gone.wav   
 DR9     -0.10 dB    -15.30 dB  3:22    04 - Melody Gardot - Sweet Memory.wav   
 DR9     -0.10 dB    -16.14 dB  5:24    05 - Melody Gardot - Some Lessons.wav   
 DR9     -0.10 dB    -14.60 dB  4:13    06 - Melody Gardot - Quiet Fire.wav 
 DR10    -0.24 dB    -17.40 dB  2:02    07 - Melody Gardot - One Day.wav    
 DR10    -0.10 dB    -16.83 dB  4:05    08 - Melody Gardot - Love Me Like A River Does.wav  
 DR9     -0.10 dB    -14.87 dB  3:04    09 - Melody Gardot - Goodnite.wav   
 DR8     -1.67 dB    -17.67 dB  1:01    10 - Melody Gardot - Twilight.wav   
----------------------------------------------------------------------------------------------  
 Number of files:    10
 Official DR value:  DR9

 Sampling rate:          44100 Hz
 Bits per sample:        16 bit

Dr14 T.meter 1.96.0 
==============================================================================================  

Is it possible the fix has introduced some unintended mistake in the estimation?

simon-r commented 7 years ago

I've not understood how the official meter compute the RMS!

Now I'm using this definition represented in dB: http://mathworld.wolfram.com/Root-Mean-Square.html

That's all.

If you have some idea is welcome.

simon-r commented 7 years ago

Solved. I've discovered the idea behind the RMS used by official meter. Now there are only some decimals of difference.

landroni commented 7 years ago

Looks great, thanks! With latest GIT the small differences seem to be more of a rounding error than anything else. I was going to get my hands dirty digging in the Python code, but glad you figured it out now.