diff options
Diffstat (limited to 'audio/filter/af_hrtf.c')
-rw-r--r-- | audio/filter/af_hrtf.c | 11 |
1 files changed, 5 insertions, 6 deletions
diff --git a/audio/filter/af_hrtf.c b/audio/filter/af_hrtf.c index 72e2ec7c66..1e3244e2eb 100644 --- a/audio/filter/af_hrtf.c +++ b/audio/filter/af_hrtf.c @@ -301,7 +301,7 @@ static int control(struct af_instance *af, int cmd, void* arg) af->data->rate); return AF_ERROR; } - af->data->nch = ((struct mp_audio*)arg)->nch; + mp_audio_set_num_channels(af->data, ((struct mp_audio*)arg)->nch); if(af->data->nch == 2) { /* 2 channel input */ if(s->decode_mode != HRTF_MIX_MATRIX2CH) { @@ -310,13 +310,12 @@ static int control(struct af_instance *af, int cmd, void* arg) } } else if (af->data->nch < 5) - af->data->nch = 5; - af->data->format = AF_FORMAT_S16_NE; - af->data->bps = 2; + mp_audio_set_num_channels(af->data, 5); + mp_audio_set_format(af->data, AF_FORMAT_S16_NE); test_output_res = af_test_output(af, (struct mp_audio*)arg); af->mul = 2.0 / af->data->nch; // after testing input set the real output format - af->data->nch = 2; + mp_audio_set_num_channels(af->data, 2); s->print_flag = 1; return test_output_res; case AF_CONTROL_COMMAND_LINE: @@ -574,7 +573,7 @@ static struct mp_audio* play(struct af_instance *af, struct mp_audio *data) /* Set output data */ data->audio = af->data->audio; data->len = data->len / data->nch * 2; - data->nch = 2; + mp_audio_set_num_channels(data, 2); return data; } |