跳到主要内容

hi_venc_vui_video_signal

hi_venc_vui_h264_time_info

说明

定义H.264协议编码通道Vui中时钟计数信息的结构体。

定义

typedef struct {
hi_u8 timing_info_present_flag;
hi_u8 fixed_frame_rate_flag;
hi_u32 num_units_in_tick;
hi_u32 time_scale;
} hi_venc_vui_h264_time_info;

成员

成员名称描述
timing_info_present_flagVui字段中时钟计数信息是否生效的标志位,系统默认值为0。取值范围:0或1。表格中其它参数只有在该标志为1时才生效。
fixed_frame_rate_flag具体含义请参见H.264协议,系统默认值为1。取值范围:0或1。
num_units_in_tick时钟计数器加1所经过的时间单元数,系统默认值为1。取值范围:大于0。
time_scale一秒钟时长所经过的时间单元数,系统默认值为60。取值范围:大于0。

注意事项

时钟计数用于标记视频帧信号,在本H.264编码器中,视频显示帧率可由根据以下公式计算:display_rate = time_scale / num_units_in_tick / 2

由于显示帧率只与time_scale和num_units_in_tick的比值有关,建议用户设置时保持num_units_in_tick值为1,通过time_scale参数调整显示帧率,此时显示帧率 = time_scale / 2。

显示帧率的最终决定权在于播放器,播放器也可以选择不参考TimeInfo信息。

父主题: VENC视频/JPEGE图像编码

hi_venc_vui_h265_time_info

说明

定义H.265协议编码通道Vui中时钟计数信息的结构体。

定义

typedef struct {
hi_u32 timing_info_present_flag;
hi_u32 num_units_in_tick;
hi_u32 time_scale;
hi_u32 num_ticks_poc_diff_one_minus1;
} hi_venc_vui_h265_time_info;

成员

成员名称描述
timing_info_present_flagVui字段中时钟计数信息是否生效的标志位,系统默认值为0。取值范围:0或1。表格中其它参数只有在该标志为1时才生效。
num_units_in_tick时钟计数器加1所经过的时间单元数,系统默认值为1。取值范围:大于0。
time_scale一秒钟时长所经过的时间单元数,系统默认值为60。取值范围:大于0。
num_ticks_poc_diff_one_minus1具体含义请参见H.265协议,系统默认值为1。取值范围:[0, 2^32-2].

注意事项

时钟计数用于标记视频帧信号,在本H.265编码器中,视频显示帧率可由以下公式计算:display_rate = time_scale / num_units_in_tick

由于显示帧率只与time_scale和num_units_in_tick的比值有关,建议用户设置时保持num_units_in_tick值为1,通过time_scale参数调整显示帧率,此时显示帧率 = time_scale。

显示帧率的最终决定权在于播放器,播放器也可以选择不参考TimeInfo信息。

父主题: VENC视频/JPEGE图像编码

hi_venc_vui_video_signal

说明

定义H.264/H.265协议编码通道Vui中视频信号信息的结构体。

定义

typedef struct {
hi_u8 video_signal_type_present_flag;
hi_u8 video_format;
hi_u8 video_full_range_flag;
hi_u8 colour_description_present_flag;
hi_u8 colour_primaries;
hi_u8 transfer_characteristics;
hi_u8 matrix_coefficients;
} hi_venc_vui_video_signal;

成员

成员名称描述
video_signal_type_present_flagVui字段中视频信号信息是否生效的标志位,系统默认值为1。取值范围:0或1。表格中其它参数只有在该标志为1时才生效。
video_format具体含义请参见H.264/H.265协议,系统默认值为5。取值范围:H.264:[0, 7],H.265:[0, 5]。
video_full_range_flag具体含义请参见H.264/H.265协议,系统默认值为0。取值范围:0或1。置0表示像素值域受限,亮度取值范围是16~235,色度的取值范围是16~240。
colour_description_present_flag具体含义请参见H.264/H.265协议,系统默认值为1,用户无需配置,系统内部根据当前图像实际信息填写。
colour_primaries具体含义请参见H.264/H.265协议,系统默认值为1,用户无需配置,系统内部根据当前图像实际信息填写。
transfer_characteristics具体含义请参见H.264/H.265协议,系统默认值为1,用户无需配置,系统内部根据当前图像实际信息填写。
matrix_coefficients具体含义请参见H.264/H.265协议,系统默认值为1,用户无需配置,系统内部根据当前图像实际信息填写。

父主题: VENC视频/JPEGE图像编码

hi_venc_vui_bitstream_restric

说明

定义H.264/H.265协议编码通道Vui中Bitstream_Restriction信息的结构体。预留结构体,暂不支持用户配置。

定义

typedef struct {
hi_u8 bitstream_restriction_flag;
} hi_venc_vui_bitstream_restric;

成员

成员名称描述
bitstream_restriction_flag具体含义请参见H.265协议,系统默认值为0。

父主题: VENC视频/JPEGE图像编码

hi_venc_cu_prediction

说明

定义CU模式选择的倾向性配置结构体。

定义

typedef struct {
hi_op_mode pred_mode;
hi_u32 intra32_cost;
hi_u32 intra16_cost;
hi_u32 intra8_cost;
hi_u32 intra4_cost;
hi_u32 inter64_cost;
hi_u32 inter32_cost;
hi_u32 inter16_cost;
hi_u32 inter8_cost;
} hi_venc_cu_prediction;

成员

成员名称描述
pred_mode倾向性选择模式,支持自动模式、手动模式两种。
intra32_costIntra32倾向性调节,对应帧内预测32*32像素块尺寸模式,该值增大表示选择该模式的倾向性越小。 取值范围:[0, 15]。 默认值:8。 H.264该值无效。
intra16_costIntra16倾向性调节,对应帧内预测16*16像素块尺寸模式,该值增大表示选择该模式的倾向性越小。 取值范围:[0, 15]。 默认值:8。
intra8_costIntra8倾向性调节,对应帧内预测8*8像素块尺寸模式,该值增大表示选择该模式的倾向性越小。 取值范围:[0, 15]。 默认值:8。
intra4_costIntra4倾向性调节,对应帧内预测4*4像素块尺寸模式,该值增大表示选择该模式的倾向性越小。 取值范围:[0, 15]。 默认值:8。
inter64_costInter64倾向性调节,对应帧间预测64*64像素块尺寸模式,该值增大表示选择该模式的倾向性越小。 取值范围:[0, 15]。 默认值:8。 H.264该值无效。
inter32_costInter32倾向性调节,对应帧间预测32*32像素块尺寸模式,该值增大表示选择该模式的倾向性越小。 取值范围:[0, 15]。 默认值:8。 H.264该值无效。
inter16_costInter16倾向性调节,对应帧间预测16*16像素块尺寸模式,该值增大表示选择该模式的倾向性越小。 取值范围:[0, 15]。 默认值:8。
inter8_costInter8倾向性调节,对应帧间预测8*8像素块尺寸模式,该值增大表示选择该模式的倾向性越小。 取值范围:[0, 15]。 默认值:8。

父主题: VENC视频/JPEGE图像编码

在线提单