comparison iirfilter.c @ 9947:1a345787ba68 libavcodec

Mark iir filter init and free functions av_cold.
author alexc
date Fri, 10 Jul 2009 20:55:15 +0000
parents 0de8fdd06303
children 0448219eb490
comparison
equal deleted inserted replaced
9946:0de8fdd06303 9947:1a345787ba68
45 }FFIIRFilterState; 45 }FFIIRFilterState;
46 46
47 /// maximum supported filter order 47 /// maximum supported filter order
48 #define MAXORDER 30 48 #define MAXORDER 30
49 49
50 struct FFIIRFilterCoeffs* ff_iir_filter_init_coeffs(enum IIRFilterType filt_type, 50 av_cold struct FFIIRFilterCoeffs* ff_iir_filter_init_coeffs(enum IIRFilterType filt_type,
51 enum IIRFilterMode filt_mode, 51 enum IIRFilterMode filt_mode,
52 int order, float cutoff_ratio, 52 int order, float cutoff_ratio,
53 float stopband, float ripple) 53 float stopband, float ripple)
54 { 54 {
55 int i, j; 55 int i, j;
110 c->gain /= 1 << order; 110 c->gain /= 1 << order;
111 111
112 return c; 112 return c;
113 } 113 }
114 114
115 struct FFIIRFilterState* ff_iir_filter_init_state(int order) 115 av_cold struct FFIIRFilterState* ff_iir_filter_init_state(int order)
116 { 116 {
117 FFIIRFilterState* s = av_mallocz(sizeof(FFIIRFilterState) + sizeof(s->x[0]) * (order - 1)); 117 FFIIRFilterState* s = av_mallocz(sizeof(FFIIRFilterState) + sizeof(s->x[0]) * (order - 1));
118 return s; 118 return s;
119 } 119 }
120 120
161 dst += sstep; 161 dst += sstep;
162 } 162 }
163 } 163 }
164 } 164 }
165 165
166 void ff_iir_filter_free_state(struct FFIIRFilterState *state) 166 av_cold void ff_iir_filter_free_state(struct FFIIRFilterState *state)
167 { 167 {
168 av_free(state); 168 av_free(state);
169 } 169 }
170 170
171 void ff_iir_filter_free_coeffs(struct FFIIRFilterCoeffs *coeffs) 171 av_cold void ff_iir_filter_free_coeffs(struct FFIIRFilterCoeffs *coeffs)
172 { 172 {
173 if(coeffs){ 173 if(coeffs){
174 av_free(coeffs->cx); 174 av_free(coeffs->cx);
175 av_free(coeffs->cy); 175 av_free(coeffs->cy);
176 } 176 }