MP3 解码器精度测试

MP3 解码器精度测试 ,集成现阶段所有解码器的精度分析。

 

测试结果来自MAD网站

 

MPEG Audio Decoder Compliance

 

 

Introduction

The purpose of this page is to share an objective analysis of various MPEG audio decoders, in particular the results of tests for decoder compliance with respect to the ISO/IEC 11172 international standard.

Decoder Compliance

Part 4 of ISO/IEC 11172 defines the compliance tests for MPEG-1 audio and video decoders. Section 2.6.3 defines the computational accuracy tests for audio decoders. It states:

To be called an ISO/IEC 11172-3 audio decoder, the decoder shall provide an output such that the rms level of the difference signal between the output of the decoder under test and the supplied reference output is less than 2−15⁄√12 for the supplied sine sweep (20Hz–10kHz) with an amplitude of −20dB relative to full scale. In addition, the difference signal shall have a maximum absolute value of at most 2−14 relative to full-scale.

Then it says:

To be called a limited accuracy ISO/IEC 11172-3 audio decoder, the decoder shall provide an output for a provided test sequence such that the rms level of the difference signal between the output of the decoder under test and the supplied reference output is less than 2−11⁄√12 for the supplied sine sweep (20Hz–10kHz) with an amplitude of −20dB relative to full scale.

Thus, for the purpose of testing computational accuracy, we shall use three categories of compliance: fully compliantlimited accuracy, and not compliant.

Designations

ISO/IEC 11172-4 designates two kinds of audio decoders. Section 2.6.3 states:

An ISO/IEC 11172-3 compliant decoder that is able to support at least one but not all combinations of the options defined in 2.4.3 such as bit rates, sampling rates and modes, will be designated as an ISO/IEC 11172-3 Layer “N” audio decoder. Decoders that support all combinations are designated as Full Layer “N” ISO/IEC 11172-3 audio decoders, where “N” indicates I, II or III.

It should also be noted that, according to section 0.2 of ISO/IEC 11172-3:

An ISO/IEC 11172-3 Audio Layer N decoder is able to decode bitstream data which has been encoded in Layer N and all layers below N.

About the Tests

The following results have been obtained in tests conducted by Underbit in accordance with Annex A of ISO/IEC 11172-4.

All measurements are carried out relative to full scale where decoder output signals are normalized to be between −1.0 and +1.0. The supplied sine sweep with an amplitude of −20dB relative to full scale has an absolute amplitude of ±0.1 and a precision of 24 bits.

As instructed, where the output of a decoder is fewer than 24 bits, the remaining least significant bits are set to zero for purposes of normalization and measurement. (The number of output bits from the decoder is noted.)

Where the compliance test data contains two channels, or in the case of Layer II where multiple compliance test streams exist, the rms level and maximum difference values are calculated separately for each, and the greatest overall value used for the result.

Calculation of RMS

The rms (root-mean-square) level of the difference signal is calculated as

Sqrt[Sum[(t[i] - r[i])^2, {i, 1, N}] / N]

where ti is the ith output sample from the decoder under test, ri is the ith sample from the reference output, and N is the number of samples.

The maximum absolute value of the difference signal is simply the greatest value of |ti − ri|.

Test Results

