Help - Search - Members - Calendar
Full Version: What sort of coder is WMA?
Hydrogenaudio Forums > Lossy Audio Compression > Other Lossy Codecs
QuantumKnot
Not sure if this has been posted before but forgive me if it has. I know MS is quite tightlipped on their technology but has anyone made a good educated guess on what sort of coder they use in WMA? Transform, subband, or a hybrid of both? smile.gif
Valefor
I've heard it's a distort coder, but I could be wrong. biggrin.gif
No, seriously I would assume it's a transform coder.
Sebastian Mares
Hey guys, let us stay objective. Just because WMA is made by Microsoft it doesn't mean that it is bad.
I have compared seven tests between various encoders and WMA was ALWAYS second (after Ogg Vorbis) followed by LAME on place three.
The tests were from CHIP Online, PC-Welt, Litex-Media and some others.

Anyway, all confirmed that LAME is the best MP3 encoder for high bitrates (FhG for low bitrates).
NumLOCK
QUOTE(Sebastian Mares @ May 24 2003 - 12:24 PM)
I have compared seven tests between various encoders and WMA was ALWAYS second (after Ogg Vorbis) followed by LAME on place three.
The tests were from CHIP Online, PC-Welt, Litex-Media and some others.

Were the outputs levels properly matched between the different formats ?
Sebastian Mares
I guess so. Check out http://www.litexmedia.com for more details.
I could also give you the links for CHIP Online, but I don't know if you know German.

Litex-Media:
QUOTE
WMA had a very heavy start, especially version 7 that was designed as a substitute to MP3 and that became its toughest opponent; that was mainly because it lacked the quality MP3 had, but since then a lot of things have changed. Version 8 of Microsoft?s product beats MP3 clearly in every single point. However the format still has the same old problems: many users are not willing to give up the MP3-collection they have gathered the last few years. Compatibility is one of the magic words and WMA certainly has advantages here in favour of mp3PRO. It is 100 % backwards compatible and even the interruptions that occur when seeking through songs are (despite similar comression ratios) not that big. The most convincing reason for WMA instead of mp3PRO certainly is the fact that mp3PRO is not free of charge. You can encode WMAs for free with the Windows Media-encoder Microsoft offers on their website. Using the WM8-encoder-frontend this is a cheaper solution than the mp3PRO-encoder on which is a charge when encoding in higher bitrates than 64 kbps. This is why all WMAs are actually encoded with the same codec.
Sebastian Mares
On the other hand I have to admit that a lot has changed from LAME 3.70 to LAME 3.90.3. unsure.gif
MuMart
FFMPEG(libavcodec) has an open source WMA V1/V2 (ie wma8) built in. Looking at the source it appears to be a subband coder with a very basic perceptual noise substitution implementation. The frame sizes look like AAC. It wouldn't surprise me if WMA wasn't just a slightly modified AAC in the same was as WMV is a modified MPEG4.

Anyone like to correct me smile.gif

EDIT: Yes, it does use a DCT, but the coeficients are quantised in bands like MP3. Definitely not VQ.
tangent
I remember seeing it mentioned before a few times that WMA uses Vector Quantity, sort of like VQF.
sony666
If anyone knows, it's this guy: http://research.microsoft.com/~malvar/
Mabye you find some info there, I dont understand too much rolleyes.gif
Delerious
QUOTE(Sebastian Mares @ May 24 2003 - 04:59 AM)
I guess so. Check out http://www.litexmedia.com for more details.
I could also give you the links for CHIP Online, but I don't know if you know German.


I checked litexmedia and found this at the end

QUOTE
Everybody who still uses the long-proven MP3 should take the following bitrates to get the best sound-quality without any audible differences to the original files:

   1. with classical music: 192 kbps
   2. with rock/pop-music: 160 kbps

At lower bitrates a significant loss of quality is audible with both audio-formats after encoding / decoding the files a second time.


