X-Git-Url: http://git.tuebingen.mpg.de/?a=blobdiff_plain;f=resample_filter.c;h=bbdda51c525630c6d1411dfa547193f8ccdae9ce;hb=refs%2Fheads%2Fnext;hp=01b4ac48ce11b97d3199520a6e6f1342db87d470;hpb=b142089267ef501e438c3dc77ecf19bead3d4e58;p=paraslash.git diff --git a/resample_filter.c b/resample_filter.c index 01b4ac48..6d4599a8 100644 --- a/resample_filter.c +++ b/resample_filter.c @@ -28,7 +28,8 @@ struct resample_context { struct check_wav_context *cwc; }; -static int resample_execute(struct btr_node *btrn, const char *cmd, char **result) +static int resample_execute(const struct btr_node *btrn, const char *cmd, + char **result) { struct filter_node *fn = btr_context(btrn); struct resample_context *ctx = fn->private_data; @@ -51,7 +52,7 @@ static void resample_close(struct filter_node *fn) static void resample_open(struct filter_node *fn) { - struct resample_context *ctx = para_calloc(sizeof(*ctx)); + struct resample_context *ctx = zalloc(sizeof(*ctx)); struct btr_node *btrn = fn->btrn; struct wav_params wp; @@ -167,10 +168,10 @@ static int resample_frames(int16_t *in, size_t num_frames, bool have_more, data.output_frames = num_frames * ctx->ratio + 1; out_samples = data.output_frames * ctx->channels; - in_float = para_malloc(num_samples * sizeof(float)); + in_float = arr_alloc(num_samples, sizeof(float)); src_short_to_float_array(in, in_float, num_samples); data.data_in = in_float; - data.data_out = para_malloc(out_samples * sizeof(float)); + data.data_out = arr_alloc(out_samples, sizeof(float)); ret = src_process(ctx->src_state, &data); free(in_float); if (ret != 0) { @@ -179,7 +180,7 @@ static int resample_frames(int16_t *in, size_t num_frames, bool have_more, return -E_LIBSAMPLERATE; } out_samples = data.output_frames_gen * ctx->channels; - out = para_malloc(out_samples * sizeof(short)); + out = arr_alloc(out_samples, sizeof(short)); src_float_to_short_array(data.data_out, out, out_samples); free(data.data_out); *result = out; @@ -220,7 +221,7 @@ static int resample_post_monitor(__a_unused struct sched *s, void *context) } btr_merge(btrn, fn->min_iqs); in_bytes = btr_next_buffer(btrn, (char **)&in); - ret = -E_RESAMPLE_EOF; + ret = -E_EOF; num_frames = in_bytes / 2 / ctx->channels; if (num_frames == 0) goto out;