InterpolateLinear.h | InterpolateLinear.h | |||
---|---|---|---|---|
/////////////////////////////////////////////////////////////////////////// ///// | /////////////////////////////////////////////////////////////////////////// ///// | |||
/// | /// | |||
/// Linear interpolation routine. | /// Linear interpolation routine. | |||
/// | /// | |||
/// Author : Copyright (c) Olli Parviainen | /// Author : Copyright (c) Olli Parviainen | |||
/// Author e-mail : oparviai 'at' iki.fi | /// Author e-mail : oparviai 'at' iki.fi | |||
/// SoundTouch WWW: http://www.surina.net/soundtouch | /// SoundTouch WWW: http://www.surina.net/soundtouch | |||
/// | /// | |||
/////////////////////////////////////////////////////////////////////////// ///// | /////////////////////////////////////////////////////////////////////////// ///// | |||
// | // | |||
// $Id: InterpolateLinear.h 179 2014-01-06 18:41:42Z oparviai $ | // $Id: InterpolateLinear.h 225 2015-07-26 14:45:48Z oparviai $ | |||
// | // | |||
/////////////////////////////////////////////////////////////////////////// ///// | /////////////////////////////////////////////////////////////////////////// ///// | |||
// | // | |||
// License : | // License : | |||
// | // | |||
// SoundTouch audio processing library | // SoundTouch audio processing library | |||
// Copyright (c) Olli Parviainen | // Copyright (c) Olli Parviainen | |||
// | // | |||
// This library is free software; you can redistribute it and/or | // This library is free software; you can redistribute it and/or | |||
// modify it under the terms of the GNU Lesser General Public | // modify it under the terms of the GNU Lesser General Public | |||
skipping to change at line 66 | skipping to change at line 66 | |||
int &srcSamples); | int &srcSamples); | |||
virtual int transposeStereo(SAMPLETYPE *dest, | virtual int transposeStereo(SAMPLETYPE *dest, | |||
const SAMPLETYPE *src, | const SAMPLETYPE *src, | |||
int &srcSamples); | int &srcSamples); | |||
virtual int transposeMulti(SAMPLETYPE *dest, const SAMPLETYPE *src, int &srcSamples); | virtual int transposeMulti(SAMPLETYPE *dest, const SAMPLETYPE *src, int &srcSamples); | |||
public: | public: | |||
InterpolateLinearInteger(); | InterpolateLinearInteger(); | |||
/// Sets new target rate. Normal rate = 1.0, smaller values represent s lower | /// Sets new target rate. Normal rate = 1.0, smaller values represent s lower | |||
/// rate, larger faster rates. | /// rate, larger faster rates. | |||
virtual void setRate(float newRate); | virtual void setRate(double newRate); | |||
}; | }; | |||
/// Linear transposer class that uses floating point arithmetics | /// Linear transposer class that uses floating point arithmetics | |||
class InterpolateLinearFloat : public TransposerBase | class InterpolateLinearFloat : public TransposerBase | |||
{ | { | |||
protected: | protected: | |||
float fract; | double fract; | |||
virtual void resetRegisters(); | virtual void resetRegisters(); | |||
virtual int transposeMono(SAMPLETYPE *dest, | virtual int transposeMono(SAMPLETYPE *dest, | |||
const SAMPLETYPE *src, | const SAMPLETYPE *src, | |||
int &srcSamples); | int &srcSamples); | |||
virtual int transposeStereo(SAMPLETYPE *dest, | virtual int transposeStereo(SAMPLETYPE *dest, | |||
const SAMPLETYPE *src, | const SAMPLETYPE *src, | |||
int &srcSamples); | int &srcSamples); | |||
virtual int transposeMulti(SAMPLETYPE *dest, const SAMPLETYPE *src, int &srcSamples); | virtual int transposeMulti(SAMPLETYPE *dest, const SAMPLETYPE *src, int &srcSamples); | |||
End of changes. 3 change blocks. | ||||
3 lines changed or deleted | 3 lines changed or added | |||
This html diff was produced by rfcdiff 1.41. The latest version is available from http://tools.ietf.org/tools/rfcdiff/ |