AX520CE-- 音视频mdk的初识

数据来源: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_SVI_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

  • 用于在视频上叠加文字/图像;

  • APINI_MDK_OSD_CreateNI_MDK_OSD_PaintToChn

  • 在安防监控项目中常用于水印、时间戳显示。


🎧 七、音频处理模块

章节 11

  • 音频采集(AI)、播放(AO)、编码(AENC);

  • API 示例

    • NI_MDK_AI_SetPubAttr

    • NI_MDK_AENC_CreateChn

    • NI_MDK_AENC_Start

  • 重点:了解音频采样率、PCM/I2S 接口、AAC/G711 编码。

相关推荐
小诗懂技术3 小时前
【网络通信UDP】基础 进程间不同主机的通信
运维·服务器·网络
weixin_440730503 小时前
selenium实战记录-从登陆-首页-进入应用流程用例三种参数化+日志+报告
服务器·selenium·测试工具
琥珀色糖4 小时前
Linux守护进程
linux·终端·守护进程·会话·进程组
Hstar_chen4 小时前
开源一款 HarmonyOS 服务器监控客户端:星辰云巡 1.0.3
服务器·华为·harmonyos
开心大爆炸7 小时前
xrdp 连接 登录对话框输入密码后闪退
linux·运维·服务器
oushaojun28 小时前
大厂 C++ 面试:深度剖析 Linux Signal 信号机制(转)
linux
苏生Susheng9 小时前
【软件实施】Linux系统Shell脚本教程
linux·运维·服务器·chrome·spring boot·学习·实施
曹牧9 小时前
C#:文本文件读取
服务器·前端·c#
Ruiery9 小时前
Linux 6.6内核 IOMMU 深度解析(七):DMA API 与 IOMMU 集成 — 从 dma_map_single 到 iommu_map
linux·运维·服务器
分支预测失败9 小时前
RISC-V AIA 中断架构实战:从 PLIC 到 APLIC 与 IMSIC 的迁移
linux·后端