7,156
社区成员
发帖
与我相关
我的任务
分享在 AI Edge Box 上跑视频结构化分析,如何把 Qualcomm 硬件解码后的帧直接送入 NPU,不经过 CPU 内存拷贝?
利用高通平台的 ION/DMA-BUF 共享内存机制实现零拷贝:
1)视频解码器(如 V4L2 或 GStreamer qtivdec)输出的帧存储在 DMA-BUF fd 中;
2)将该 fd 直接传给 QNN API 作为输入 tensor 的 backing memory,NPU 通过 SMMU 直接访问;
3)在 GStreamer 管线中可用 appsink 获取 DMA-BUF 引用后调用推理,全程不触发 CPU 侧的 memcpy。需确保解码输出格式(如 NV12)与模型输入预期一致,否则需在 GPU 上做轻量格式转换。