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.

[参考译文] AM62P:AM62P:CSI-2 RX 吞吐量瓶颈–v4l2-ctl 中实现了 50FPS、但 GStreamer 中的上限为 42FPS (SDK 11.01.05.03)

Guru**** 2826825 points

Other Parts Discussed in Thread: AM62P

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

https://e2e.ti.com/support/processors-group/processors/f/processors-forum/1626206/am62p-am62p-csi-2-rx-throughput-bottleneck-50-fps-achieved-in-v4l2-ctl-but-capped-at-42-fps-in-gstreamer-sdk-11-01-05-03

部件号: AM62P

您好 TI 专家、

以下是有关 AM62P 上 CSI-2 Rx 性能的后续查询。 在我的上一个主题(链接如下)中、我们正在调查的潜在硬件瓶颈 2560x1024 @ 50fps (24bpp) 输出数据流。

线程 1:
https://e2e.ti.com/support/processors-group/processors/f/processors-forum/1526464/sk-am62p-lp-connecting-fpga-csi-2-tx-to-am62p-csi-2-rx-for-2560x1024-50fps-24bpp---device-tree-kernel-config-help

线程 2:
https://e2e.ti.com/support/processors-group/processors/f/processors-forum/1568243/sk-am62p-lp-sk-am62p-lp-connecting-fpga-csi-2-tx-to-am62p-csi-2-rx-for-2560x1024-50fps-24bpp---device-tree-kernel-config-help?tisearch=e2e-sitesearch&keymatch=%20user%3A627351#

当前状态: 我们已成功验证物理层和 CSI-2 Rx 硬件是否正常运行。 使用原始 V4L2 采集、我们能够始终达到目标帧速率:  

# v4l2-ctl -d /dev/video2 --stream-mmap --stream-count=1000
<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<< 50.12fps
<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<< 50.12fps

问题: 使用 GStreamer 流水线时、性能降至大约 42 FPS 。 在此分辨率和位深度下、吞吐量大致相同 400 MB/s 。 从内核驱动程序到用户空间 GStreamer 流水线的转换似乎正在引入延迟或丢弃帧。

使用的流水线:

gst-launch-1.0 -v v4l2src device=“/dev/video2! \
video/x-raw、格式=BGRx、宽度=2560、高度=1024、帧速率=50/1! \
fpsdisplaysink video-sink=fakesink sync=false

向 TI 团队提出的问题:

  1. DMA/零复制: io-modev4l2src为确保在这些高数据速率下实现零复制 (dmabuf) 性能、建议在 AM62P 使用什么?

  2. 缓冲区分配: min_buffers_for_capture为确保 CSI-2 Rx FIFO 在用户空间处理帧时不会溢出、是否有针对视频缓冲区数量(例如)的特定建议?

  3. C 低音优先级: SDK 11.01.05.03 是否提供了一种提高 CSI-2 DMA 引擎的互连优先级的方法、以确保其不会被其他系统流量限制?

  4. 流水线调优: 是否存在ti-csi2rxv4l2src针对驱动程序或 GStreamer 元件的已知优化、以便处理大于 3.5Gbps 的吞吐量?

供参考的技术详细信息:

  • 数据速率: 1524Mbps/通道(4 个通道)。

  • D-PHY 频带: 0x00000273(频带 19)。

  • 时钟频率: 762MHz(根据 DTS)link-frequencies

如果能深入了解 GStreamer 为什么落后于原始 V4L2 性能、我将不胜感激。

此致、
Narendra Kumar Reddy

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

    尊敬的 Narendra:

    我正在将您的问题发送给我们的摄像头专家。 请期待尽快答复。  

    同时、是否可以考虑将 io-mode=dmabuf-import 添加到流水线中的 v4l2src 元素中。 还可以在 fpsdisplaysink 之前添加队列元素。 让我知道它是如何随着这些变化,你看到框架的改进.

    此致

    Suren