Occasional error when setting video_bitrate and video_peak_bitrate of a running encoder session

Hello all,
I am wondering if there was anyway to determine the nature of the error that is reported occasionally when setting the video_bitrate and video_peak_bitrate of a running stream via GStreamer?

The error is:

Aug 14 16:01:58 dragonboard-410c streamer[3722] Changing quality -- bitrate=1308067 peak_bitrate=1962100
[  316.280747] qcom-venus 1d00000.video-codec: session error: event id:1016 (0), session id:d5629800
[  316.280802] qcom-venus-encoder 1d00000.video-codec:video-encoder: enc: event session error 1016

What exactly does “session error: event id:1016” mean? Is there a document that defines various error event ids to an exact cause?

FYI this error does not appear to be fatal, as the encoder session is not interrupted but I’d like to know what happened since the error does not happen every time the bitrate of the encoder is changed.

Thanks for your help,
Rob Gries

@svarbanov, any idea?

Hi Rob,
Unfortunately there is no public document about these session errors. The only sources you can use are: the mainline driver error defines in hfi_helper.h (search in the beginning of the file for HFI_ERR_SESSION_xxx), the driver source code in the donwstream kernel and logs from firmware. It happens that this session error 0x1016 is not defined and my research led to - unsupported peak / average rate ratio, i.e. peak bitrate should be at least 1.5 x target bitrate. So did you change peak and target bitrate on the same time? If the answer is yes can you check is the ratio is correct.

@svarbanov
The video_peak_bitrate and video_bitrate are being updated simultaneously.

However the video_peak_bitrate is always derived by multiplying the video_bitrate by 1.5 so that it is always exactly 1.5x the video_bitrate.

Are there any notes on unsupported peak/video bitrate configurations that you can share?