Typical signal to noise ratio of ADPCM |
Typical signal to noise ratio of ADPCM |
Jan 28 2013, 15:08
Post
#1
|
|
|
Group: Members Posts: 84 Joined: 14-December 12 Member No.: 105171 |
So, I have decided to return to this forum (despite my little conflict with greynol) and I have kind of a weird question. I would like to know what is the rough SNR of a 4-bit ADPCM recording (IMA and Microsoft). For those curious why I am asking this, well, I like ripping music and sound effects from old games, and I would like know the technical side as well.
|
|
|
|
![]() |
Jan 30 2013, 16:00
Post
#2
|
|
|
Group: Members Posts: 84 Joined: 14-December 12 Member No.: 105171 |
I did an Audacity convert to mono + match both volumes using Amplify + invert one of the track and Mix and render way of subtracting one track from the other. I got a "noise signal", peaking only 11.3 dB below the top. The weird thing is, the quieter parts of the song (not silence, only 9-10 dB below maximum) had "noise" as quiet as -45 dB while the louder parts went up to 11.3 dB. This is not all that is strange, because the "noise" left by the subtraction is actually a recognisable signal of the music, although very noisy (I will post a sample in the uploads section). By contrast, the dithered 8-bit signal is very audibly noisy, but it leaves a normal noise signal at -35.3 dB (which is a bit weird as well as 8-bit sound should have a 48 dB SNR and dithered 42 dB as I used only 1-bits of triangular dither, plus, the original signal is slightly present in the noise as well). The undithered 8-bit signal produces normal random noise at -48.2 dB as expected. Both dithered and undithered 8-bit signal have obvious, strong noise in them, unlike the ADPCM files.
So, how to make sense of this? And why every difference signal except for the non-dithered 8-bit one has recognisable music it it? |
|
|
|
Jan 30 2013, 18:20
Post
#3
|
|
|
Group: Members Posts: 4129 Joined: 2-September 02 Member No.: 3264 |
I did an Audacity convert to mono + match both volumes using Amplify + invert one of the track and Mix and render way of subtracting one track from the other. I got a "noise signal", peaking only 11.3 dB below the top. The weird thing is, the quieter parts of the song (not silence, only 9-10 dB below maximum) had "noise" as quiet as -45 dB while the louder parts went up to 11.3 dB. This is not all that is strange, because the "noise" left by the subtraction is actually a recognisable signal of the music, although very noisy (I will post a sample in the uploads section). By contrast, the dithered 8-bit signal is very audibly noisy, but it leaves a normal noise signal at -35.3 dB (which is a bit weird as well as 8-bit sound should have a 48 dB SNR and dithered 42 dB as I used only 1-bits of triangular dither, plus, the original signal is slightly present in the noise as well). The undithered 8-bit signal produces normal random noise at -48.2 dB as expected. Both dithered and undithered 8-bit signal have obvious, strong noise in them, unlike the ADPCM files. So, how to make sense of this? And why every difference signal except for the non-dithered 8-bit one has recognisable music it it? Have you looked at the wikipedia page on ADPCM? What you're describing is basically the difference between PCM and ADPCM: QUOTE The default signal compression encoding on a DS0 is either μ-law (mu-law) PCM (North America and Japan) or A-law PCM (Europe and most of the rest of the world). These are logarithmic compression systems where a 13 or 14 bit linear PCM sample number is mapped into an 8 bit value. So it's compression involves taking a 14 bit signal (or some other value depending on the flavor of ADPCM) and spacing the levels on a log scale. So if the signal is very quiet, the levels are close together, and the error is smaller. If the signal is larger, the error is larger. If the error was constant, you'd have regular PCM. |
|
|
|
Jan 30 2013, 21:24
Post
#4
|
|
|
Group: Members Posts: 84 Joined: 14-December 12 Member No.: 105171 |
So it's compression involves taking a 14 bit signal (or some other value depending on the flavor of ADPCM) and spacing the levels on a log scale. So if the signal is very quiet, the levels are close together, and the error is smaller. If the signal is larger, the error is larger. If the error was constant, you'd have regular PCM. So if I want a good ADPCM sample I should lower the volume of the uncompressed file first? If so, by how much? |
|
|
|
Jan 31 2013, 01:44
Post
#5
|
|
|
Group: Members Posts: 4129 Joined: 2-September 02 Member No.: 3264 |
So it's compression involves taking a 14 bit signal (or some other value depending on the flavor of ADPCM) and spacing the levels on a log scale. So if the signal is very quiet, the levels are close together, and the error is smaller. If the signal is larger, the error is larger. If the error was constant, you'd have regular PCM. So if I want a good ADPCM sample I should lower the volume of the uncompressed file first? If so, by how much? Reducing the signal does reduce the error, but since SNR is the ratio of signal to noise . . . |
|
|
|
Neuron Typical signal to noise ratio of ADPCM Jan 28 2013, 15:08
saratoga There are various adpcm flavors. Which are you usi... Jan 28 2013, 16:56
Neuron QUOTE (saratoga @ Jan 28 2013, 16:56) The... Jan 28 2013, 20:16
Garf CompAudio from AFsp can calculate this, IIRC. But ... Jan 28 2013, 17:51
Woodinville QUOTE (Garf @ Jan 28 2013, 08:51) CompAud... Jan 31 2013, 08:30
kode54 Cool, game soundtrack ripping for the win. I may b... Jan 29 2013, 06:07
Neuron QUOTE (kode54 @ Jan 29 2013, 06:07) Cool,... Jan 29 2013, 11:54
Neuron QUOTE (kode54 @ Jan 29 2013, 06:07) Cool,... Jan 29 2013, 16:47
Neuron Here it is:http://www.hydrogenaudio.org/forums/ind... Jan 29 2013, 12:46
saratoga If you have the lossless and lossy encoded files y... Jan 29 2013, 17:37
Neuron I have to admit I don't really know how to do ... Jan 29 2013, 22:42
Neuron I've added the song in 44 Khz MS ADPCM to the ... Jan 29 2013, 23:15

