int sp_smoothdelay_destroy(sp_smoothdelay **p) { sp_smoothdelay *pp = *p; sp_auxdata_free(&pp->buf1); sp_auxdata_free(&pp->buf2); free(*p); return SP_OK; }
int sp_revsc_destroy(sp_revsc **p) { sp_revsc *pp = *p; sp_auxdata_free(&pp->aux); free(*p); return SP_OK; }
int sp_waveset_destroy(sp_waveset **p) { sp_waveset *pp = *p; sp_auxdata_free(&pp->auxch); free(*p); return SP_OK; }
int sp_pluck_destroy(sp_pluck **p) { sp_pluck *pp = *p; sp_auxdata_free(&pp->auxch); free(*p); return SP_OK; }
int sp_allpass_destroy(sp_allpass **p) { sp_allpass *pp = *p; sp_auxdata_free(&pp->aux); free(*p); return SP_OK; }
int sp_reverse_destroy(sp_reverse **p) { sp_reverse *pp = *p; sp_auxdata_free(&pp->buf); free(*p); return SP_OK; }
int sp_vdelay_destroy(sp_vdelay **p) { sp_vdelay *pp = *p; sp_auxdata_free(&pp->buf); free(*p); return SP_OK; }
int sp_spa_destroy(sp_spa **p) { sp_spa *pp = *p; sp_auxdata_free(&pp->aux); spa_close(&pp->spa); free(*p); return SP_OK; }
int sp_mincer_destroy(sp_mincer **p) { sp_mincer *pp = *p; sp_fft_destroy(&pp->fft); sp_auxdata_free(&pp->fwin); sp_auxdata_free(&pp->bwin); sp_auxdata_free(&pp->prev); sp_auxdata_free(&pp->framecount); sp_auxdata_free(&pp->outframe); sp_auxdata_free(&pp->win); free(*p); return SP_OK; }