const GstAudioInfo * info);
static GstFlowReturn gst_iir_equalizer_transform_ip (GstBaseTransform * btrans,
GstBuffer * buf);
+static void set_passthrough (GstIirEqualizer * equ);
#define ALLOWED_CAPS \
"audio/x-raw," \
BANDS_LOCK (equ);
equ->need_new_coefficients = TRUE;
band->gain = gain;
+ set_passthrough (equ);
BANDS_UNLOCK (equ);
GST_DEBUG_OBJECT (band, "changed gain = %lf ", band->gain);
}
gst_iir_equalizer_init (GstIirEqualizer * eq)
{
g_mutex_init (&eq->bands_lock);
- eq->need_new_coefficients = TRUE;
+ /* Band gains are 0 by default, passthrough until they are changed */
+ gst_base_transform_set_passthrough (GST_BASE_TRANSFORM (eq), TRUE);
}
static void
BANDS_LOCK (equ);
if (need_new_coefficients) {
update_coefficients (equ);
- set_passthrough (equ);
}
BANDS_UNLOCK (equ);