DecoderBitsLayer ILayer IILayer III
RMS LevelMax DiffRMS LevelMax DiffRMS LevelMax Diff
Floating-Point Decoders
amp 0.7.616failed2.099×10−53.421×10−51.959×10−53.362×10−5
limited accuracylimited accuracy
Amplay 116failedfailed7.860×10−21.487×10−1
not compliant
Apollo 3716failed2.099×10−53.421×10−51.961×10−53.529×10−5
limited accuracylimited accuracy
Audioactive MP3 Decoder 1.1216failedfailed8.602×10−61.538×10−5
fully compliant
CoolPlayer 7224
[Xaudio]
168.728×10−61.526×10−59.336×10−53.175×10−38.602×10−61.538×10−5
fully compliantlimited accuracyfully compliant
FreeAmp 2.1 beta 516failed1.408×10−12.259×10−11.410×10−12.003×10−1
not compliantnot compliant
Jet-Audio 4.7
(64-bit float mode)
161.351×10−11.938×10−11.367×10−12.519×10−11.366×10−11.941×10−1
not compliantnot compliantnot compliant
LAME 3.86 beta
[mpglib]
16failedfailed8.870×10−61.836×10−5
limited accuracy
maplay 1.2161.738×10−53.052×10−51.850×10−53.052×10−5failed
limited accuracylimited accuracy
maplay 1.2+ for Win32 1.A168.728×10−61.526×10−59.996×10−22.659×10−18.602×10−61.526×10−5
fully compliantnot compliantfully compliant
mp3blaster 2.0b17161.738×10−53.052×10−56.654×10−11.130×1001.783×10−53.088×10−5
limited accuracynot compliantlimited accuracy
MP3 Decoder 1.4516failed9.995×10−22.659×10−11.074×10−33.479×10−2
not compliantnot compliant
MP3Player 1.23168.728×10−61.526×10−58.759×10−61.526×10−58.602×10−61.538×10−5
fully compliantfully compliantfully compliant
MP3 To Wave Converter 1.14165.234×10−21.255×10−19.793×10−22.226×10−19.982×10−22.000×10−1
not compliantnot compliantnot compliant
MpegDJ GoWave! 1.4116failed1.854×10−53.779×10−51.780×10−53.064×10−5
limited accuracylimited accuracy
mpg123 0.59r168.728×10−61.526×10−58.759×10−61.526×10−58.602×10−61.538×10−5
fully compliantfully compliantfully compliant
MusicMatch Jukebox 5.10.0149
[Xaudio]
168.728×10−61.526×10−58.759×10−61.526×10−58.602×10−61.538×10−5
fully compliantfully compliantfully compliant
NAD 0.94pb3168.822×10−31.107×10−19.639×10−22.000×10−19.991×10−22.000×10−1
not compliantnot compliantnot compliant
QuickTime 4.1.2, x8616failedfailed8.602×10−61.526×10−5
fully compliant
RightClick-MP3 1.65e
[L3dec 2.72]
16failedfailed8.602×10−61.538×10−5
fully compliant
Shibatch mpg123 plug-in 1.18+ for Winamp16failedfailed8.854×10−61.836×10−5
limited accuracy
Sonique 1.63161.394×10−12.001×10−18.759×10−61.526×10−51.410×10−12.003×10−1
not compliantfully compliantnot compliant
Sonique 1.808
[audioEnlightenment 4.70]
168.981×10−61.836×10−58.994×10−61.895×10−58.867×10−61.836×10−5
limited accuracylimited accuracylimited accuracy
Sonique 1.808
[audioEnlightenment 4.858 (Default Decoder)]
168.981×10−61.836×10−58.994×10−61.895×10−58.867×10−61.836×10−5
limited accuracylimited accuracylimited accuracy
splay 0.8.2161.738×10−53.052×10−51.863×10−54.232×10−51.783×10−53.088×10−5
limited accuracylimited accuracylimited accuracy
UltraPlayer 2.00168.965×10−61.824×10−51.262×10−21.297×10−18.854×10−61.836×10−5
limited accuracynot compliantlimited accuracy
Winamp 2.65
[Nullsoft MPEG audio decoder plug-in 2.33 (486)]
168.980×10−61.836×10−59.020×10−61.907×10−59.066×10−65.877×10−5
limited accuracylimited accuracylimited accuracy
Winamp 2.65
[Nullsoft MPEG audio decoder plug-in 2.33 (Pentium)]
168.980×10−61.836×10−59.020×10−61.907×10−59.067×10−65.877×10−5
limited accuracylimited accuracylimited accuracy
Winamp 2.65
[Nullsoft MPEG audio decoder plug-in 2.33 (MMX)]
164.524×10−51.634×10−44.539×10−51.811×10−49.067×10−65.877×10−5
limited accuracylimited accuracylimited accuracy
Winamp 2.666
[Nullsoft MPEG Audio Decoder 2.666]
168.727×10−61.526×10−58.759×10−61.526×10−58.602×10−61.526×10−5
fully compliantfully compliantfully compliant
Xaudio 1.1.0, x86
[decoder library 1.3.1]
168.728×10−61.526×10−58.759×10−61.538×10−58.602×10−61.538×10−5
fully compliantfully compliantfully compliant
Integer Decoders
Intel® IPP 1.01, StrongARM16failedfailed8.631×10−61.812×10−5
fully compliant
MAD 0.11.4b, ARM244.667×10−82.384×10−74.906×10−82.384×10−75.338×10−82.384×10−7
fully compliantfully compliantfully compliant
MAD 0.11.4b, x86246.198×10−83.576×10−76.198×10−82.384×10−79.000×10−89.537×10−7
fully compliantfully compliantfully compliant
MAD 0.11.4b, x86
(optimized for accuracy)
244.667×10−82.384×10−74.906×10−82.384×10−75.555×10−82.384×10−7
fully compliantfully compliantfully compliant
MAD 0.11.4b, x86
(optimized for speed)
247.131×10−62.480×10−57.250×10−62.789×10−57.227×10−62.730×10−5
fully compliantfully compliantfully compliant
mpg123 0.59r-arm32166.972×10−21.000×10−17.058×10−21.300×10−17.051×10−21.001×10−1
not compliantnot compliantnot compliant
splay 0.8.2-fp1162.180×10−56.604×10−51.961×10−54.458×10−55.618×10−21.190×10−1
limited accuracylimited accuracynot compliant
Xaudio 1.1.0, ARM
[decoder library 1.3.1]
166.945×10−29.965×10−22.003×10−53.576×10−52.065×10−56.580×10−5
not compliantlimited accuracylimited accuracy
Legend
fully compliantThe rms level of the difference signal is less than 2−15⁄√12 (≅ 8.810×10−6and the maximum absolute value of the difference signal is less than or equal to 2−14 (≅ 6.104×10−5).The decoder is an ISO/IEC 11172-3 Layer “N” audio decoder.
limited accuracyThe rms level of the difference signal is less than 2−11⁄√12 (≅ 1.410×10−4). (The maximum absolute value of the difference signal does not matter.)The decoder is a limited accuracy ISO/IEC 11172-3 Layer “N” audio decoder.
not compliantThe rms level of the difference signal is greater than or equal to 2−11⁄√12 (≅ 1.410×10−4).The decoder is not a compliant ISO/IEC 11172-3 Layer “N” audio decoder.
failedThe decoder failed to produce output for the given test bitstream.The decoder is not a Full Layer “N” ISO/IEC 11172-3 audio decoder.

Notes

Full Compliance

It should be noted that a fully compliant result from these tests does not mean the decoder in question is without flaws.

These tests only verify the computational accuracy of decoders against a reference signal that spans only 20Hz–10kHz of the frequency spectrum. While this test may be enough to detect a problem with a decoder, it is not enough to certify that a given decoder will correctly reconstruct frequencies outside this range, or that the same decoder will correctly handle any valid bitstream. To obtain these kinds of assurances, further tests are necessary.

Quantization Method

It should further be noted that these test results can be affected by the method used by each decoder to quantize its PCM output. Some decoders may use dithering or noise shaping to reduce the negative effects of quantization noise and improve the perceived audio quality, while others may simply round each output sample to the nearest integral value. Unfortunately, with few exceptions, it is not known what quantization method is used by each of the tested decoders.

It is possible for an otherwise fully compliant decoder that implements dithering with 16-bit output to appear only to have limited accuracy. The decoder’s outputbefore quantization should be the true measure of its accuracy.

转载于:https://www.cnblogs.com/gaozehua/archive/2012/12/21/2828044.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值