summaryrefslogtreecommitdiffstats
path: root/audio/filter/af_extrastereo.c
diff options
context:
space:
mode:
Diffstat (limited to 'audio/filter/af_extrastereo.c')
-rw-r--r--audio/filter/af_extrastereo.c17
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;
}