I believe that's fairly normal with up-sampling, and often a low-pass filter is added to try and remove the unexpected data.
Looking at the code it's just doing a linear interpolation, without any kind of low pass filter on it, hence it going over 16khz (half the original sample rate).
I happened to be looking in that code just to see if there was anything in there causing audio break-ups, appears that it's not that area that's the problem, it's run out of samples in the mixer and so just repeats the last data (my old i7-920 isn't quite up to running things at full speed
)
Attached is a patch that might help a little bit, I add a special case for 32k to 48k conversions. By special casing the code it looks at the next 2 samples, and makes 3 samples from them (it's still a linear interpolation). It then applies a really basic low pass filter at 16khz.
To do the low pass filter properly would need a better algorithm for the conversion (at least it's in a different thread so could take the time to do something different)
Note that the patch isn't anywhere near as clean (or tidy) as I'd like, but I figured it might give you something to play with, and is against the git master from today.
Looking at the code it's just doing a linear interpolation, without any kind of low pass filter on it, hence it going over 16khz (half the original sample rate).
I happened to be looking in that code just to see if there was anything in there causing audio break-ups, appears that it's not that area that's the problem, it's run out of samples in the mixer and so just repeats the last data (my old i7-920 isn't quite up to running things at full speed
)Attached is a patch that might help a little bit, I add a special case for 32k to 48k conversions. By special casing the code it looks at the next 2 samples, and makes 3 samples from them (it's still a linear interpolation). It then applies a really basic low pass filter at 16khz.
To do the low pass filter properly would need a better algorithm for the conversion (at least it's in a different thread so could take the time to do something different)
Note that the patch isn't anywhere near as clean (or tidy) as I'd like, but I figured it might give you something to play with, and is against the git master from today.
