12 #ifndef ROC_AUDIO_IRESAMPLER_H_
13 #define ROC_AUDIO_IRESAMPLER_H_
38 virtual bool set_scaling(
size_t input_rate,
size_t output_rate,
float multiplier) = 0;
virtual float n_left_to_process() const =0
How many samples were pushed but not processed yet.
virtual bool is_valid() const =0
Check if object is successfully constructed.
virtual ~IResampler()
Deinitialization.
virtual void end_push_input()=0
Commit buffer with input data.
virtual const core::Slice< sample_t > & begin_push_input()=0
Get buffer to be filled with input data.
IResampler(core::IArena &arena)
Initialization.
virtual size_t pop_output(sample_t *out_data, size_t out_size)=0
Read samples from input buffer and fill output frame.
virtual bool set_scaling(size_t input_rate, size_t output_rate, float multiplier)=0
Set new resample factor.
IArena & arena() const
Get arena.
Base class for object with reference counter.
float sample_t
Raw audio sample.
Base class for object with reference counter.