Skip to content
Christian Woltering edited this page Feb 4, 2024 · 10 revisions

Examples

  1. NAudio decoder
  2. BASS.NET decoder

Benchmark

The following table shows a comparision of different setups of the NAudio and the BASS.NET decoder. The m and n in brackets indicates whether managed or native code was executed. CC means chroma context, FFT is Fast Fourier Transform and RS means resampler. All timings are in seconds. The benchmark was run on the Beatles album Let it Be (12 tracks) for both encoded MP3 files and decoded WAV files:

--- NAudio                MP3      WAV
CC[m] - FFT[m] - RS[m]   5.071    2.695
CC[m] - FFT[n] - RS[m]   4.911    2.475
CC[n] - FFT[n] - RS[n]   3.569    1.128

--- Bass
CC[m] - FFT[m] - RS[m]   4.161    2.851
CC[m] - FFT[m] - RS[n]   2.094    0.684
CC[m] - FFT[n] - RS[m]   3.998    2.702
CC[m] - FFT[n] - RS[n]   1.943    0.527
CC[n] - FFT[n] - RS[m]   2.665    1.333
CC[n] - FFT[n] - RS[n]   2.016    0.597

--- fpclac
                         1.459    0.673

Other

An (untested) NAudio decoder for 24-bit PCM data is available as a gist (requested in issue #8).

Clone this wiki locally