Erik de Castro Lopo wrote:
Because the quality of linear converters is so poor, I
have not
even attempted to optimise or even profile it.
I notice that it runs about 5 times faster than SRC_SINC_FASTEST
and on reflection, it should probably be 20 times faster. However,
I really didn't even expect anyone to use SRC_LINEAR. It was added
for completeness, to show how bad linear converters are.
Well, in Jackbeat, when I included libsamplerate, I added some GUI options to
choose between the 5 converters you made. I then had to give up on this design,
and code a homemade converter, offering users the choice to use SRC_SINC_FASTEST
if they want it. But IMHO libsamplerate was not versatile enough here, and
forced me to code twice the same thing.
The important point is : wether you use SRC_LINEAR at composition time or not
has no consequence on the final sound. This is because once you're happy with
your composition and saved it as a Jackbeat sequence, you can load it on some
faster hardware and switch to SRC_SINC_FASTEST in one click.
And honestly linear conversion performs well enough for my composition needs,
and I don't see why I should forbid users to be able to do lo-fi on old hardware
if they want it.
If you don't want to support linear conversion, then you should state that
libsamplerate is for hi-fi purpose only, and suppress the linear converters. But
IMHO, libsamplerate should be able to :
- either perform _very_ fast
- or do high-quality, and still be reasonnably fast (which it does already)
That's flexibility.
--
og