homerHEVC代码阅读(14)——基础结构之ref_pic_set_t、rate_control_t、rate_distortion_t

ref_pic_set_t表示参考图像集;rate_control_t表示速率控制、rate_distortion_t率失真结构。

struct ref_pic_set_t
{
    int inter_ref_pic_set_prediction_flag;
    //..................
    // 该参考图像集中图像的个数
    int num_pics;
    // 包含在图像集中,但是在当前帧之前的帧
    int num_negative_pics;
    // 包含在图像集中,但是在当前帧之后的帧
    int num_positive_pics;
    // 图像集中每个参考帧对应的poc
    int delta_poc_s0[MAX_NUM_REF];
    // 图像集中被当前帧所使用(所参考)的帧
    int used_by_curr_pic_S0_flag[MAX_NUM_REF];
};

struct rate_control_t
{
    // 不知道是什么意思
    double	vbv_size;

    // 平均的图像尺寸
    double	average_pict_size;

    // 平均的每CTU比特数
    double  average_bits_per_ctu;
    double	vbv_fullness;

    // 目标图像的尺寸
    double	target_pict_size;

    // 目标CTU的比特数
    double	target_bits_per_ctu;
    double  acc_rate;
    double  acc_avg;

    // 额外的比特数
    int		extra_bits;
    //	int		acc_qp;
    //	double	consumed_bitrate;
    //	int		consumed_ctus;
};
struct rate_distortion_t
{
    // λ参数
    double    lambda;
    // λ的开平方
    double    sqrt_lambda;
    // SAD
    uint      lambda_SAD;
    // SSE
    uint      lambda_SSE;
    // 帧的λ
    double    frame_lambda;
};


你可能感兴趣的:(h.265,视频编码,HEVC)