This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

[参考译文] J784S4XEVM:从 V4L2 (CSI 摄像头)零复制到 vx_image 并放置到 VPAC

Guru**** 2487425 points


请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/processors-group/processors/f/processors-forum/1439021/j784s4xevm-zero-copy-from-v4l2-csi-camera-to-vx_image-and-put-to-vpac

器件型号:J784S4XEVM

工具与软件:

尊敬的 TI 专家:

我正在使用捕获 pippline、希望将 v4l2缓冲区零复制到 vx_image、并使用 VPAC LDC 处理颜色格式到 NV12。

1. V4L2设置

-设置 v4l2和 v4l2_memory_MMap

2.从 v4l2缓冲区创建 vx_image

-使用 vxCreateImageFromHandle 创建 vx_image

=>我可以使用 vxMapImagePatch 这个 vx_image、并转换为 cv::mat 并查看该帧。

3.使用 LDC VPAC 处理 vx_image

-将 vx_image (由 vxCreateImageFromHandle)放入 LDC VPAC,输出不正确。

Ninh、

BRS

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好!

    我可以知道 vx_image 中创建的图像的格式吗? 它也是 NV12吗?

    您能在执行此操作时分享代码吗?

    此致、

    Nikhil

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    [报价 userid="623649" url="~/support/processors-group/processors/f/processors-forum/1439021/j784s4xevm-zero-copy-from-v4l2-csi-camera-to-vx_image-and-put-to-vpac/5519474 #5519474"]- v4l2接口+ createImagefromHandle (带 UYVY v4l2缓冲区)
    => VPAC LDC 输出不正确。

    您好!

    由于缓冲区不是使用 tiovxMemAlloc 创建的、因此不会有一个映射到您正在共享的虚拟地址的物理地址。  

    要检查这一点、请在内部检查映射到  createImagefromHandle()中 mem_ptr->shared_ptr 的物理地址是什么?

    此致、

    Nikhil

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、Nikhil 感谢您的回应

    从 v4l2复制到 vx_image 是否有成功的方法?
     FD_DMA 如何导出/导入缓冲区?

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好!

    您是否可以尝试将存储器设置为  buf.memory = V4L2_MEMORY_DMABUF 、而不是 buf.memory = V4L2_MEMORY_MMAP;?

    您可以参考以下内容

    https://github.com/TexasInstruments/edgeai-tiovx-apps/blob/cf9150154a8cd9c417190d6554170de224564685/modules/src v4l2_capture_module.c#L266

    有了这个,我相信你应该得到一个 dmbuf. 同样、在此之后、请检查以下内容

    要检查此问题、请在内部检查映射到  createImagefromHandle()中 mem_ptr->shared_ptr 的物理地址是什么?

    此致、

    Nikhil

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、Nikhil:
    有关 DMA-BUF v4l2的链接和其他链接、我可以修复我的问题。

    谢谢!
    Ninh Nguyễn