dosbox-staging:jn/resampler-1

Last commit made on 2024-04-22
Get this branch:
git clone -b jn/resampler-1 https://git.launchpad.net/dosbox-staging

Branch merges

Branch information

Name:
jn/resampler-1
Repository:
lp:dosbox-staging

Recent commits

8d7a3ab... by John Novak <email address hidden>

cleanup

d6d3629... by John Novak <email address hidden>

Allow continuous 8,000 to 96,000 Hz host sample rates ('rate')

Although going above 48 kHz is rather pointless for normal usage,
FluidSynth supports up to 96 khz sample rates, so we might as well allow
it.

Modern OSes let the sample rate to be freely chosen, and running at very
specific rates allows for rendering WAV files at a given card's native
frequency without resampling; this might be useful for analysis purposes
(e.g., 49,716 Hz for OPL, 45,454 Hz for the Sound Blaster, or 32,000 Hz
for the MT-32).

9f6b4aa... by John Novak <email address hidden>

Change the LERP audio upsample to do proper downsampling when needed

60ae295... by John Novak <email address hidden>

Resample audio channels via Speex to the host rate by default

d491b01... by John Novak <email address hidden>

Sync 'rate' and 'blocksize' mixer settings when negotiated with SDL

dbd9571... by John Novak <email address hidden>

Fix FluidSynth & MT-32 crashing when host sample rate is set to 8000 Hz

94ff452... by John Novak <email address hidden>

Fix crash when filter cutoff frequencies are not below half of the sample rate

The IIR library rightfully throws an exception when you attempt to set a
filter's cutoff frequency at or above the Nyquist rate (half the sample
rate). So with this change we're always clamping the filter cutoff
frequencies just below the Nyquist rate.

The reason why we're clamping and not turning the filter off is because
this is an edge case that usually only happens when using 20,050 or
lower host rates, and it's a lot easier to just clamp than to disable
the filter and handle the state management correctly.

c6e2a75... by John Novak <email address hidden>

Improve audio filter logging

1e75b8e... by John Novak <email address hidden>

Address PVS-Studio warnings

84d9503... by John Novak <email address hidden>

Sync 'tandy_fadeout' setting when defaulted