Skip to content

HeadMania Upsampler 1.32.0

Choose a tag to compare

@danghe danghe released this 13 Jun 18:57
2e91578

Support the ongoing development of this project on Patreon: https://www.patreon.com/c/HeadMania

Need help, want to share feedback, or chat with other listeners? Join the Telegram group: https://t.me/+lIFYDf6ZmMk4N2E0

Found a bug or have a feature request? Report it on the issue tracker: https://github.com/danghe/HeadManiaReleases/issues

v1.32.0

This one adds 16× upsampling. The ceiling used to be 8× — 352.8 / 384 kHz. Now there's a ×16 button in the rate selector that takes 44.1-family sources to 705.6 kHz and 48-family sources to 768 kHz, and it works with every filter: Organik, Kinetic, the Mega family, AURORA, Transient-Perfect, all of them. That breadth is possible because of how it's built — the heavy million-tap filter keeps running at its proven 8× rate, and a thin, transparent stage lifts the final octave on top. So 16× costs almost nothing in CPU and changes nothing in the filter's character.

I need to be straight about what 16× is and isn't, because the honest answer matters more than the headline. 16× is not "cleaner" than 8× in any way you can measure in the digital domain. I measured it end-to-end through the real engine: in the audible band, the 16× output is identical to the 8× output to the limit of the measurement — 0.00000 dB difference — perfectly gain-neutral, with no change in true peak and the same in-band image rejection. So what does it actually buy you? The benefit is at your DAC, not in the bits. Doubling the output rate roughly doubles the empty space between your music and the first reconstruction image, which lets your DAC's analog reconstruction filter roll off more gently — a wider, less aggressive slope, which can mean flatter phase in the top octave. It also gives the true-peak limiter more between-sample detail to catch on the loudest masters. Whether any of that is audible depends entirely on your DAC; some DACs oversample internally and won't gain much. Honest summary: 16× hands your DAC an easier analog problem; it does not change the signal in the audible band. Judge it by ear on your own gear.

What's new

  • 16× upsampling (705.6 / 768 kHz), every filter. New ×16 button in the rate selector. The million-tap filter still runs at 8×; a transparent stage lifts the top octave on top of it, so CPU cost is minimal and the filter's character is unchanged.
  • Transient-Perfect keeps its zero-overshoot guarantee at 16×. That guarantee depends on a non-negative kernel, and the lift stage uses a matching non-negative interpolation — so Transient-Perfect stays provably monotone at 705.6 / 768 kHz, not just at 8×.
  • DSD is untouched. 16× is PCM-only. DSD output stays at its validated rate and is bit-for-bit identical to before — choosing a higher PCM rate never reaches the DSD modulator.
  • High-res sources keep their rate. 16× is for the 44.1 / 48 base families. A 96 / 192 kHz source already starts high, so it stays at its proven rate rather than being pushed onto a heavier filter. If a DAC can't accept 705.6 / 768 kHz, it falls back cleanly and the status badge shows the rate you actually got.
  • DSD from a 48 / 96 kHz source plays again (rolled in from v1.31.4). On some setups, DSD output from a 48-kHz-family source — including live capture, which some systems pin to 48 kHz — produced silence. The engine now projects those onto the 44.1 base the DSD modulator needs, so DSD plays from any source family.

Need help, want to share feedback, or chat with other listeners? Join the Telegram group: https://t.me/+lIFYDf6ZmMk4N2E0

Found a bug or have a feature request? Report it on the issue tracker: https://github.com/danghe/HeadManiaReleases/issues