How to objectively compare the sound quality of two files?

8

3

I have used the avconv utility to convert an MP4 file downloaded from Youtube to an MP3:

$ avconv -i RembrandtPussyhorse.mp4 RembrandtPussyhorse.mp3
avconv version 0.8.9-6:0.8.9-0ubuntu0.12.10.1, Copyright (c) 2000-2013 the Libav developers
built on Nov  9 2013 19:12:35 with gcc 4.7.2
Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'RembrandtPussyhorse.mp4':
Metadata:
    major_brand     : mp42
    minor_version   : 0
    compatible_brands: isommp42
    creation_time   : 2013-06-23 14:26:41
Duration: 01:03:42.60, start: 0.000000, bitrate: 167 kb/s
    Stream #0.0(und): Video: h264 (Constrained Baseline), yuv420p, 384x288, 69 kb/s, 25 fps, 25 tbr, 50 tbn, 50 tbc
    Stream #0.1(und): Audio: aac, 44100 Hz, stereo, s16, 96 kb/s
    Metadata:
    creation_time   : 2013-06-23 14:27:30
Output #0, mp3, to 'RembrandtPussyhorse.mp3':
Metadata:
    major_brand     : mp42
    minor_version   : 0
    compatible_brands: isommp42
    TDEN            : 2013-06-23 14:26:41
    TSSE            : Lavf53.21.1
    Stream #0.0(und): Audio: libmp3lame, 44100 Hz, stereo, s16, 200 kb/s
    Metadata:
    creation_time   : 2013-06-23 14:27:30
Stream mapping:
Stream #0:1 -> #0:0 (aac -> libmp3lame)
Press ctrl-c to stop encoding
size=   89594kB time=3822.65 bitrate= 192.0kbits/s    
video:0kB audio:89593kB global headers:0kB muxing overhead 0.000284%

$ ls -la
-rw-rw-r-- 1 dotancohen dotancohen  91743973 Dec 26 11:24 RembrandtPussyhorse.mp3
-rw-rw-r-- 1 dotancohen dotancohen  80171515 Jun 24  2013 RembrandtPussyhorse.mp4

Notice that the MP3 file (audio only) is now larger than the input MP4 file (audio and video). Double-blind listening tests with the two files leads to consistent results within people (i.e. the same person says that the same file sounds better) but inconsistent across people (i.e. different people disagree as to which is better).

Is there any objective way to determine if the sound quality degraded in the conversion? I don't have the original CD to compare to. I do realize that sound quality could not have increased, but if there is a tool that could, say, analyze the waveform or such and give a value of 'quality' then I would be interested. This needs to run on Kubuntu Linux. Thanks.

dotancohen

Posted 2013-12-26T09:56:32.247

Reputation: 9 798

"Sound quality" can be subjective (how does it sound to you or me, which you've done) or objective (how closely does a copy of the sound correspond to the reference sound). If you're looking for a measure of deviance from the original, there may be tools that will help. Maybe. If you want to know which one sounds best? Pick for yourself. Sound itself is subjective, and I'd simply listen to the two one a range of audio equipment, and then make a choice which one you'd keep based on your observations. – music2myear – 2013-12-26T19:45:33.467

Answers

9

If you truly want an objective measure, load both files into a tool that can do basic effects processing and mixing (Audacity for instance), and then invert one and mix them together. What ever is left is the difference between the two files - if they were identical, only pure silence should remain.

Derek Charles

Posted 2013-12-26T09:56:32.247

Reputation: 91

This, sir, is an wonderfully elegant idea (assuming they start/end at the same time). – AmagicalFishy – 2016-06-15T11:25:20.030

8

The most scientific way to identify changes or degradation between the two files is viewing the waveform on an oscilloscope.

You can use a audio editing program like Audacity to see if there is any clipping in either file. You may also want to apply a limiter or replay gain to the file.

Foobar has an ABX Comparator tool that will do a blind comparison of two audio files or clips. The listener votes a specified number of times as the tracks are played and the results are shown at the end so that the listener is not influenced by right or wrong answers throughout the test.

P Fitz

Posted 2013-12-26T09:56:32.247

Reputation: 2 260

2This is probably your best bet. Most people have untrained ears, so they can't hear the differences between compressed music and FLAC-style recordings. – Lee Harrison – 2013-12-26T20:46:27.937

2@LeeHarrison Especially when listening through commodity equipment. – Substantial – 2013-12-27T02:35:23.027

3

What you could do is to import both files in a audio editor such as Adacity. Invert one of the imported songs and you can now listen to the "difference" between them. Note that you have to be spot on e.g. the waveform need to be perfectly aligned for this to work.

From here on you can see what is "missing" (or added!!) to the source waveform and a spectrum analyzer or spectrogram will show you the details.

Waxhead

Posted 2013-12-26T09:56:32.247

Reputation: 1 092

0

You can use Audacity to open file and review the waveform, it would be a manual process.

Vladimir Oselsky

Posted 2013-12-26T09:56:32.247

Reputation: 695