Resampler::~Resampler ()
{
- src_delete (_src);
+ if (_src) {
+ src_delete (_src);
+ }
}
void
Resampler::set_fast ()
{
src_delete (_src);
+ _src = 0;
+
int error;
_src = src_new (SRC_LINEAR, _channels, &error);
if (!_src) {
}
if (data.output_frames_gen == 0) {
+ delete[] data.data_in;
+ delete[] data.data_out;
break;
}
delete[] buffer;
return out;
}
+
+void
+Resampler::reset ()
+{
+ src_reset (_src);
+}