mirror of
https://github.com/nyanmisaka/mpp.git
synced 2025-10-04 00:36:23 +08:00
[mpp_meta]: Add meta key average qp for encoder
Change-Id: Iab3fde1a2a3e8e6f6150dfbeb6f5803d6e3cc240 Signed-off-by: Herman Chen <herman.chen@rock-chips.com>
This commit is contained in:
@@ -76,6 +76,7 @@ typedef enum MppMetaKey_e {
|
||||
/* mpp_frame / mpp_packet meta data info key */
|
||||
KEY_TEMPORAL_ID = FOURCC_META('t', 'l', 'i', 'd'),
|
||||
KEY_LONG_REF_IDX = FOURCC_META('l', 't', 'i', 'd'),
|
||||
KEY_ENC_AVERAGE_QP = FOURCC_META('a', 'v', 'g', 'q'),
|
||||
KEY_ROI_DATA = FOURCC_META('r', 'o', 'i', ' '),
|
||||
KEY_OSD_DATA = FOURCC_META('o', 's', 'd', ' '),
|
||||
KEY_OSD_DATA2 = FOURCC_META('o', 's', 'd', '2'),
|
||||
|
@@ -42,6 +42,7 @@ static MppMetaDef meta_defs[] = {
|
||||
/* extra information for tsvc */
|
||||
{ KEY_TEMPORAL_ID, TYPE_S32, },
|
||||
{ KEY_LONG_REF_IDX, TYPE_S32, },
|
||||
{ KEY_ENC_AVERAGE_QP, TYPE_S32, },
|
||||
|
||||
{ KEY_ROI_DATA, TYPE_PTR, },
|
||||
{ KEY_OSD_DATA, TYPE_PTR, },
|
||||
|
@@ -1842,6 +1842,8 @@ void *mpp_enc_thread(void *data)
|
||||
mpp_meta_set_buffer(meta, KEY_MOTION_INFO, hal_task->mv_info);
|
||||
|
||||
mpp_meta_set_s32(meta, KEY_OUTPUT_INTRA, frm->is_intra);
|
||||
if (rc_task->info.quality_real)
|
||||
mpp_meta_set_s32(meta, KEY_ENC_AVERAGE_QP, rc_task->info.quality_real);
|
||||
}
|
||||
|
||||
/*
|
||||
|
@@ -714,6 +714,7 @@ MPP_RET test_mpp_run(MpiEncTestData *p)
|
||||
meta = mpp_packet_get_meta(packet);
|
||||
RK_S32 temporal_id = 0;
|
||||
RK_S32 lt_idx = -1;
|
||||
RK_S32 avg_qp = -1;
|
||||
|
||||
if (MPP_OK == mpp_meta_get_s32(meta, KEY_TEMPORAL_ID, &temporal_id))
|
||||
log_len += snprintf(log_buf + log_len, log_size - log_len,
|
||||
@@ -722,6 +723,10 @@ MPP_RET test_mpp_run(MpiEncTestData *p)
|
||||
if (MPP_OK == mpp_meta_get_s32(meta, KEY_LONG_REF_IDX, <_idx))
|
||||
log_len += snprintf(log_buf + log_len, log_size - log_len,
|
||||
" lt %d", lt_idx);
|
||||
|
||||
if (MPP_OK == mpp_meta_get_s32(meta, KEY_ENC_AVERAGE_QP, &avg_qp))
|
||||
log_len += snprintf(log_buf + log_len, log_size - log_len,
|
||||
" qp %d", avg_qp);
|
||||
}
|
||||
|
||||
mpp_log("%p %s\n", ctx, log_buf);
|
||||
|
Reference in New Issue
Block a user