1*4882a593Smuzhiyun# README 2*4882a593Smuzhiyun 3*4882a593Smuzhiyun## 前言 4*4882a593Smuzhiyun 5*4882a593Smuzhiyun**概述** 6*4882a593Smuzhiyun 7*4882a593SmuzhiyunRockchip多媒体处理平台(rockit)对外应用接口说明。 8*4882a593Smuzhiyun 9*4882a593Smuzhiyun--- 10*4882a593Smuzhiyun 11*4882a593Smuzhiyun## 目录 12*4882a593Smuzhiyun 13*4882a593Smuzhiyun[TOC] 14*4882a593Smuzhiyun 15*4882a593Smuzhiyun--- 16*4882a593Smuzhiyun## Rockit对外接口说明 17*4882a593SmuzhiyunRockit对外提供TGI(TaskGraph Interface)和MPI(Media Process Interface)两套接口,用于应用程序开发,两套接口可单独使用,也可结合使用。 18*4882a593Smuzhiyun 19*4882a593Smuzhiyun### TGI 20*4882a593Smuzhiyun- 基于TGI接口可以通过配置文件方式构建应用Pipeline,详见tgi/doc/目录文档说明。 21*4882a593Smuzhiyun- 适用于UVC、UAC等较为固定Pipeline应用场景。 22*4882a593Smuzhiyun- 已应用于RV1109/1126 RK356X UVC、UAC类产品。 23*4882a593Smuzhiyun 24*4882a593Smuzhiyun### MPI 25*4882a593Smuzhiyun 26*4882a593Smuzhiyun- MPI接口是模块化接口,包括VI/VO/VDEC/VENC/VPSS/VGS/TDE/SYS/MB/AI/AO/ADEC/AENC等模块,详见mpi/doc/目录文档说明。 27*4882a593Smuzhiyun- MPI支持单模块使用,也支持多模块组合使用,可采用模块间绑定或者手动取/送流方式,灵活构建应用Pipeline。 28*4882a593Smuzhiyun 29*4882a593Smuzhiyun- 已应用于RV1109/1126 IPC、RK356X NVR类产品,并在后续RK3588等新芯片上持续支持。 30*4882a593Smuzhiyun 31*4882a593Smuzhiyun## Rockit对外接口特点 32*4882a593Smuzhiyun 33*4882a593Smuzhiyun| | TGI | MPI | 34*4882a593Smuzhiyun| -------- | ---------------------- | -------------------- | 35*4882a593Smuzhiyun| 灵活性 | Pipeline构建后较为固定 | 灵活,模块可灵活拼接 | 36*4882a593Smuzhiyun| 使用场景 | UVC、UAC | NVR、IPC | 37*4882a593Smuzhiyun 38*4882a593Smuzhiyun## Rockit接口编译配置 39*4882a593Smuzhiyun 40*4882a593SmuzhiyunSDK默认仅开启TGI接口头文件、动态库安装,可根据产品应用需求,通过修改external/rockit目录下CMakeLists.txt,将USE_ROCKIT_MPI置为ON,打开MPI接口编译安装。 41*4882a593Smuzhiyun 42*4882a593Smuzhiyun```c 43*4882a593Smuzhiyunoption(USE_ROCKIT_TGI "enable rockit tgi" ON) 44*4882a593Smuzhiyunif (${USE_ROCKIT_TGI}) 45*4882a593Smuzhiyun message("Build rockit tgi") 46*4882a593Smuzhiyun add_subdirectory(tgi) 47*4882a593Smuzhiyunendif() 48*4882a593Smuzhiyun 49*4882a593Smuzhiyunoption(USE_ROCKIT_MPI "enable rockit mpi" OFF) 50*4882a593Smuzhiyunif (${USE_ROCKIT_MPI}) 51*4882a593Smuzhiyun message("Build rockit mpi") 52*4882a593Smuzhiyun add_subdirectory(mpi) 53*4882a593Smuzhiyunendif() 54*4882a593Smuzhiyun``` 55*4882a593Smuzhiyun 56