[MPlayer-dev-eng] [PATCH] fix for -srate bug
Ed Wildgoose
lists at wildgooses.com
Thu Oct 28 13:18:42 CEST 2004
>blackman nuttall windowed sinc, its trivial to change it to ANY other linear
>resampling algorithm, and ive never seen a non-linear one used for audio, and
>u dont even seem to know what linear means ...
>
>
I'm not quite sure why you and Richard have descended to name calling?
I have a 1st class honours degree in mathematics, and so I feel
reasonably comfortable with the definition of "linear". On the other
hand, DSP is not something that I have studied previously, and so like
the rest of us, I am learning. I haven't intentionally claimed to be a
DSP guru, and I thought I had said as much in a previous email. I
certainly should think that we have already lost the average reader in
this thread already...
For those still following, and who aren't DSP gurus like Michael and
Richard, then I would claim that the comment "ive never seen a
non-linear one used" is slightly misleading. First, many of the better
resampling routines use sinc based interpolation between samples.
However, whilst the sinc function is non-linear (and infinitely long),
it turns out that you can approximate it using only (finite) linear
functions to a high degree of accuracy. This is the technique used in
libsamplerate.
I'm going to add my caveat again, lest I get beaten up over this: I'm
not a terribly experienced DSP coder, and I have certainly never written
my own resampler (yet). I'm also not very familiar with the technique
that you are using in lavc.
>well, listen to it, if u hear some aliasing, tell me ill fix it
>
>
I would love to. In fact I was hoping to right now, but the builders in
the house seem to have blown all the power to the downstairs ring main.
I'm writing this on battery power upstairs... It may not be until
tomorrow before I can get the audio system up and running.
However, for those who have a functioning system, then a good test for
aliasing is a slow sine sweep rising in frequency. The sweep that you
hear coming *down* the other way at highish frequencies is the aliasing
occuring. This is something that I would like to try with your resampler.
>if u did any double blind listening tests please elaborate against what did u
>test libsamplerate? what samples where used what the results where ...
>
>
I agree that blind listening tests are extremely useful. I will be
honest and say that I have fooled myself on a number of occasions, only
to find that when I test two things back to back with level matching,
all the differences disappear. However, where we have diminishing
returns then it's also often the case that 95% of the time the two
alternatives can be indistinguishable, but there are still cases where
differences are audible. For example even with the rather horrible
standard resampling of mplayer I only hear the ringing/buzzing on
certain frequencies. If I played only a 10 second clip chosen at
random, then possibly I wouldn't hear a difference either
With the "high quality" resampler in mplayer (not your one), I don't
hear an audible difference as such. However, if I play my film at
highish volumes then I quickly get "listener fatigue" (< 1 hour) and
have to turn down the volume. This doesn't happen in the same way with
the non-resampled version. So I suspect that there is some IM
distortion being the main issue here (which makes sense).
Thanks for your comments so far. It's certainly of huge interest to me
to have a really good resampler available in mplayer
Ed W
More information about the MPlayer-dev-eng
mailing list