---
title: encodeParams
description: "编码参数。"
url: https://www.hikunpeng.com/document/detail/zh/kunpengboostkithistory/250RC1/armnative/kunpengcpsvideo_16_0032.html
sourcePath: /source/zh/kunpengboostkithistory/250RC1/armnative/kunpengcpsvideo_16_0032.html
indexId: cc16d0cc3cc8cf10ae87e3e9d2e3fcb49b943abb5ee3d28e0ed75731709039f679
---
# encodeParams

#### 变量说明

编码参数。


#### 变量数据定义

```
struct EncodeParams {
    uint32_t bitrate = 3000000;             // 码率
    uint32_t gopSize = 30;                  // I帧间隔
    ProfileType profile = BASELINE;         // 编码复杂度
    RCMode rcMode = CBR;                    // 流控模式
    uint32_t forceKeyFrame = 0;             // 在设置后第N帧强制生成I帧，0表示不生效
    bool interpolation = false;             // 补帧开关
    uint32_t crf = 34;                      // crf码控级别
    uint32_t maxCrfRate = 20000000;         // crf码率峰值
    int32_t vbvBufferSize = 1000;           // crf码率缓冲区大小
    uint32_t streamWidth = 720;             // 出流分辨率宽
    uint32_t streamHeight = 1280;           // 出流分辨率高
} __attribute__((packed));

enum ProfileType : uint32_t {
    BASELINE,
    MAIN,
    HIGH
};

enum RCMode : uint32_t  {
    ABR,                       // 平均码率，暂不支持
    CRF,                       // 画质优先，暂不支持
    CBR,                       // 恒定码率
    CAPPED_CRF,                // 画质优先，但限制码率
    RC_MODE_MAX
```


#### 约束说明

流控模式暂时只支持CBR恒定码率模式与CAPPED_CRF（画质优先，但限制码率）模式。

| 对应属性字段名称 | 字段描述 | 取值范围 | 默认值 |
| --- | --- | --- | --- |
| bitrate | 编码码率。 | AMD，一般为W6800：500000~50000000 DC1000：500000~30000000 单位bps | 3000000 |
| gopSize | 编码GOP大小配置项。 | 30~3000 | 30 |
| profile | 编码profile配置项（H.265编码仅支持配置main）。 | 0：BASELINE（仅H264支持） 1：MAIN 2：HIGH（仅H264支持） | 0：BASELINE（仅H264支持） |
| rcMode | 码控模式配置项。 | 0：ABR平均码率模式（暂不支持） 1：CRF画质优先模式（暂不支持） 2：CBR恒定码率模式 3：CAPPED\_CRF画质优先并限制最大码率模式（DC1000暂不支持） | 2：CBR恒定码率模式 |
| forceKeyFrame | 编码强制I帧配置项。 | 0：不触发编码强制I帧 1：在下一帧强制生成I帧 | 0：默认不触发编码强制I帧 |
| interpolation | 补帧参数项。 | false：关闭补帧 true：开启补帧 | false：关闭补帧 |
| crf | crf码控级别。 | 0\-51 | 34 |
| maxCrfRate | crf码率峰值。 | 500000~100000000 | 20000000 |
| vbvBufferSize | crf码率缓冲区大小。 | \-1：自动模式 0：禁用峰值比特率限制 [min\_vbv\_size ~ 3000 ]： min\_vbv\_size = ceil(1000 / fps) +1且min\_vbv\_size >= 10 | 1000 |
| streamWidth | 出流帧宽度。 | [240, 云手机渲染分辨率]，并且出流帧宽度需要为8的倍数。 | 720 |
| streamHeight | 出流帧高度。 | [240, 云手机渲染分辨率]，并且出流帧高度需要为8的倍数。 | 1080 |


1. 码控模式（RCMode）仅支持固定码率模式（CBR）与画质优先并限制最大码率（CAPPED_CRF），Quadra编码卡支持两种码控模式；而DC1000环境，仅支持固定码率模式（CBR），不支持画质优先并限制最大码率（CAPPED_CRF）。
2. 码控模式（RCMode）设置为固定码率模式（CBR），可通过bitrate变量来指定固定码率的数值；而码控模式（RCMode）设置为画质优先并限制最大码率（CAPPED_CRF）时，会使用crf、maxCrfRate和vbvBufferSize变量来进行码率控制。
