|
|
|
@ -171,12 +171,10 @@ av_cold struct FFIIRFilterCoeffs *ff_iir_filter_init_coeffs(void *avc, |
|
|
|
|
if (order <= 0 || order > MAXORDER || cutoff_ratio >= 1.0) |
|
|
|
|
return NULL; |
|
|
|
|
|
|
|
|
|
FF_ALLOCZ_OR_GOTO(avc, c, sizeof(FFIIRFilterCoeffs), |
|
|
|
|
init_fail); |
|
|
|
|
FF_ALLOC_OR_GOTO(avc, c->cx, sizeof(c->cx[0]) * ((order >> 1) + 1), |
|
|
|
|
init_fail); |
|
|
|
|
FF_ALLOC_OR_GOTO(avc, c->cy, sizeof(c->cy[0]) * order, |
|
|
|
|
init_fail); |
|
|
|
|
if (!(c = av_mallocz(sizeof(*c))) || |
|
|
|
|
!(c->cx = av_malloc (sizeof(c->cx[0]) * ((order >> 1) + 1))) || |
|
|
|
|
!(c->cy = av_malloc (sizeof(c->cy[0]) * order))) |
|
|
|
|
return NULL; |
|
|
|
|
c->order = order; |
|
|
|
|
|
|
|
|
|
switch (filt_type) { |
|
|
|
@ -190,13 +188,11 @@ av_cold struct FFIIRFilterCoeffs *ff_iir_filter_init_coeffs(void *avc, |
|
|
|
|
break; |
|
|
|
|
default: |
|
|
|
|
av_log(avc, AV_LOG_ERROR, "filter type is not currently implemented\n"); |
|
|
|
|
goto init_fail; |
|
|
|
|
return NULL; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
if (!ret) |
|
|
|
|
return c; |
|
|
|
|
|
|
|
|
|
init_fail: |
|
|
|
|
return NULL; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|