SYS(模块绑定)API
SYS API提供了 以下的接口:
| 函数 | 功能 |
|---|---|
| sp_module_bind | 绑定数据源、目标模块 |
| sp_module_unbind | 解除模块间的绑定 |
sp_module_bind
【函数原型】
int32_t sp_module_bind(void *src, int32_t src_type, void *dst, int32_t dst_type)
【功能描述】
本接口可以把 VIO,ENCODER,DECODER,DISPLAY, 这四个模块的输出与输入进行内部绑定,绑定后的两个模块的数据会在内部自动流转,无需用户操作。比如绑定 VIO 和 DISPLAY 后,打开的mipi摄像头的数据会直接显示到显示屏上,不需要调用VIO的sp_vio_get_frame接口获取数据,之后再调用DISPLAY的sp_display_set_image接口进行显示。
支持绑定的模块关系如下:
| 源数据模块 | 目标数据模块 |
|---|---|
| VIO | ENCODER |
| VIO | DISPLAY |
| DECODER | ENCODER |
| DECODER | DISPLAY |
【参数】
src: 数据源模块的对象指针(调用各模块初始化接口得到)src_type:源数据模块类型,支持SP_MTYPE_VIO和SP_MTYPE_DECODERdst: 目标模块的对象指针(调用各模块初始化接口得到)dst_type:目标数据模块类型,支持SP_MTYPE_ENCODER和SP_MTYPE_DISPLAY
【返回类型】
成功返回 0,失败返回其他值。
sp_module_unbind
【函数原型】
int32_t sp_module_unbind(void *src, int32_t src_type, void *dst, int32_t dst_type)
【功能描述】
本接口完成已经绑定的两个模块的解绑,模块退出前需要先完成解绑。
【参数】
src: 数据源模块的对象指针(调用各模块初始化接口得到)src_type:源数据模块类型,支持SP_MTYPE_VIO和SP_MTYPE_DECODERdst: 目标模块的对象指针(调用各模块初始化接口得到)dst_type:目标数据模块类型,支持SP_MTYPE_ENCODER和SP_MTYPE_DISPLAY
【返回类型】
成功返回 0,失败返回其他值。