Skip to main content

Notice

Please note that most of the software linked on this forum is likely to be safe to use. If you are unsure, feel free to ask in the relevant topics, or send a private message to an administrator or moderator. To help curb the problems of false positives, or in the event that you do find actual malware, you can contribute through the article linked here.
Topic: Typical signal to noise ratio of ADPCM (Read 20516 times) previous topic - next topic
0 Members and 1 Guest are viewing this topic.

Typical signal to noise ratio of ADPCM

Reply #25
That is true, but it does not explain why the ADPCM "noise signal" has recognisable music in it. Let me guess, is it because it has a dynamic range of 96 dB (in case of ADPCM variants that work on and decode to 16 bit samples, as both IMA and MS ADPCM indeed do) even despite a low SNR. So the ADPCM noise is just noise and not a signal "black hole" like with undithered PCM.

Typical signal to noise ratio of ADPCM

Reply #26
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?

Typical signal to noise ratio of ADPCM

Reply #27
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 . . .


Typical signal to noise ratio of ADPCM

Reply #28
CompAudio from AFsp can calculate this, IIRC. But this will give you raw SNR, wheras you might be more interested in A-weighted SNR, I'd think.


SegSNR would even be better.

SegSNR as a function of time shows you when it goofs up, too.
-----
J. D. (jj) Johnston

Typical signal to noise ratio of ADPCM

Reply #29
I have to admit I don't really know how to do such a thing but I've found something http://www.baudline.com/solutions/codec/index.html .

The curious thing is, why does ADPCM achieve lower SNR than 8-bit PCM according to that website even through ADPCM usually sounds much better? Is it because a sine wave was used? Same for u and A-law, I thought they were supposed to increase SNR (and u-law and A-law files indeed hear much cleaner than linear 8 bit).



SNR has little to do with audio quality except at extrema.

ADPCM has a variable step size. The mechanics of step-size adaptation mean that you don't quite get 6dB/bit, you usually lose about .5 to 1 bit's worth of SNR, BUT that is adapted to the energy in the coding residual, so you don't get a noise floor like you get from PCM. PCM has a fixed lower noise floor. ADPCM does, but it's much, much lower, and depends on the adaptation paramters, step size leak value, and central step size value. And most often it's teensy-tiny. Of course, when you put in a large signal you get much much more error, but a lot of it is masked.
-----
J. D. (jj) Johnston

Typical signal to noise ratio of ADPCM

Reply #30
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 . . .


Yes, but I get as much as 20 dB less noise after subtraction in quiet parts than in loud parts. The quiet parts are just 3-6 dB quieter than the loud ones. I have uploaded the noise samples in the upload section.