---
title: hi_venc_h264_vbr
description: "定义H.264编码通道VBR属性结构。"
url: https://www.hiascend.com/document/detail/zh/Atlas200IDKA2DeveloperKit/latest/Application%20Development%20Guide/aadgc/aclcppdevg_03_1457.html
sourcePath: /source/zh/Atlas200IDKA2DeveloperKit/23.0.RC2/Application Development Guide/aadgc/aclcppdevg_03_1457.html
indexId: 7053b17d127e3947877435a5fe55c02d206ea32b6c750da5d92ac5a2d1e3c2d6105
---
# hi_venc_h264_vbr

#### 说明

定义H.264编码通道VBR属性结构。


#### 定义

```
typedef struct {
hi_u32
gop;
hi_u32
stats_time;
hi_u32
src_frame_rate;
hi_u32
dst_frame_rate;
hi_u32
max_bit_rate;
}hi_venc_h264_vbr;
```


#### 成员

| 成员名称 | 描述 |
| --- | --- |
| 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]。 |
