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: IMA ADPCM (Read 7508 times) previous topic - next topic
0 Members and 1 Guest are viewing this topic.

IMA ADPCM

someone ever tried out the Microsoft's built in IMA ADPCM codec? The highest quality gives about 354 kbps in stereo at 44.1 khz.

I couldn't say if it's bad or not, I just encoded some music with it... not that bad.....
Could it be competitive with wavpack lossy? why? or why not?

Someone knows where to download the newest one of it? I think my codec is of 1996
FB2K,APE&LAME

IMA ADPCM

Reply #1
ADPCM is a bit like 256 colour bitmaps; the storage is uncompressed, but you lose quality during the conversion.

It would be much better to actually use compression, IMHO. (Judging from the bitrate, I'd say it's 44.1 kHz 4 bit stereo at 352.8 kbps.)

IMA ADPCM

Reply #2
I think the codec works by breaking the sound up into frames, identifying the 16 most statistically significant amplitude levels (which is where the 4-bit comes from) within each frame, and dithering the audio down to those 16 levels. There is some overhead for defining the "palettes" which makes the overall compression ratio slightly less than 4:1.

There are no real psychoacoustics involved, just a reduction in signal to noise ratio. IMO the sound quality lies somewhere between 8 bit PCM and 8 bit companded (a-law/mu-law). If you want to hear its flaws, concentrate on background hiss - it's probably the only artifact the codec has (but it's a significant one).

Its only real advantage is it's a simple and fast codec. Even some el-cheapo MP3 players can record in it.

Someone knows where to download the newest one of it? I think my codec is of 1996

I doubt you'll find a newer version of it. The version you've got it most likely only there for legacy purposes. Since there's no psychoacoustics or data compression involved, there's no room to tweak the sound quality or reduce the bit rate. The version you've got is, effectively, perfect!

Dunno how it compares to Wavpack lossy (never tried it). I'd imagine Wavpack would outperform ADPCM.

IMA ADPCM

Reply #3
I think the codec works by breaking the sound up into frames, identifying the 16 most statistically significant amplitude levels (which is where the 4-bit comes from) within each frame, and dithering the audio down to those 16 levels. There is some overhead for defining the "palettes" which makes the overall compression ratio slightly less than 4:1.

Except you forgot the D in ADPCM for differential.

Dunno how it compares to Wavpack lossy (never tried it). I'd imagine Wavpack would outperform ADPCM.


The obvious difference is that this IMA ADPCM thingy is intrinsically CBR whereas WavPack can do VBR which is a good thing. Also, WavPack includes better prediction methods compared to differential coding used in ADPCM and some clever entropy coding. So, from a format standpoint, WavPack is superior in terms of the quality-per-bit-ratio. Note that I'm not comparing encoders but just the formats themselves. If you run the available WavPack encoder in CBR mode you should get results at least as good as the IMA ADPCM versions (at the same bitrate) unless your IMA ADPCM encoder does a far better job on noise shaping than WavPack (very unlikely).

En-/decoding of IMA ADPCM however is a really easy to do. It works on very short blocks and has sort of a "low encoder/decoder delay" advantage. But this isn't really a plus under "normal" circumstances.

Cheers!
SG

IMA ADPCM

Reply #4
Well, I'll just add a couple things to what's been said. I tested the IMI ADPCM encoder that comes with CoolEdit2000 and it results in about 10-12 dB more noise than WavPack lossy at the same bitrate. Or, put a different way, at about 2.5 bits/sample WavPack lossy achieves the same S/N as IMI at 4 bits/sample. The version I tested produced flat quantization noise.

The major reason that WavPack can do better is that it is not restricted to exactly 4 bits for every sample. Using a fixed number of bits per sample is convenient to implement, but is very inefficient for audio coding because for any given sample some numerical values are much more likely than others. WavPack lossy (and all lossless compressors) take advantage of this with variable length bit coding (in the WavPack case a sample can be represented by as few as 1.5 bits or way over 16, depending on the value).

Less significant sources of WavPack advantage are the more accurate prediction (as Sebastian mentioned) and joint stereo. And although it does not now, in the future WavPack could also take advantage of true VBR modes (as Sebastian also points out).

IMA ADPCM

Reply #5
Perhaps a trip to Jayant and Noll's "Waveform Coding" would clear up a lot here?
-----
J. D. (jj) Johnston