diff options
author | wm4 <wm4@nowhere> | 2013-11-18 14:16:08 +0100 |
---|---|---|
committer | wm4 <wm4@nowhere> | 2013-11-18 14:21:01 +0100 |
commit | 5594718b6bda3a230e2e2c3cb06d2837c5a02688 (patch) | |
tree | dca02cab9bde6d50d148a62b20ec99aa8601b847 /audio/filter/af_sub.c | |
parent | 93852b08f37f630b994d126751b4b9740a13219f (diff) | |
download | mpv-5594718b6bda3a230e2e2c3cb06d2837c5a02688.tar.bz2 mpv-5594718b6bda3a230e2e2c3cb06d2837c5a02688.tar.xz |
audio/filter: remove unneeded AF_CONTROLs, convert to enum
The AF control commands used an elaborate and unnecessary organization
for the command constants. Get rid of all that and convert the
definitions to a simple enum. Also remove the control commands that
were not really needed, because they were not used outside of the
filters that implemented them.
Diffstat (limited to 'audio/filter/af_sub.c')
-rw-r--r-- | audio/filter/af_sub.c | 28 |
1 files changed, 7 insertions, 21 deletions
diff --git a/audio/filter/af_sub.c b/audio/filter/af_sub.c index cdb4c04ea3..975219cdcb 100644 --- a/audio/filter/af_sub.c +++ b/audio/filter/af_sub.c @@ -87,36 +87,22 @@ static int control(struct af_instance* af, int cmd, void* arg) int ch=5; float fc=60.0; sscanf(arg,"%f:%i", &fc , &ch); - if(AF_OK != control(af,AF_CONTROL_SUB_CH | AF_CONTROL_SET, &ch)) - return AF_ERROR; - return control(af,AF_CONTROL_SUB_FC | AF_CONTROL_SET, &fc); - } - case AF_CONTROL_SUB_CH | AF_CONTROL_SET: // Requires reinit // Sanity check - if((*(int*)arg >= AF_NCH) || (*(int*)arg < 0)){ + if(ch >= AF_NCH || ch < 0){ mp_msg(MSGT_AFILTER, MSGL_ERR, "[sub] Subwoofer channel number must be between " - " 0 and %i current value is %i\n", AF_NCH-1, *(int*)arg); + " 0 and %i current value is %i\n", AF_NCH-1, ch); return AF_ERROR; } - s->ch = *(int*)arg; - return AF_OK; - case AF_CONTROL_SUB_CH | AF_CONTROL_GET: - *(int*)arg = s->ch; - return AF_OK; - case AF_CONTROL_SUB_FC | AF_CONTROL_SET: // Requires reinit - // Sanity check - if((*(float*)arg > 300) || (*(float*)arg < 20)){ + s->ch = ch; + if(fc > 300 || fc < 20){ mp_msg(MSGT_AFILTER, MSGL_ERR, "[sub] Cutoff frequency must be between 20Hz and" - " 300Hz current value is %0.2f",*(float*)arg); + " 300Hz current value is %0.2f",fc); return AF_ERROR; } - // Set cutoff frequency - s->fc = *(float*)arg; - return AF_OK; - case AF_CONTROL_SUB_FC | AF_CONTROL_GET: - *(float*)arg = s->fc; + s->fc = fc; return AF_OK; } + } return AF_UNKNOWN; } |