10#ifndef __UTILS_RESAMPLER_H__
11#define __UTILS_RESAMPLER_H__
13#include "zrythm-config.h"
23typedef enum ResamplerQuality
25 RESAMPLER_QUALITY_QUICK,
26 RESAMPLER_QUALITY_LOW,
27 RESAMPLER_QUALITY_MEDIUM,
28 RESAMPLER_QUALITY_HIGH,
29 RESAMPLER_QUALITY_VERY_HIGH,
45 unsigned int num_channels;
66 ResamplerQuality quality;
78 const float * in_frames,
79 const size_t num_in_frames,
80 const double input_rate,
81 const double output_rate,
82 const unsigned int num_channels,
83 const ResamplerQuality quality,
NONNULL_ARGS(1) int undo_manager_undo(UndoManager *self
Undo last action.
NONNULL bool resampler_is_done(Resampler *self)
Indicates whether resampling is finished.
Resampler * resampler_new(const float *in_frames, const size_t num_in_frames, const double input_rate, const double output_rate, const unsigned int num_channels, const ResamplerQuality quality, GError **error)
Creates a new instance of a Resampler with the given settings.
size_t num_in_frames
Number of frames per channel.
const float * in_frames
Given input (interleaved) frames .
size_t num_out_frames
Number of frames per channel.
size_t frames_written
Number of frames written so far.
size_t frames_read
Number of frames read so far.
float * out_frames
Output (interleaved) frames to be allocated during resampler_new().