video: driver: enable transcode stat for decoder

Subscribe and enable HFI_PROP_TRANSCODING_STAT_INFO property
in order to enable transcoding stat for decoder.
This stat is used further by encoder to improve encoder quality
decision for transcode case.
Ideally we want to avoid CAC-BRS multiple times for same encoded bitstream.

When user does recording (1st encode), So we have CAC enabled bitstream.
Now, if user wants to send it via some app.
So, it will be decode -> (optional GPU) -> (2nd) encode

For 2nd encode -> we would like to not apply same CAC. It needs either tuning.
But we don't have a way from bitstream to know whether it went via CAC.

This feature enables to use the stat info received from decoder to fine tune encoding.

Change-Id: Iaf640878f5554b16aad3314ba4e26f99638c43af
Signed-off-by: Mahesh Kumar Sharma <quic_smahesh@quicinc.com>
This commit is contained in:
Mahesh Kumar Sharma
2022-05-16 18:16:04 -07:00
committed by Gerrit - the friendly Code Review server
父節點 094b4c057c
當前提交 8d0a217984
共有 5 個文件被更改,包括 22 次插入1 次删除

查看文件

@@ -149,6 +149,8 @@ enum v4l2_mpeg_vidc_metadata_bits {
(V4L2_CID_MPEG_VIDC_BASE + 0x25)
#define V4L2_CID_MPEG_VIDC_METADATA_SALIENCY_INFO \
(V4L2_CID_MPEG_VIDC_BASE + 0x26)
#define V4L2_CID_MPEG_VIDC_METADATA_TRANSCODE_STAT_INFO \
(V4L2_CID_MPEG_VIDC_BASE + 0x27)
/* Encoder Super frame control */
#define V4L2_CID_MPEG_VIDC_SUPERFRAME (V4L2_CID_MPEG_VIDC_BASE + 0x28)
@@ -401,6 +403,7 @@ enum v4l2_mpeg_vidc_metadata {
METADATA_MAX_NUM_REORDER_FRAMES = 0x03000127,
METADATA_SALIENCY_INFO = 0x0300018A,
METADATA_FENCE = 0x0300018B,
METADATA_TRANSCODING_STAT_INFO = 0x03000191,
};
enum meta_interlace_info {
META_INTERLACE_INFO_NONE = 0x00000000,