Lines Matching +full:check +full:- +full:api +full:- +full:rate
9 * http://www.apache.org/licenses/LICENSE-2.0
27 * Contains api function definitions for h264 rate control
33 * - ih264e_rc_init
34 * - ih264e_rc_get_picture_details
35 * - ih264e_update_rc_framerates
36 * - ih264e_update_rc_mb_info
37 * - ih264e_rc_get_buffer_status
38 * - ih264e_rc_post_enc
39 * - ih264e_update_rc_bits_info
106 * This function initializes rate control context and variables
109 * This function initializes rate control type, source and target frame rate,
110 * average and peak bitrate, intra-inter frame interval and initial
114 * Handle to rate control api
126 * Maximum frame rate
129 * Source frame rate
132 * Target frame rate
135 * Rate control type
138 * Average bit rate
141 * Peak bit rate
212 /* Initialize the pull_down frame rate */ in ih264e_rc_init()
227 /* Initialize the rate control */ in ih264e_rc_init()
242 … pu1_min_max_qp, /* Min-max QP array[6]:[Imax][Imin][Pmax][Pmin][Bmax][Bmin] */ in ih264e_rc_init()
243 … 0, /* How to calc the I-frame estimated_sad */ in ih264e_rc_init()
257 * Handle to Rate control api
286 * should skip the current input buffer due to frame rate mismatch. It also
290 * Handle to rate control api
293 * Handle to pull down frm rate context
319 /* Check if a src not needs to be skipped */ in ih264e_update_rc_framerates()
327 *Based on difference in source and target frame rate frames are skipped in ih264e_update_rc_framerates()
339 /* Update the frame rate of the frame present with the tgt_frm_rate */ in ih264e_update_rc_framerates()
345 /* Based on the update get the average frame rate */ in ih264e_update_rc_framerates()
359 * @brief Function to update mb info for rate control context
384 WORD32 mb_type = !ps_proc->u4_is_intra; in ih264e_update_rc_mb_info()
387 ps_frame_info->tot_mb_sad[mb_type] += ps_proc->i4_mb_distortion; in ih264e_update_rc_mb_info()
390 ps_frame_info->qp_sum[mb_type] += gau1_h264_to_mpeg2_qmap[ps_proc->u4_mb_qp]; in ih264e_update_rc_mb_info()
393 ps_frame_info->num_mbs[mb_type]++; in ih264e_update_rc_mb_info()
396 if (ps_proc->i4_mb_intra_cost != INT_MAX) in ih264e_update_rc_mb_info()
398 ps_frame_info->intra_mb_cost_sum += ps_proc->i4_mb_intra_cost; in ih264e_update_rc_mb_info()
403 codec_t *ps_codec = ps_proc->ps_codec; in ih264e_update_rc_mb_info()
406 WORD32 i4_mb_id = ps_proc->i4_mb_x + ps_proc->i4_mb_y * ps_proc->i4_wd_mbs; in ih264e_update_rc_mb_info()
408 ps_frame_info->intra_mb_cost_sum += ps_codec->pi4_mb_intra_cost[i4_mb_id]; in ih264e_update_rc_mb_info()
415 * @brief Function to get rate control buffer status
418 * This function is used to get buffer status(underflow/overflow) by rate
422 * Handle to rate control api context
479 * @brief Function to update rate control module after encoding
482 * This function is used to update the rate control module after the current
487 * Handle to rate control api context
493 * Handle to pull down frame rate context
564 …ai4_tot_mb_type_qp[MB_TYPE_INTER] = ps_enc->pu1_h264_mpg2quant[u1_frame_qp] * i4_total_mb_in_fr… in ih264e_rc_post_enc()
604 /* Adjust the GOP if in case we skipped an I-frame */ in ih264e_rc_post_enc()
611 /* Getting the buffer status again,to check if it underflows */ in ih264e_rc_post_enc()
633 /* We can not stuff more than the outbuf size. So have a check here */ in ih264e_rc_post_enc()
662 /* Do an update of rate control after post encode */ in ih264e_rc_post_enc()
684 * to rate control context
688 * to rate control context
706 ps_frame_info->mb_header_bits[MB_TYPE_INTRA] += ps_entropy->u4_header_bits[MB_TYPE_INTRA]; in ih264e_update_rc_bits_info()
708 ps_frame_info->mb_texture_bits[MB_TYPE_INTRA] += ps_entropy->u4_residue_bits[MB_TYPE_INTRA]; in ih264e_update_rc_bits_info()
710 ps_frame_info->mb_header_bits[MB_TYPE_INTER] += ps_entropy->u4_header_bits[MB_TYPE_INTER]; in ih264e_update_rc_bits_info()
712 ps_frame_info->mb_texture_bits[MB_TYPE_INTER] += ps_entropy->u4_residue_bits[MB_TYPE_INTER]; in ih264e_update_rc_bits_info()