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.

[参考译文] AM62A7:GStreamer v4l2src 使用 dmabuf-import 错误

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

https://e2e.ti.com/support/processors-group/processors/f/processors-forum/1528391/am62a7-gstreamer-v4l2src-use-dmabuf-import-error

器件型号:AM62A7

工具/软件:

SDK 版本:10_00_00_08

我尝试运行这个命令、但得到了错误

gst-launch-1.0 v4l2src device=/dev/video3 io-mode=dmabuf-import ! \
filesink location=/tmp/test.yuv sync=true

错误:

Setting pipeline to PAUSED ...
Pipeline is live and does not need PREROLL ...
Pipeline is PREROLLED ...
Setting pipeline to PLAYING ...
New clock: GstSystemClock
ERROR: from element /GstPipeline:pipeline0/GstV4l2Src:v4l2src0: No downstream pool to import from.
Additional debug info:
/usr/src/debug/gstreamer1.0-plugins-good/1.22.12/sys/v4l2/gstv4l2object.c(5471): gst_v4l2_object_decide_allocation (): /GstPipeline:pipeline0/GstV4l2Src:v4l2src0:
When importing DMABUF or USERPTR, we need a pool to import from
ERROR: from element /GstPipeline:pipeline0/GstV4l2Src:v4l2src0: Internal data stream error.
Execution ended after 0:00:00.001818700
Setting pipeline to NULL ...
Additional debug info:
/usr/src/debug/gstreamer1.0/1.22.12/libs/gst/base/gstbasesrc.c(3134): gst_base_src_loop (): /GstPipeline:pipeline0/GstV4l2Src:v4l2src0:
streaming stopped, reason not-negotiated (-4)
Freeing pipeline ...

如果我将 IO 模式更改为 mmap 或 dmabuf、它将完美工作。

 我注意到大多数例子使用 dmabuf-import 与 TIovx Gstreamer 插件 — 与普通 dmabuf 相比是否有真正的性能差异? 另外,为什么我不能让 dmabuf-import 工作? 这可能是我个人的驱动程序问题吗?