I haven't done any classical lately, but I have no problems at all distinguishing between
160k MP3's and the original files for rock/pop. I was also curious why no testing was done
above 128kbps?

J
QuantumKnot
QUOTE(sony666 @ Jun 1 2003 - 07:36 AM)
If anyone knows, it's this guy: http://research.microsoft.com/~malvar/
Mabye you find some info there, I dont understand too much rolleyes.gif

Cool. I've read this guy's paper on Fast Progressive Wavelet image coding. Judging from his experience in lapped transforms and his paper on scalable audio coders, my guess would be that WMA is a transform coder using the MLBT (modulated lapped biorthogonal transform) as opposed to the MDCT (modified discrete cosine transform) used in Vorbis and AAC.
Garf
libavcodec contains WMA decoder sources. That should clear this up...
Ivan Dimkovic
WMA is MDCT codec with vector quantization - and it could be seen easily by looking at the ffmpeg decoder.
Tripwire
Then WMAPro might be an incarnation of that MBLT transform coder biggrin.gif
Gabriel
I remember that there was an VQ acm codec available with the win95/98.
Does anyone remember its name?
eltoder
Ivan, could you give few more details, please. You seem to be the most competent person, to ask for this.

-Eugene
Gabriel
Source code of a decoder is available. That is all the information you need.
Ivan Dimkovic
QUOTE(eltoder @ Jun 4 2003 - 11:16 AM)
Ivan, could you give few more details, please. You seem to be the most competent person, to ask for this.

-Eugene

Sheesh... I don't think I'm that competent smile.gif Anway, I could help you a little bit:

http://cvs.sourceforge.net/cgi-bin/viewcvs...peg/libavcodec/

This file would be interesting to you:

http://cvs.sourceforge.net/cgi-bin/viewcvs....viewcvs-markup


A quick look at the code structure gives you few answers:

- WMA codec uses MDCT
- WMA codec uses vector quantization
- Variable block size and bit reservoir are permitted
- Algorithm is very simple and except noise coding does not use any advanced algorithm
petracci
QUOTE(QuantumKnot @ Jun 1 2003 - 04:33 AM)
Cool.  I've read this guy's paper on Fast Progressive Wavelet image coding.  Judging from his experience in lapped transforms and his paper on scalable audio coders, my guess would be that WMA is a transform coder using the MLBT (modulated lapped biorthogonal transform) as opposed to the MDCT (modified discrete cosine transform) used in Vorbis and AAC.

The MLBT is not that different from the MDCT. Apart from some phase shifts in the modulation kernel (which might depend on the implementation), it allows for different windows at the analysis (encoder) and synthesis (decoder) side. Typically, one would trade-off better stopband reduction at the synthesis side for reduced stopband redcution at the analysis side.
petracci
QUOTE(Ivan Dimkovic @ Jun 4 2003 - 01:42 PM)
A quick look at the code structure gives you few answers:

- WMA codec uses MDCT
- WMA codec uses vector quantization
- Variable block size and bit reservoir are permitted
- Algorithm is very simple and except noise coding does not use any advanced algorithm

In these articles/patents
  • H. S. Malvar, Scalable audio coder and decoder, U.S. Patent No. 6,029,126, Feb. 2000.
  • H. S. Malvar, Enhancing the performance of subband audio coders for speech signals, Proc. IEEE International Symposium on Circuits and Systems, Monterey, CA, pp. 98–101, June 1998.
  • H. S. Malvar, Biorthogonal and nonuniform lapped transforms for transform coding with reduced blocking and ringing artifacts, IEEE Trans. Signal Processing, pp. 1043-1053, April 1998.
a technique for combining subbands to create shorter filters was described.

Do you know if something like that is in a (current) WMA codec?
eltoder
Ivan, thanks a lot. smile.gif

-Eugene
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Invision Power Board © 2001-2008 Invision Power Services, Inc.