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.

[参考译文] Linux/AM3354:Qt 5的摄像头演示失败

Guru**** 2931260 points

Other Parts Discussed in Thread: AM3354

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

https://e2e.ti.com/support/processors-group/processors/f/processors-forum/662923/linux-am3354-camera-demo-fails-with-qt-5

器件型号:AM3354

工具/软件:Linux

你(们)好

 我正在评估 AM3354平台上的摄像头功能。

 我们使用的是 SDK 03.02.00.05。 它基于 Qt5.6.2

 我们还有 Logitech USB 摄像头。

 插入摄像头后、我可以看到 UVC 摄像头的日志:

使用 musb-hdrc 的新型高速 USB 器件3
uvcvideo:找到 UVC 1.00器件 (046d:081b)
输入:UVC 摄像头(046d:081b)作为/devices/platform/ocp/47400000.usb/47401c00.usb/musb-hdrc.1.auto/usb2/2-1/2-1:1.0/input/input0

 
 我用 GitHub 的运动项目 来测试摄像头、它工作正常。对摄像头驱动器进行编程是可以的。

 现在、当我尝试运行正式的 Qt5摄像头演示时、它不起作用。如下所示:

导出 QTDIR =/usr/lib
导出 LD_LIBRARY_PATH=$QTDIR/
导出 QT_QPA_platform=eglfs:/dev/fb0
导出 QT_QPA_FONTDIR=$QTDIR/字体
导出 QT_PLUGIN_PATH=$QTDIR/qt5/plugins
导出 QT_QPA_EVDEV_Touchscreen 参数="linuxinput:/dev/input/event1

/usr/share/qt5/examples/multimediawidgets/camera/camera

 运行摄像头演示时未找到错误日志。

 屏幕如下所示:

 

我还尝试运行另一个演示:

/usr/share/qt5/examples/multimedia/declarative-camera/declarative-camera

屏幕如下所示:

声明性相机确实报告了一些错误、例如:

QRC://VideoCaptureControls.QML:110:错误:无法将[未定义]分配给 QString
QRC:///CameraListButton.QML:65:5:QML CameraListPopup:检测到属性"CurrentValue"的绑定循环
QRC://PhotoCaptureControls.QML:135:错误:无法将[未定义]分配给 QString
QRC:///CameraListButton.QML:65:5:QML CameraListPopup:检测到属性"CurrentValue"的绑定循环
无法获取参数值:不支持该参数。

但我不知道它是否相关。

但这两种应用看起来都是相同类型的问题。

摄像头没有预览。

请帮帮我。

延东

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

    您是否在使用最新的 PSDK 时发现了此问题?
    在我看来、这似乎是 qt 问题。
    请检查此项:
    论坛.qt.io/.../13.

    希望这对您有所帮助。

    BR
    玛格丽塔
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您好、Margarita
    尚未...我们的 SDK 为03.02.00.05。
    迁移到最新的 SDK 并不容易...因为它需要内核移植和所有功能。
    我将深入研究该主题、如果我有任何问题、请与您联系。
    感谢您的提示!

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

    我要关闭此主题。
    如果您有新的问题/疑问、请打开相同主题的新主题。

    BR
    玛格丽塔
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您好、Margarita
    线程中的建议来确定。
    我尝试交叉编译以下内容并将其安装在电路板上:
    gst-plugins-bad-0.10.23.tar
    gst-plugins-base-0.10.36.tar
    gst-plugins-good-0.10.31.tar
    gstreamer-0.10.36.tar

    但仍然没有预览。

    然后我尝试删除原始 gstreamer-1.0软件包:
    opkg remove --force-depends gstreamer1.0*

    当我开始时:
    /usr/share/qt5/examples/multimediawidgets/camera/camera
    它报告:
    defaultServiceProvider::requestService():找不到-"org.qt-project.qt.camera"的服务


    我想 Qt5甚至不打算寻找 gstreamer-0.10?
    它仍然在寻找 gstreamer-1.0类的东西?

    因此我怀疑。要么有某种配置使 Qt5默认查找 gstreamer-1.0?
    还是在编译 Qt5库时修复了这种设置?

    我应该在这里开始新的主题吗?


    谢谢

    延东
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    我还稍微深入研究了处理器 SDK。
    我找到了这样的配方:
    sources/meta-openembedde/meta-multimedia /配方-multimedia /gstreamer-0.10

    这意味着我可能需要使用 Arago 重新构建整个 SDK? 而不是自己构建 gstreamer-0.10?

    如果是,我该怎么做?

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

    请检查此答案:
    e2e.ti.com/.../2452359
    我将对此进行研究。 当我有更多信息时、我会再给您回复。

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

    您好!

    这已在上面的主题中得到解答。
    请单击"此已解决我的问题"按钮以关闭该主题。

    谢谢!

    BR
    玛格丽塔