Home
last modified time | relevance | path

Searched refs:rc (Results 1 – 25 of 41) sorted by relevance

12

/rockchip-linux_mpp/mpp/base/
H A Dmpp_enc_cfg.c49 STRUCT_START(rc) \
50 …ENTRY(prefix, s32, rk_s32, mode, FLAG_BASE(0), rc, rc…
51 …ENTRY(prefix, s32, rk_s32, quality, FLAG_INCR, rc, qu…
52 …ENTRY(prefix, s32, rk_s32, bps_target, FLAG_INCR, rc, bp…
53 …ENTRY(prefix, s32, rk_s32, bps_max, FLAG_PREV, rc, bp…
54 …ENTRY(prefix, s32, rk_s32, bps_min, FLAG_PREV, rc, bp…
55 …ENTRY(prefix, s32, rk_s32, fps_in_flex, FLAG_INCR, rc, fp…
56 …ENTRY(prefix, s32, rk_s32, fps_in_num, FLAG_PREV, rc, fp…
57 …ENTRY(prefix, s32, rk_s32, fps_in_denorm, FLAG_PREV, rc, fp…
58 …ALIAS(prefix, s32, rk_s32, fps_in_denom, FLAG_PREV, rc, fp…
[all …]
/rockchip-linux_mpp/doc/
H A DRockchip_Developer_Guide_MPP_CN.md616 | rc:mode | S32 | MppEncRcMode | 表示码率控制模式,目前支持CBR、VBR和AVBR三…
617 | rc:bps_target | S32 | RK_S32 | 表示CBR模式下的目标码率。 …
618 | rc:bps_max | S32 | RK_S32 | 表示VBR/AVBR模式下的最高码率。 …
619 | rc:bps_min | S32 | RK_S32 | 表示VBR/AVBR模式下的最低码率。 …
620 | rc:fps_in_flex | S32 | RK_S32 | 表示输入帧率是否可变的标志位,默认为0。 为0表示输…
621 | rc:fps_in_num | S32 | RK_S32 | 表示输入帧率分数值的分子部分,默认值为30。 …
622 | rc:fps_in_denom | S32 | RK_S32 | 表示输入帧率分数值的分母部分,默认值为1。 …
623 | rc:fps_out_flex | S32 | RK_S32 | 表示输出帧率是否可变的标志位,默认为0。 为0表示输…
624 | rc:fps_out_num | S32 | RK_S32 | 表示输出帧率分数值的分子部分,默认值为30。 …
625 | rc:fps_out_denom | S32 | RK_S32 | 表示输出帧率分数值的分母部分,默认值为1。 …
[all …]
/rockchip-linux_mpp/mpp/codec/enc/vp8/
H A Dvp8e_api_v2.c45 Vp8eRc *rc; member
55 MppEncRcCfg *rc_cfg = &ctrl_cfg->cfg->rc; in vp8e_init()
108 p->rc = mpp_calloc(Vp8eRc, 1); in vp8e_init()
109 memset(p->rc, 0, sizeof(Vp8eRc)); in vp8e_init()
110 p->rc->frame_coded = 1; in vp8e_init()
111 if (NULL == p->rc) { in vp8e_init()
133 if (p->rc) in vp8e_deinit()
134 mpp_free(p->rc); in vp8e_deinit()
185 syntax[syn_num].data = p->rc; in vp8e_proc_hal()
/rockchip-linux_mpp/mpp/codec/
H A Dmpp_enc_impl.c268 if (cfg->rc.max_reenc_times) { in check_low_delay_output()
270 cfg->rc.max_reenc_times = 0; in check_low_delay_output()
273 if (cfg->rc.drop_mode) { in check_low_delay_output()
275 cfg->rc.drop_mode = MPP_ENC_RC_DROP_FRM_DISABLED; in check_low_delay_output()
278 if (cfg->rc.super_mode) { in check_low_delay_output()
280 cfg->rc.super_mode = MPP_ENC_RC_SUPER_FRM_NONE; in check_low_delay_output()
677 MppEncRcCfg *cfg = &enc->cfg->rc; in proc_rc_cfg()
678 MppEncRcCfg *set = &enc->set->rc; in proc_rc_cfg()
1021 if (enc->cfg->rc.refresh_en) { in proc_h264_cfg()
1024 if (!enc->cfg->rc.refresh_mode) in proc_h264_cfg()
[all …]
H A DCMakeLists.txt24 add_subdirectory(rc)
/rockchip-linux_mpp/mpp/hal/common/
H A Dhal_info.c251 MppEncRcCfg *rc = &cfg->rc; in hal_info_from_enc_cfg() local
264 rc->fps_in_num / rc->fps_in_denom); in hal_info_from_enc_cfg()
266 rc->fps_out_num / rc->fps_out_denom); in hal_info_from_enc_cfg()
268 val = hal_info_to_string(ctx, ENC_INFO_RC_MODE, &rc->rc_mode); in hal_info_from_enc_cfg()
271 hal_info_set(ctx, ENC_INFO_BITRATE, CODEC_INFO_FLAG_NUMBER, rc->bps_target); in hal_info_from_enc_cfg()
272 hal_info_set(ctx, ENC_INFO_GOP_SIZE, CODEC_INFO_FLAG_NUMBER, rc->gop); in hal_info_from_enc_cfg()
/rockchip-linux_mpp/mpp/hal/vpu/h264e/
H A Dhal_h264e_vepu_v2.c515 MppEncRcCfg *rc = &cfg->rc; in h264e_vepu_mbrc_setup() local
527 p->bits_per_pic = axb_div_c(rc->bps_target, rc->fps_out_denom, in h264e_vepu_mbrc_setup()
528 rc->fps_out_num); in h264e_vepu_mbrc_setup()
533 mpp_assert(rc->fps_out_num / rc->fps_out_denom <= rc->fps_in_num / rc->fps_in_denom); in h264e_vepu_mbrc_setup()
535 p->fps_in_num = rc->fps_in_num; in h264e_vepu_mbrc_setup()
536 p->fps_in_denom = rc->fps_in_denom; in h264e_vepu_mbrc_setup()
537 p->fps_out_num = rc->fps_out_num; in h264e_vepu_mbrc_setup()
538 p->fps_out_denom = rc->fps_out_denom; in h264e_vepu_mbrc_setup()
540 p->fps_step = rc->fps_in_denom * rc->fps_out_num; in h264e_vepu_mbrc_setup()
541 p->fps_threshold = rc->fps_in_num * rc->fps_out_denom; in h264e_vepu_mbrc_setup()
[all …]
H A Dhal_h264e_vepu2_v2.c291 RK_U32 refresh_num = ctx->cfg->rc.refresh_num; in setup_intra_refresh()
299 RK_U32 refresh_idx = frm->seq_idx % cfg->rc.gop; in setup_intra_refresh()
303 if (!ctx->cfg->rc.refresh_en || !frm->is_i_refresh) { in setup_intra_refresh()
307 if (ctx->cfg->rc.refresh_mode == MPP_ENC_RC_INTRA_REFRESH_ROW) { in setup_intra_refresh()
314 } else if (ctx->cfg->rc.refresh_mode == MPP_ENC_RC_INTRA_REFRESH_COL) { in setup_intra_refresh()
/rockchip-linux_mpp/mpp/codec/enc/jpeg/
H A Djpege_api_v2.c58 MppEncRcCfg *rc = &p->cfg->rc; in jpege_init_v2() local
61 rc->fps_in_flex = 0; in jpege_init_v2()
62 rc->fps_in_num = 30; in jpege_init_v2()
63 rc->fps_in_denom = 1; in jpege_init_v2()
64 rc->fps_out_flex = 0; in jpege_init_v2()
65 rc->fps_out_num = 30; in jpege_init_v2()
66 rc->fps_out_denom = 1; in jpege_init_v2()
67 rc->rc_mode = MPP_ENC_RC_MODE_FIXQP; in jpege_init_v2()
/rockchip-linux_mpp/mpp/base/test/
H A Dmpp_enc_cfg_test.c52 impl->rc.rc_mode, impl->rc.bps_target); in main()
63 impl->rc.rc_mode, impl->rc.bps_target); in main()
/rockchip-linux_mpp/mpp/codec/rc/test/
H A DCMakeLists.txt13 option(${test_tag} "Build rc ${module} unit test" ${BUILD_TEST})
22 # mpp rc unit test
25 # mpp rc api test
/rockchip-linux_mpp/mpp/codec/enc/h264/
H A Dh264e_sps.c65 MppEncRcCfg *rc = &cfg->rc; in h264e_sps_update() local
70 RK_S32 gop = rc->gop; in h264e_sps_update()
220 vui->time_scale = rc->fps_out_num * 2; in h264e_sps_update()
221 vui->num_units_in_tick = rc->fps_out_denom; in h264e_sps_update()
222 vui->fixed_frame_rate = !rc->fps_out_flex; in h264e_sps_update()
H A Dh264e_api_v2.c94 MppEncRcCfg *rc_cfg = &cfg->rc; in init_h264e_cfg_set()
278 MppEncRcCfg *rc = &cfg->rc; in h264e_check_cfg() local
281 if (rc->drop_mode == MPP_ENC_RC_DROP_FRM_PSKIP && in h264e_check_cfg()
282 rc->drop_gap == 0 && in h264e_check_cfg()
286 rc->drop_gap = 1; in h264e_check_cfg()
/rockchip-linux_mpp/mpp/codec/rc/
H A DCMakeLists.txt16 rc.c
/rockchip-linux_mpp/mpp/hal/vpu/vp8e/
H A Dhal_vp8e_base.c40 pps->qp_sgm[i] = ctx->rc->qp_hdr; in set_frame_params()
133 RK_S32 qp = ctx->rc->qp_hdr; in set_segmentation()
374 vp8e_put_lit(bitbuf, ctx->rc->qp_hdr, 7); in set_frame_header()
501 qp = ctx->rc->qp_hdr; in set_new_frame()
800 MppEncRcCfg *rc = &ctx->cfg->rc; in write_ivf_header() local
819 data[16] = rc->fps_out_num & 0xff; in write_ivf_header()
820 data[17] = (rc->fps_out_num >> 8) & 0xff; in write_ivf_header()
821 data[18] = (rc->fps_out_num >> 16) & 0xff; in write_ivf_header()
822 data[19] = (rc->fps_out_num >> 24) & 0xff; in write_ivf_header()
824 data[20] = rc->fps_out_denom & 0xff; in write_ivf_header()
[all …]
/rockchip-linux_mpp/mpp/codec/enc/h265/
H A Dh265e_ps.c185 MppEncRcCfg *rc = &ctx->cfg->rc; in h265e_set_sps() local
189 RK_S32 i_timebase_num = rc->fps_out_denom; in h265e_set_sps()
190 RK_S32 i_timebase_den = rc->fps_out_num; in h265e_set_sps()
330 if (rc->drop_mode == MPP_ENC_RC_DROP_FRM_PSKIP) { in h265e_set_sps()
/rockchip-linux_mpp/mpp/hal/common/jpeg/
H A Dhal_jpege_hdr.h50 MPP_RET write_jpeg_header(JpegeBits *bits, JpegeSyntax *syntax, HalJpegeRc *rc);
/rockchip-linux_mpp/mpp/inc/
H A Dmpp_enc_cfg.h31 MppEncRcCfg rc; member
/rockchip-linux_mpp/mpp/hal/rkenc/h265e/
H A Dhal_h265e_vepu541.c833 if (!ctx->cfg->rc.refresh_en) { in setup_vepu541_intra_refresh()
874 if (ctx->cfg->rc.refresh_mode == MPP_ENC_RC_INTRA_REFRESH_ROW) { in setup_vepu541_intra_refresh()
878 region->y = refresh_idx * 64 * ctx->cfg->rc.refresh_num - 128; in setup_vepu541_intra_refresh()
879 region->h = 64 * ctx->cfg->rc.refresh_num + 128; in setup_vepu541_intra_refresh()
881 region->y = refresh_idx * 64 * ctx->cfg->rc.refresh_num; in setup_vepu541_intra_refresh()
882 region->h = 64 * ctx->cfg->rc.refresh_num; in setup_vepu541_intra_refresh()
885 } else if (ctx->cfg->rc.refresh_mode == MPP_ENC_RC_INTRA_REFRESH_COL) { in setup_vepu541_intra_refresh()
889 region->x = refresh_idx * 64 * ctx->cfg->rc.refresh_num - 128; in setup_vepu541_intra_refresh()
890 region->w = 64 * ctx->cfg->rc.refresh_num + 128; in setup_vepu541_intra_refresh()
892 region->x = refresh_idx * 64 * ctx->cfg->rc.refresh_num; in setup_vepu541_intra_refresh()
[all …]
/rockchip-linux_mpp/mpp/hal/rkenc/h264e/
H A Dhal_h264e_vepu510.c556 ctx->smart_en = (ctx->cfg->rc.rc_mode == MPP_ENC_RC_MODE_SMTRC); in hal_h264e_vepu510_get_task()
558 ctx->sp_enc_en = ctx->cfg->rc.rc_mode == MPP_ENC_RC_MODE_SE; in hal_h264e_vepu510_get_task()
1162 MppEncRcCfg *rc = &cfg->rc; in setup_vepu510_rc_base() local
1203 if (rc->rc_mode == MPP_ENC_RC_MODE_FIXQP) { in setup_vepu510_rc_base()
1228 if (rc->rc_mode == MPP_ENC_RC_MODE_SMTRC || rc->rc_mode == MPP_ENC_RC_MODE_SE) { in setup_vepu510_rc_base()
1240 fqp_min = rc->fqp_min_i; in setup_vepu510_rc_base()
1241 fqp_max = rc->fqp_max_i; in setup_vepu510_rc_base()
1243 fqp_min = rc->fqp_min_p; in setup_vepu510_rc_base()
1244 fqp_max = rc->fqp_max_p; in setup_vepu510_rc_base()
1419 RK_U32 refresh_num = ctx->cfg->rc.refresh_num; in setup_vepu510_intra_refresh()
[all …]
H A Dhal_h264e_vepu511.c555 ctx->smart_en = (ctx->cfg->rc.rc_mode == MPP_ENC_RC_MODE_SMTRC); in hal_h264e_vepu511_get_task()
1157 MppEncRcCfg *rc = &cfg->rc; in setup_vepu511_rc_base() local
1195 if (rc->rc_mode == MPP_ENC_RC_MODE_FIXQP) { in setup_vepu511_rc_base()
1220 if (rc->rc_mode == MPP_ENC_RC_MODE_SMTRC) { in setup_vepu511_rc_base()
1232 fqp_min = rc->fqp_min_i; in setup_vepu511_rc_base()
1233 fqp_max = rc->fqp_max_i; in setup_vepu511_rc_base()
1235 fqp_min = rc->fqp_min_p; in setup_vepu511_rc_base()
1236 fqp_max = rc->fqp_max_p; in setup_vepu511_rc_base()
1419 RK_U32 refresh_num = ctx->cfg->rc.refresh_num; in setup_vepu511_intra_refresh()
1427 if (!ctx->cfg->rc.refresh_en) { in setup_vepu511_intra_refresh()
[all …]
H A Dhal_h264e_vepu580.c1250 MppEncRcCfg *rc = &cfg->rc; in setup_vepu580_rc_base() local
1288 if (rc->rc_mode == MPP_ENC_RC_MODE_FIXQP) { in setup_vepu580_rc_base()
1345 if (cfg->rc.rc_mode == MPP_ENC_RC_MODE_SMTRC) { in setup_vepu580_rc_base()
1491 RK_U32 refresh_num = ctx->cfg->rc.refresh_num; in setup_vepu580_intra_refresh()
1499 if (!ctx->cfg->rc.refresh_en) { in setup_vepu580_intra_refresh()
1532 if (ctx->cfg->rc.refresh_mode == MPP_ENC_RC_INTRA_REFRESH_ROW) { in setup_vepu580_intra_refresh()
1543 } else if (ctx->cfg->rc.refresh_mode == MPP_ENC_RC_INTRA_REFRESH_COL) { in setup_vepu580_intra_refresh()
1557 region->quality = -ctx->cfg->rc.qp_delta_ip; in setup_vepu580_intra_refresh()
2161 setup_vepu580_intra_refresh(regs, ctx, frm_status->seq_idx % cfg->rc.gop); in hal_h264e_vepu580_gen_regs()
2164 cfg->rc.rc_mode == MPP_ENC_RC_MODE_SMTRC && in hal_h264e_vepu580_gen_regs()
/rockchip-linux_mpp/mpp/hal/inc/
H A Dhal_enc_task.h152 EncRcTask rc; member
/rockchip-linux_mpp/test/
H A DCMakeLists.txt42 # new mpi rc unit test
/rockchip-linux_mpp/
H A DCHANGELOG.md54 - [rc]: Refactor C++ rc/rc_base to C
111 - Revert "fix[mpp_enc_impl]: fix rc cfg for jpeg enc"
122 - [mpp_enc]: Add avc rc parameter set
317 - [mpp_enc_impl]: fix rc cfg for jpeg enc
378 - [rc_smt]: Add rc container for smart mode
381 - [vepu580]: Add qpmap and rc container interface
573 - [rc]: Add i quality delta cfg on fixqp mode

12