I'm using GStreamer to to build an RTSP server streaming live video from the i.MX8MMini.
My pipeline looks like this:
v4l2src ! vpuenc_h264 name=the_encoder quant=51 bitrate=30000 gop-size=30 ! queue ! h264parse ! video/x-h264,stream-format=byte-stream ! rtph264pay name=pay0 pt=96
I need to change the bitrate of the vpuenc_h264 element whilst the pipeline is running or at least without recreating it.
I have tried setting the bitrate property of the element, but whilst this does not produce any error, it seems to be ignored.
g_object_set(the_encoder, "bitrate", profile.v_enc_cfg->Configuration.RateControl.BitrateLimit, NULL);
Is there a way to change the bitrate of the encoder whilst the element is running?
For anyone coming to this topic, the answer is that you can update bitrate on-the-fly, without recreating the encoder. This is not possible with the other properties of the element, but has been implemented for bitrate.
JP