resamp

Functions

int main(int argc, char *argv[])

resamp [ option ] [ infile ]

  • -a int

    • resampling library

      • 0 libsamplerate

      • 1 speex

      • 2 r8brain

  • -q int

    • quality

  • -l int

    • length of vector \((1 \le L)\)

  • -m int

    • order of vector \((0 \le M)\)

  • -s double

    • input sampling rate in kHz

  • -S double

    • output sampling rate in kHz

  • infile str

    • double-type data sequence

  • stdout

    • double-type resampled data sequence

The example command converts 16 kHz data to 44.1 kHz data.

resamp -s 16 -S 44.1 < data.raw > data_us.raw
Parameters:
  • argc[in] Number of arguments.

  • argv[in] Argument vector.

Returns:

0 on success, 1 on failure.

See also

wav2raw raw2wav

class Resampler

Resample signals.

The input is the \(T \times L\) samples:

\[ \begin{array}{ccccccc} x_1(1), & \ldots, & x_1(L), & \ldots, & x_T(1), \ldots, x_T(L), \end{array} \]
where \(L\) is the number of channels and \(T\) is the number of frames. The output is the \(T' \times L\) samples:
\[ \begin{array}{ccccccc} y_1(1), & \ldots, & y_1(L), & \ldots, & y_{T'}(1), \ldots, y_{T'}(L), \end{array} \]
where \(T'\) is the number of output frames determined by the input/output sampling rates.

Public Types

enum Algorithms

Resampling algorithms.

Values:

enumerator kLibsamplerate
enumerator kSpeex
enumerator kR8brain
enumerator kNumAlgorithms

Public Functions

Resampler(double input_sampling_rate, double output_sampling_rate, int vector_length, int buffer_length, int quality, Algorithms algorithm)
Parameters:
  • input_sampling_rate[in] Input sampling rate in Hz.

  • output_sampling_rate[in] Output sampling rate in Hz.

  • vector_length[in] Length of vector (number of channels).

  • buffer_length[in] Length of buffer in frames.

  • quality[in] Quality of resampling (higher is better).

  • algorithm[in] Resampling algorithm.

inline void Clear()

Clear internal state.

inline int GetLatency()
Returns:

Latency introduced by resampling.

inline bool IsValid() const
Returns:

True if this object is valid.

inline virtual bool Get(const std::vector<double> &inputs, std::vector<double> *outputs)
Parameters:
  • inputs[in] Input samples (interleaved if multi-channel).

  • outputs[out] Output samples (interleaved if multi-channel).

Returns:

True on success, false on failure.

Public Static Functions

static int GetMinimumQuality(Algorithms algorithm)
Parameters:

algorithm[in] Resampling algorithm.

Returns:

Minimum quality of resampling.

static int GetMaximumQuality(Algorithms algorithm)
Parameters:

algorithm[in] Resampling algorithm.

Returns:

Maximum quality of resampling.

static double GetMinimumRatio()
Returns:

Minimum resampling ratio.

static double GetMaximumRatio()
Returns:

Maximum resampling ratio.