数据来源:AX520C 媒体处理软件开发参考_V26
🧩 一、系统基础部分
章节 2--3:系统控制
-
内容:系统初始化、缓存池、内存分配、模块绑定(Bind/UnBind)、内存映射等;
-
关键 API:
-
NI_MDK_SYS_Init
/NI_MDK_SYS_Exit
-
NI_MDK_SYS_Bind
/NI_MDK_SYS_UnBind
-
NI_MDK_SYS_MmzAlloc
/NI_MDK_SYS_MmzFree
-
-
作用:掌握这些接口后,你能搭建最基本的媒体系统运行环境。
📷 二、视频输入 VI 模块(Video Input)
章节 4
-
负责从 Sensor/MIPI 接口获取视频数据;
-
包含设备配置、工作模式切换、帧抓取、Crop 裁剪等;
-
关键 API:
-
NI_MDK_VI_SetDevAttr
-
NI_MDK_VI_EnableDev
-
NI_MDK_VI_GetFrame
/NI_MDK_VI_ReleaseFrame
-
-
建议熟悉视频采集流程与结构体(如
VI_DEV_ATTR_S
、VI_GET_FRM_PARAM_S
)。
🧠 三、ISP 模块(图像信号处理,PISP-V1)
章节 5
-
包括白平衡、Gamma、降噪、HDR、锐化等;
-
作用:图像质量调优;
-
了解即可,实际项目中常由算法团队或驱动层设置。
⚙️ 四、视频处理 VPS 模块
章节 6
-
对采集到的视频做裁剪、缩放、旋转、拼接、通道复用;
-
核心接口:
-
NI_MDK_VPS_SetGrpAttr
-
NI_MDK_VPS_GetFrame
-
NI_MDK_VPS_SetChnAttr
-
-
重要性:在多码流或分辨率转换项目中非常关键。
🎞️ 五、视频编码 VENC 模块
章节 7
-
核心:将 YUV 帧编码为 H.264/H.265/JPEG;
-
支持 CBR/VBR/QVBR 等多种码控;
-
关键 API:
-
NI_MDK_VENC_CreateChn
-
NI_MDK_VENC_StartRecvPic
-
NI_MDK_VENC_GetStream
/NI_MDK_VENC_ReleaseStream
-
-
推荐重点 :掌握编码参数配置(
VENC_CHN_ATTR_S
)和码流抓取流程。
🖼️ 六、图形叠加 OSD 模块
章节 8
-
用于在视频上叠加文字/图像;
-
API :
NI_MDK_OSD_Create
、NI_MDK_OSD_PaintToChn
; -
在安防监控项目中常用于水印、时间戳显示。
🎧 七、音频处理模块
章节 11
-
音频采集(AI)、播放(AO)、编码(AENC);
-
API 示例:
-
NI_MDK_AI_SetPubAttr
-
NI_MDK_AENC_CreateChn
-
NI_MDK_AENC_Start
-
-
重点:了解音频采样率、PCM/I2S 接口、AAC/G711 编码。