hi_venc_h264_vbr
hi_venc_rc_mode
说明
定义编码通道码率控制器模式。
定义
HI_VENC_RC_MODE_H264_CBR = 1
HI_VENC_RC_MODE_H264_VBR = 2
HI_VENC_RC_MODE_H264_AVBR = 3
HI_VENC_RC_MODE_H264_QVBR = 4
HI_VENC_RC_MODE_H264_CVBR = 5
HI_VENC_RC_MODE_H264_FIXQP = 6
HI_VENC_RC_MODE_H264_QPMAP = 7
HI_VENC_RC_MODE_MJPEG_CBR = 8
HI_VENC_RC_MODE_MJPEG_VBR = 9
HI_VENC_RC_MODE_MJPEG_FIXQP = 10
HI_VENC_RC_MODE_H265_CBR = 11
HI_VENC_RC_MODE_H265_VBR = 12
HI_VENC_RC_MODE_H265_AVBR = 13
HI_VENC_RC_MODE_H265_QVBR = 14
HI_VENC_RC_MODE_H265_CVBR = 15
HI_VENC_RC_MODE_H265_FIXQP = 16
HI_VENC_RC_MODE_H265_QPMAP = 17
HI_VENC_RC_MODE_BUTT = 18
成员
| 成员名称 | 描述 |
|---|---|
| HI_VENC_RC_MODE_H264_CBR | H.264 CBR模式。 |
| HI_VENC_RC_MODE_H264_VBR | H.264 VBR模式。 |
| HI_VENC_RC_MODE_H264_AVBR | H.264 AVBR模式。 |
| HI_VENC_RC_MODE_H264_QVBR | H.264 QVBR模式。 |
| HI_VENC_RC_MODE_H264_CVBR | H.264 CVBR模式。 |
| HI_VENC_RC_MODE_H264_FIXQP | H.264 FIXQP模式。 |
| HI_VENC_RC_MODE_H264_QPMAP | H.264 QPMAP模式。预留参数,暂不支持。 |
| HI_VENC_RC_MODE_MJPEG_CBR | MJPEG CBR模式。预留参数,暂不支持。 |
| HI_VENC_RC_MODE_MJPEG_VBR | MJPEG VBR模式。预留参数,暂不支持。 |
| HI_VENC_RC_MODE_MJPEG_FIXQP | MJPEG FIXQP模式。预留参数,暂不支持。 |
| HI_VENC_RC_MODE_H265_CBR | H.265 CBR模式。 |
| HI_VENC_RC_MODE_H265_VBR | H.265 VBR模式。 |
| HI_VENC_RC_MODE_H265_AVBR | H.265 AVBR模式。 |
| HI_VENC_RC_MODE_H265_QVBR | H.265 QVBR模式。 |
| HI_VENC_RC_MODE_H265_CVBR | H.265 CVBR模式。 |
| HI_VENC_RC_MODE_H265_FIXQP | H.265 FIXQP模式。 |
| HI_VENC_RC_MODE_H265_QPMAP | H.265 QPMAP模式。预留参数,暂不支持。 |
父主题: 视频/图像编码
hi_venc_h264_cbr
说明
定义H.264编码通道CBR属性字典。
定义
hi_venc_h264_cbr = {"gop": gop,
"stats_time": stats_time,
"src_frame_rate": src_frame_rate,
"dst_frame_rate": dst_frame_rate,
"bit_rate": bit_rate }
成员
| 成员名称 | 描述 |
|---|---|
| gop | 整型,Group Of Pictures, 视频序列由若干时间连续的图像构成,在对其进行编码时,先将该视频序列分割成若干个小的图像组,该参数即指一个图像组的帧数。 由于GOP结构仅支持Normalp(第一帧为I帧,其余帧为P帧),此参数也为I帧间隔,默认值65535。 由于编码I帧不需参考之前的帧,之前帧的编码质量影响从此帧开始不再传递,故该值越小,编码质量越好,但不建议小于帧率,因为I帧仅有帧内预测块,大部分场景需要有一定的P帧(有帧间预测块)才能保证编码质量。 取值范围:[1, 65536]。 |
| stats_time | 整型,CBR码率统计时间,以秒为单位,一般场景下,stats_time= gop / dst_frame_rate,编码质量较好。 码率统计时间越长,每帧图像的码率波动对于码率调节的影响越弱,码率的调节会更缓慢,图像质量的波动会更轻微;码率统计时间越短,每帧图像的码率波动对于码率调节的影响越强,图像码率的调节会更灵敏,图像质量的波动会更剧烈。 取值范围:[1, 60]。 |
| src_frame_rate | 整型,输入帧率,以fps为单位,即每秒进入编码器的帧数,默认值为30;码率一定的情况下,该值越小,编码质量越好,但小于25播放时画面会不连贯。 该参数取值范围:[1, 240]。 |
| dst_frame_rate | 整型,编码器输出帧率,以fps为单位,即每秒编码器输出的帧数,默认值为30;码率一定的情况下,该值越小,编码质量越好,但小于25播放时画面会不连贯。 取值范围:[1, src_frame_rate]。 暂不支持分数帧率。 |
| bit_rate | 整型,编码器输出平均码率,以kbps为单位,即编码码流每秒比特数,该值越大,编码质量越好;默认值2000。 该参数取值范围:[2, 614400]。 平均比特率的设置与编码通道宽高以及图像帧率都有关系。典型的平均比特率的设置如表1所示。注意,表1中的平均比特率的设置是在通道编码帧率为满帧率(30fps)时的设置。当用户设置编码输出帧率不为满帧率时,可以对下表中的码率按用户设置帧率与满帧率(30fps)的比例进行换算。 |
表1 典型平均比特率配置
| 图像宽高/码率等级 | 1080p(1920x1080) | 4K(3840x2160) |
|---|---|---|
| 低码率 | <2Mbps | <8Mbps |
| 中码率 | 2Mbps~8Mbps | 8Mbps~30Mbps |
| 高码率 | >8Mbps | >30Mbps |
父主题: 视频/图像编码
hi_venc_h264_vbr
说明
定义H.264编码通道VBR属性字典。
定义
hi_venc_h264_vbr = {"gop": gop,
"stats_time": stats_time,
"src_frame_rate": src_frame_rate,
"dst_frame_rate": dst_frame_rate,
"max_bit_rate": max_bit_rate}
成员
| 成员名称 | 描述 |
|---|---|
| gop | 整型,Group Of Pictures, 视频序列由若干时间连续的图像构成,在对其进行编码时,先将该视频序列分割成若干个小的图像组,该参数即指一个图像组的帧数。 由于GOP结构仅支持Normalp(第一帧为I帧,其余帧为P帧),此参数也为I帧间隔,默认值65535。 由于编码I帧不需参考之前的帧,之前帧的编码质量影响从此帧开始不再传递,故该值越小,编码质量越好,但不建议小于帧率,因为I帧仅有帧内预测块,大部分场景需要有一定的P帧(有帧间预测块)才能保证编码质量。 取值范围:[1, 65536]。 |
| stats_time | 整型,VBR码率统计时间,以秒为单位,一般场景下,stats_time= gop / dst_frame_rate,编码质量较好。 码率统计时间越长,每帧图像的码率波动对于码率调节的影响越弱,码率的调节会更缓慢,图像质量的波动会更轻微;码率统计时间越短,每帧图像的码率波动对于码率调节的影响越强,图像码率的调节会更灵敏,图像质量的波动会更剧烈。 取值范围:[1, 60]。 |
| src_frame_rate | 整型,输入帧率,以fps为单位,即每秒进入编码器的帧数,默认值为30;码率一定的情况下,该值越小,编码质量越好,但小于25播放时画面会不连贯。 该参数取值范围:[1, 240]。 |
| dst_frame_rate | 整型,编码器输出帧率,以fps为单位,即每秒编码器输出的帧数,默认值为30;码率一定的情况下,该值越小,编码质量越好,但小于25播放时画面会不连贯。 取值范围:[1, src_frame_rate]。 暂不支持分数帧率。 |
| max_bit_rate | 整型,编码器输出最大码率,以kbps为单位,即编码码流每秒比特数,该值越大,编码质量越好;默认值2000。 该参数取值范围:[2, 614400]。 |
父主题: 视频/图像编码
hi_venc_h264_avbr
说明
定义 H.264 编码通道AVBR属性字典。
定义
hi_venc_h264_avbr = {"gop": gop,
"stats_time": stats_time,
"src_frame_rate": src_frame_rate,
"dst_frame_rate": dst_frame_rate,
"max_bit_rate": max_bit_rate}
成员
| 成员名称 | 描述 |
|---|---|
| gop | 整型,Group Of Pictures, 视频序列由若干时间连续的图像构成,在对其进行编码时,先将该视频序列分割成若干个小的图像组,该参数即指一个图像组的帧数。 由于GOP结构仅支持Normalp(第一帧为I帧,其余帧为P帧),此参数也为I帧间隔,默认值65535。 由于编码I帧不需参考之前的帧,之前帧的编码质量影响从此帧开始不再传递,故该值越小,编码质量越好,但不建议小于帧率,因为I帧仅有帧内预测块,大部分场景需要有一定的P帧(有帧间预测块)才能保证编码质量。 取值范围:[1, 65536]。 |
| stats_time | 整型,AVBR码率统计时间,以秒为单位,一般场景下,stats_time= gop / dst_frame_rate,编码质量较好。 码率统计时间越长,每帧图像的码率波动对于码率调节的影响越弱,码率的调节会更缓慢,图像质量的波动会更轻微;码率统计时间越短,每帧图像的码率波动对于码率调节的影响越强,图像码率的调节会更灵敏,图像质量的波动会更剧烈。 取值范围:[1, 60]。 |
| src_frame_rate | 整型,输入帧率,以fps为单位,即每秒进入编码器的帧数,默认值为30;码率一定的情况下,该值越小,编码质量越好,但小于25播放时画面会不连贯。 取值范围:[1, 240]。 |
| dst_frame_rate | 整型,编码器输出帧率,以fps为单位,即每秒编码器输出的帧数,默认值为30;码率一定的情况下,该值越小,编码质量越好,但小于25播放时画面会不连贯。 取值范围:[1, src_frame_rate]。 暂不支持分数帧率。 |
| max_bit_rate | 整型,编码器输出最大码率,以kbps为单位,即编码码流每秒比特数,该值越大,编码质量越好;默认值2000。 取值范围:[2, 614400] |
父主题: 视频/图像编码
hi_venc_h264_qvbr
说明
定义H.264协议编码通道QVBR模式属性字典。
定义
hi_venc_h264_qvbr = {"gop": gop,
"stats_time": stats_time,
"src_frame_rate": src_frame_rate,
"dst_frame_rate": dst_frame_rate,
"target_bit_rate": target_bit_rate}
成员
| 成员名称 | 描述 |
|---|---|
| gop | 整型,Group Of Pictures, 视频序列由若干时间连续的图像构成,在对其进行编码时,先将该视频序列分割成若干个小的图像组,该参数即指一个图像组的帧数。 由于GOP结构仅支持Normalp(第一帧为I帧,其余帧为P帧),此参数也为I帧间隔,默认值65535。 由于编码I帧不需参考之前的帧,之前帧的编码质量影响从此帧开始不再传递,故该值越小,编码质量越好,但不建议小于帧率,因为I帧仅有帧内预测块,大部分场景需要有一定的P帧(有帧间预测块)才能保证编码质量。 取值范围:[1, 65536]。 |
| stats_time | 整型,QVBR码率统计时间,以秒为单位,一般场景下,stats_time= gop / dst_frame_rate,编码质量较好。 码率统计时间越长,每帧图像的码率波动对于码率调节的影响越弱,码率的调节会更缓慢,图像质量的波动会更轻微;码率统计时间越短,每帧图像的码率波动对于码率调节的影响越强,图像码率的调节会更灵敏,图像质量的波动会更剧烈。 取值范围:[1, 60]。 |
| src_frame_rate | 整型,输入帧率,以fps为单位,即每秒进入编码器的帧数,默认值为30;码率一定的情况下,该值越小,编码质量越好,但小于25播放时画面会不连贯。 取值范围:[1, 240]。 |
| dst_frame_rate | 整型,编码器输出帧率,以fps为单位,即每秒编码器输出的帧数,默认值为30;码率一定的情况下,该值越小,编码质量越好,但小于25播放时画面会不连贯。 取值范围:[1, src_frame_rate]。 暂不支持分数帧率。 |
| target_bit_rate | 整型,编码器输出最大码率,以kbps为单位,即编码码流每秒比特数,该值越大,编码质量越好;默认值2000。 取值范围:[2, 614400] |
父主题: 视频/图像编码
hi_venc_h264_cvbr
说明
定义H.264协议编码通道CVBR模式属性字典。
定义
hi_venc_h264_cvbr = {"gop": gop,
"stats_time": stats_time,
"src_frame_rate": src_frame_rate,
"dst_frame_rate": dst_frame_rate,
"max_bit_rate": max_bit_rate,
"short_term_stats_time": short_term_stats_time,
"long_term_stats_time": long_term_stats_time,
"long_term_max_bit_rate": long_term_max_bit_rate,
"long_term_min_bit_rate": long_term_min_bit_rate}
成员
| 成员名称 | 描述 |
|---|---|
| gop | 整型,Group Of Pictures, 视频序列由若干时间连续的图像构成,在对其进行编码时,先将该视频序列分割成若干个小的图像组,该参数即指一个图像组的帧数。 由于GOP结构仅支持Normalp(第一帧为I帧,其余帧为P帧),此参数也为I帧间隔,默认值65535。 由于编码I帧不需参考之前的帧,之前帧的编码质量影响从此帧开始不再传递,故该值越小,编码质量越好,但不建议小于帧率,因为I帧仅有帧内预测块,大部分场景需要有一定的P帧(有帧间预测块)才能保证编码质量。 取值范围:[1, 65536]。 |
| stats_time | 整型,CVBR码率统计时间,以秒为单位,一般场景下,stats_time= gop / dst_frame_rate,编码质量较好。 码率统计时间越长,每帧图像的码率波动对于码率调节的影响越弱,码率的调节会更缓慢,图像质量的波动会更轻微;码率统计时间越短,每帧图像的码率波动对于码率调节的影响越强,图像码率的调节会更灵敏,图像质量的波动会更剧烈。 取值范围:[1, 60]。 |
| src_frame_rate | 整型,输入帧率,以fps为单位,即每秒进入编码器的帧数,默认值为30;码率一定的情况下,该值越小,编码质量越好,但小于25播放时画面会不连贯。 取值范围:[1, 240]。 |
| dst_frame_rate | 整型,编码器输出帧率,以fps为单位,即每秒编码器输出的帧数,默认值为30;码率一定的情况下,该值越小,编码质量越好,但小于25播放时画面会不连贯。 取值范围:[1, src_frame_rate]。 暂不支持分数帧率。 |
| max_bit_rate | 整型,编码器输出最大码率,以kbps为单位,即编码码流每秒比特数,该值越大,编码质量越好;默认值2000。 取值范围:[2, 614400] |
| short_term_stats_time | 整型,码率短期统计时间,以秒为单位。 取值范围:[1, 120]。 |
| long_term_stats_time | 整型,码率长期统计时间,默认为分钟。 取值范围:[1, 1440]。 |
| long_term_max_bit_rate | 整型,编码器输出长期最大码率,以kbps为单位。 取值范围:[2, max_bit_rate]。 |
| long_term_min_bit_rate | 整型,编码器输出长期最小码率,以kbps为单位。 取值范围:[0, long_term_max_bit_rate] 。 |
父主题: 视频/图像编码
在线提单