Validating our Resampler

Sometimes our ears are not enough to inspect audio.

Then we need the best tools to see the content, frequencies and levels in our audio files.
In this post I want to tell, how we used PlayerSpecz to validate and improve our own re-sampler.

Graphical interface of PlayerSpecz, showing a sonogram off a multi-channel file.

JUCE re-sampler

Recently I came across somebody asking about JUCE‘s re-sampler capabilities and they referred to this website of infinitewave1.

Since we use JUCE extensively I got curious.

Could it be that bad?

Well, version 2.0.13 is like 10 years old or more, so I looked at the sources of the ResamplingAudioSource2, resampled a sweep and looked at it with our PlayerSpecz audio player and indeed, the results look just like back then:

Windowed Sinc Interpolator

So yeah, that’s not great. There is a lot of aliasing going on, and the filter slope is very mild.
But JUCE has added new classes we could use instead. So I took the best they offer and used the WindowedSincInterpolator instead:

Anti-Alias Filtering

This looks much better! All the aliasing is gone and we get a nice curve. The only thing is, when the sweep crosses the Nyquist frequency3, it bounces back (aliasing). This is to be expected, which is why Marcel added a steeper low pass filter for the frequencies above the new Nyquist frequency before we apply the resampling. In order to get it nice and steep, it is over-sampled:

This is the result we actually wanted to see: a smooth curve, no additional frequencies, and once the sweep has left the audible spectrum of our playback sample-rate: sweet silence!
Even though this re-sampler was just in the auditioning path, we aimed for the best possible quality and to suppress ghost frequencies that shouldn’t be there.

PlayerSpecz is our all new waveform audio player:

  • super fast and lightweight,
  • multiple visualizations
  • display a wide range of embedded audio metadata.
  • It is feature rich already in it’s free version, and you can try all the PRO functionality for 2 weeks, no strings attached!
    This new re-sampler is part of PlayerSpecz PRO from Version 1.0.4.
    See a full features list on our PlayerSpecz4 page.

Stay tuned in!

We intend to regularly keep posting new blogs about subjects relevant to our products or new features we introduce. Sign up for the newsletter to keep up to date on the latest blogs, but also updates and other essential information for our users.

This website uses cookies for your logged in status. We do not use trackers, nor 3rd party analytics. By continuing to use this site, you accept our use of cookies.