On Fri, Sep 25, 2009 at 12:06:38PM -0400, Paul Davis wrote:
in 2.X, the resampling is done with very poor quality
linear
interpolation, so ardour can resample a pretty large number of tracks.
Are you sure ? I measured it today (using the manual varispeed)
and got some very strange results:
- large amounts of non-harmonic distortion, basically spectral
lines which are 46.9Hz apart (= Fs / 1024). 1024 was also the
period size.
- occasionally phase jumps, usually together with a single
sample going to over 1e+15. Ardour's meter on one of
the test tracks went up to +300dB while playing a 2Khz
sine with +2% speed change.
None of this would be produced by linear interpolation.
in 3.X, there are some choices about what type of
interpolation to
use. the underlying assumption here is that if the user wants ardour
to varispeed (and note that the same code is used for
scrubbing/shuttling too), then they do not care *much* about quality.
this is not "sample rate conversion" in the traditional sense - its
"resample so that we can stay in sync".
Still, there's no point in using any DAW if the result is not
recorded somehow and used later. So quality does matter.
If a signal is recorded
with some speed error, and then played back with
the same
speed error the result should be the original signal. Since
it will be resampled on playback it has to be resampled on
record as well, in the opposite direction.
sure. however, i have no great interest in implementing this because
from my perspective, the "errors" that occur when the timecode source
is not sample clock synced are generally *not* repeatable, and thus
attempting to support this would actually not accomplish the goal.
It would. Even if the record/playback errors are not the same, the
expected result depends on their ratio, even if that ratio is not
unity or constant.
Ciao,
--
FA
Io lo dico sempre: l'Italia รจ troppo stretta e lunga.