equalizer plugin doesn't seem to be controllable
Trying to attach a control source to the equalizer plugin - the source code suggests the bands values are GST_PARAM_CONTROLLABLE. I'm using python, which hopefully isn't the issue! My code works with the volume plugin:
gst_adjust = Gst.ElementFactory.make("volume", "adjust")
gst_pipeline.add(gst_adjust)
gst_cs0 = GstController.InterpolationControlSource()
gst_cs0.set_property('mode', GstController.InterpolationMode.LINEAR)
gst_adjust.add_control_binding(GstController.DirectControlBinding.new(gst_adjust,"volume",gst_cs0))
print(gst_cs0.set(0.1*Gst.SECOND,0.2))
But not when adjusted to the 3 or 10 band equalizer (I also get a True output, but no audible effect):
gst_adjust = Gst.ElementFactory.make("equalizer-3bands", "adjust")
gst_pipeline.add(gst_adjust)
gst_cs0 = GstController.InterpolationControlSource()
gst_cs0.set_property('mode', GstController.InterpolationMode.LINEAR)
gst_adjust.add_control_binding(GstController.DirectControlBinding.new(gst_adjust, "band0", gst_cs0))
print(gst_cs0.set(0.1*Gst.SECOND,0.99))
Presetting the property prior to running the pipline works as expected, but obviously not dynamic:
print(gst_cs0.set(0.1*Gst.SECOND,12))
I'm not an expert so could be missing something - but it seems that the equalizer should respond to controller changes?