diff options
Diffstat (limited to 'audio/filter/af_extrastereo.c')
-rw-r--r-- | audio/filter/af_extrastereo.c | 17 |
1 files changed, 4 insertions, 13 deletions
diff --git a/audio/filter/af_extrastereo.c b/audio/filter/af_extrastereo.c index 0f7fe36861..ed1fd27898 100644 --- a/audio/filter/af_extrastereo.c +++ b/audio/filter/af_extrastereo.c @@ -47,17 +47,14 @@ static int control(struct af_instance* af, int cmd, void* arg) // Sanity check if(!arg) return AF_ERROR; - af->data->rate = ((struct mp_audio*)arg)->rate; - af->data->nch = 2; - if (((struct mp_audio*)arg)->format == AF_FORMAT_FLOAT_NE) + mp_audio_copy_config(af->data, (struct mp_audio*)arg); + mp_audio_set_num_channels(af->data, 2); + if (af->data->format == AF_FORMAT_FLOAT_NE) { - af->data->format = AF_FORMAT_FLOAT_NE; - af->data->bps = 4; af->play = play_float; }// else { - af->data->format = AF_FORMAT_S16_NE; - af->data->bps = 2; + mp_audio_set_format(af->data, AF_FORMAT_S16_NE); af->play = play_s16; } @@ -69,12 +66,6 @@ static int control(struct af_instance* af, int cmd, void* arg) s->mul = f; return AF_OK; } - case AF_CONTROL_ES_MUL | AF_CONTROL_SET: - s->mul = *(float*)arg; - return AF_OK; - case AF_CONTROL_ES_MUL | AF_CONTROL_GET: - *(float*)arg = s->mul; - return AF_OK; } return AF_UNKNOWN; } |