【问题标题】:Yocto how to add a gstreamer plugin?Yocto如何添加一个gstreamer插件?
【发布时间】:2017-09-02 16:03:03
【问题描述】:

我正在尝试使用 Yocto 为 i.MX6 板构建自定义映像。
我想从 Gstreamer OpenCV 插件(https://github.com/GStreamer/gst-plugins-bad/tree/master/ext/opencv)中添加插件“gstmotioncells”
到我的构建。

但我不知道如何将此插件添加到我的 yocto 构建中。
我尝试了一些方法,但没有奏效。
我需要在我的 local.conf 文件中添加一些内容还是需要修改 .bb 文件?

按照jku的指示,还是报错。

ERROR: esomimx6-sta-image-1.0-r0 do_rootfs: Unable to install packages. Command '/home/toon/yocto/sta/esomimx6/build_esom/tmp/sysroots/x86_64-linux/usr/bin/opkg --volatile-cache -f /home/toon/yocto/sta/esomimx6/build_esom/tmp/work/esomimx6micro-poky-linux-gnueabi/esomimx6-sta-image/1.0-r0/opkg.conf -o /home/toon/yocto/sta/esomimx6/build_esom/tmp/work/esomimx6micro-poky-linux-gnueabi/esomimx6-sta-image/1.0-r0/rootfs  --force_postinstall --prefer-arch-to-version   install fsl-alsa-plugins packagegroup-core-ssh-openssh libfreetype6 packagegroup-esom-qt5 cpufrequtils glib-networking libcairo2 openssh-sftp-server packagegroup-core-boot packagegroup-core-x11-base glibmm packagegroup-fsl-gstreamer1.0-full packagegroup-esom-tools-testapps alsa-state ruby packagegroup-fsl-gstreamer1.0 packagegroup-fsl-tools-gpu gstreamer1.0-plugins-bad-opencv packagegroup-fsl-tools-testapps packagegroup-core-tools-debug opkg packagegroup-base-extended libfontconfig1' returned 255:
Collected errors:
 * opkg_prepare_url_for_install: Couldn't find anything to satisfy 'gstreamer1.0-plugins-bad-opencv'.

你知道出了什么问题吗?

【问题讨论】:

    标签: opencv gstreamer yocto bitbake


    【解决方案1】:

    首先,您需要在 gstreamer1.0-plugins-bad 配方中启用 opencv 插件。已经有一个 packageconfig,所以这应该可以在 local.conf 或您的发行版配置中使用:

    PACKAGECONFIG_append_pn-gstreamer1.0-plugins-bad = " opencv"
    

    (字符串前面的空格是必须的)

    这将使配方依赖于不在 oe-core 层中的 opencv。如果还没有 meta-oe,则必须将它添加到图层中。

    您还需要将相关包添加到您的图像中:至少可能是gstreamer1.0-plugins-bad-opencv。在生产中,这可能会发生,因此需要 opencv 插件的应用程序配方将依赖于它。对于测试,您只需添加

     IMAGE_INSTALL_append = " gstreamer1.0-plugins-bad-opencv"
    

    进入你的 local.conf。

    【讨论】:

    • 你能描述一下我应该怎么做最后一步吗?如何将包添加到我的图像中?
    • 我有时间所以试了一下。 $WORKDIR/temp/log.do_configure 显示 gstreamer1.0-plugins-bad 仍然静默禁用 opencv 插件。 configure.ac 解释了为什么 github.com/GStreamer/gst-plugins-bad/blob/1.10/… 。 meta-oe 中的 opencv 版本是 3.2,因此与这个版本的 gstreamer 所期望的不匹配。两种选择: 1) 尝试修补 configure.ac 以接受 3.2.0 -- 也许 它是兼容的。 2)尝试使用较旧的 opencv:meta-oe 中有 2.4:PREFERRED_VERSION_opencv = "2.4" 应该在 local.conf 中进行 - 我不知道是否正在测试这个较旧的配方
    • 别介意 2.4 的建议:配方被列入黑名单,所以绝对没有经过测试。
    • 由于 gstreamer 1.6 仅支持 opencv 2.4,我不得不将 opencv 反向移植到我的构建中。而且我不需要'IMAGE_INSTALL_append'
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2018-06-16
    • 2020-07-10
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-08-10
    相关资源
    最近更新 更多