bandpass QUOTE (Neuron @ Jan 29 2013, 22:15) MS AD... Jan 30 2013, 08:46
Woodinville QUOTE (Neuron @ Jan 29 2013, 13:42) I hav... Jan 31 2013, 08:33
extrabigmehdi Well, I used the normalize function of soundforge ... Jan 30 2013, 00:08
Neuron QUOTE (extrabigmehdi @ Jan 30 2013, 00:08... Jan 30 2013, 11:29
extrabigmehdi QUOTE (Neuron @ Jan 30 2013, 10:29) Thank... Jan 30 2013, 13:48
Neuron Thank you, but what does "signal: -19 db... Jan 30 2013, 14:14
db1989 QUOTE (Neuron @ Jan 30 2013, 13:14) ADPCM... Jan 30 2013, 15:29
extrabigmehdi QUOTE (Neuron @ Jan 30 2013, 13:14) Thank... Jan 30 2013, 15:49
Neuron QUOTE (extrabigmehdi @ Jan 30 2013, 15:49... Jan 30 2013, 16:07
Neuron QUOTE (extrabigmehdi @ Jan 30 2013, 15:49... Jan 30 2013, 16:13
pdq The "dynamic range" of mp3 is actually q... Jan 30 2013, 15:24
extrabigmehdi QUOTE (Neuron @ Jan 30 2013, 15:00) I got... Jan 30 2013, 17:03

Neuron QUOTE (extrabigmehdi @ Jan 30 2013, 17:03... Jan 30 2013, 21:04
Neuron QUOTE (saratoga @ Jan 31 2013, 01:44) QUO... Jan 31 2013, 13:44
Neuron That is true, but it does not explain why the ADPC... Jan 30 2013, 21:10![]() ![]() |
|
Lo-Fi Version | Time is now: 19th May 2013 - 12:42 |