10#ifndef __UTILS_RESAMPLER_H__
11#define __UTILS_RESAMPLER_H__
13#include "zrythm-config.h"
25typedef enum ResamplerQuality
27 RESAMPLER_QUALITY_QUICK,
28 RESAMPLER_QUALITY_LOW,
29 RESAMPLER_QUALITY_MEDIUM,
30 RESAMPLER_QUALITY_HIGH,
31 RESAMPLER_QUALITY_VERY_HIGH,
47 unsigned int num_channels;
68 ResamplerQuality quality;
80 const float * in_frames,
81 const size_t num_in_frames,
82 const double input_rate,
83 const double output_rate,
84 const unsigned int num_channels,
85 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().