SetEncodeParam
函数功能
设置编码参数。
约束说明
NA
函数原型
int32_t SetEncodeParam(EncodeParamT params[], uint32_t num) = 0
参数说明
字段名称 |
输入/输出 |
字段类型 |
字段描述 |
---|---|---|---|
params |
输入 |
EncodeParamT[] |
要设置的编码参数的列表。 |
num |
输入 |
uint32_t |
要设置编码参数的数量。 |
EncodeParamT的相关定义如下:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 | enum EncodeParamIndex : uint32_t { ENCODE_PARAM_NONE, ENCODE_PARAM_RATE_CONTROL, //设置码控方式 ENCODE_PARAM_BITRATE, //设置码率 ENCODE_PARAM_FRAMERATE, //设置帧率 ENCODE_PARAM_GOPSIZE, //设置gopsize ENCODE_PARAM_PROFILE, //设置profile ENCODE_PARAM_KEYFRAME, //设置关键帧 ENCODE_PARAM_STREAM_WIDTH,//设置出流宽度 ENCODE_PARAM_STREAM_HEIGHT,//设置出流高度 ENCODE_PARAM_MAX }; struct EncodeParamBase { explicit EncodeParamBase(EncodeParamIndex index) : id(index) {} EncodeParamIndex id; }; struct EncodeParamRateControl : public EncodeParamBase { EncodeParamRateControl() : EncodeParamBase(ENCODE_PARAM_RATE_CONTROL) {} uint32_t rateControl = 0; }; struct EncodeParamBitRate : public EncodeParamBase { EncodeParamBitRate() : EncodeParamBase(ENCODE_PARAM_BITRATE) {} uint32_t bitRate = 0; }; struct EncodeParamFrameRate : public EncodeParamBase { EncodeParamFrameRate() : EncodeParamBase(ENCODE_PARAM_FRAMERATE) {} uint32_t frameRate; }; struct EncodeParamGopsize : public EncodeParamBase { EncodeParamGopsize() : EncodeParamBase(ENCODE_PARAM_GOPSIZE) {} uint32_t gopSize; }; struct EncodeParamProfile : public EncodeParamBase { EncodeParamProfile() : EncodeParamBase(ENCODE_PARAM_PROFILE) {} uint32_t profile; }; struct EncodeParamKeyframe : public EncodeParamBase { EncodeParamKeyframe() : EncodeParamBase(ENCODE_PARAM_KEYFRAME) {} uint32_t n; }; struct EncodeParamStreamWidth : public EncodeParamBase { EncodeParamStreamWidth() : EncodeParamBase(ENCODE_PARAM_STREAM_WIDTH) {} uint32_t streamWidth; }; struct EncodeParamStreamHeight : public EncodeParamBase { EncodeParamStreamHeight() : EncodeParamBase(ENCODE_PARAM_STREAM_HEIGHT) {} uint32_t streamHeight; }; using EncodeParamT = EncodeParamBase *; |
返回值说明
数据类型:GpuEncoderErrorCode
取值如下:
- OK:设置编码参数成功。
- ERR_NEED_RESET:需要调用Reset接口后编码参数才能生效。
- 其他:设置编码参数失败。
父主题: GPU加速接口(C&C++)