---
title: 接口说明
description: "视频编码 模块提供视频流服务端引擎正常运行所需要调用的外部视频编码接口，由二次开发者实现，并以动态链接库的形式提供。其动态库的名字为：libVideoCodec.so。"
url: https://www.hikunpeng.com/document/detail/zh/kunpengboostkithistory/240RC1/armnative/kunpengcpsvideo_17_0005.html
sourcePath: /source/zh/kunpengboostkithistory/240RC1/armnative/kunpengcpsvideo_17_0005.html
indexId: 8ae29d40022fefaa05a97fc7403e7e47eef8cdfa942a36bb5c933784b546204679
---
# 接口说明

视频编码 模块提供视频流服务端引擎正常运行所需要调用的外部视频编码接口，由二次开发者实现，并以动态链接库的形式提供。其动态库的名字为：libVideoCodec.so。

开发者继承VideoEncoder类并按照本章节中的描述实现对应接口，同时提供CreateVideoEncoder、DestroyVideoEncoder接口用于创建具体的实现类实例。

其中，接口调用的返回码定义如下：
```
enum EncoderRetCode : uint32_t {
VIDEO_ENCODER_SUCCESS                = 0x00,
VIDEO_ENCODER_CREATE_FAIL            = 0x01,  // 创建编码器失败
VIDEO_ENCODER_INIT_FAIL              = 0x02,  // 初始化编码器失败
VIDEO_ENCODER_START_FAIL             = 0x03,  // 启动编码器失败
VIDEO_ENCODER_ENCODE_FAIL            = 0x04,  // 编码失败
VIDEO_ENCODER_STOP_FAIL              = 0x05,  // 停止编码器失败
VIDEO_ENCODER_DESTROY_FAIL           = 0x06,  // 销毁编码器失败
VIDEO_ENCODER_REGISTER_FAIL          = 0x07,  // 注册函数失败
VIDEO_ENCODER_RESET_FAIL             = 0x08,  // 重置编码器失败
};
```


编码器类型定义如下：
```
enum EncodeFormat: uint32_t {
ENCODER_TYPE_OPENH264 = 0,    // 开源OpenH264编码器
ENCODER_TYPE_NETINTH264 = 1,  // NETINT h.264硬件编码器
ENCODER_TYPE_NETINTH265 = 2,  // NETINT h.265硬件编码器
ENCODER_TYPE_VASTAIH264 = 3,  // VASTAI h.264硬件编码器
ENCODER_TYPE_VASTAIH265 = 4,  // VASTAI h.265硬件编码器
ENCODER_TYPE_QUADRAH264 = 5,  // QUADRA h.264硬件编码器
ENCODER_TYPE_QUADRAH265 = 6,  // QUADRA h.265硬件编码器
ENCODER_TYPE_T432H264 = 7,    // T432 h.264硬件编码器
ENCODER_TYPE_T432H265 = 8,    // T432 h.265硬件编码器
};
```
