【问题标题】:Gstreamer plugins not found by gst-inspect-1.0gst-inspect-1.0 找不到 Gstreamer 插件
【发布时间】:2017-04-13 01:26:40
【问题描述】:

我正在运行带有 Anaconda Python 发行版的 Ubuntu 16.04。我使用 Synaptic 安装了 gstreamer-1.0 库。我想测试我的安装:gst-inspect-1.0 fakesrc(如docs 中所建议的那样)但我收到以下错误:

No such element or plugin 'fakesrc'

所以,我试着输入gst-inspect-1.0。这告诉我,似乎没有一个插件安装成功:

staticelements:  bin: Generic bin
staticelements:  pipeline: Pipeline object
Total count: 1 plugin, 2 features

我不明白为什么没有找到插件,因为我已经通过 Synaptic 安装了以下库:libgstreamer-plugins-bad1.0,libgstreamer-plugins-base1.0,libgstreamer-plugins-good1.0,libgstreamer-1.0-0 以及所有 -dev 版本。我还确保我删除了旧的 gstreamer0.10* 插件,以免它们干扰。

最后,我检查了pkg-config --cflags --libs gstreamer-1.0 的输出,并注意到可能导致问题的原因:

-pthread -I/home/guel/anaconda2/include/gstreamer-1.0 
-I/home/guel/anaconda2/lib/gstreamer-1.0/include 
-I/home/guel/anaconda2/include/glib-2.0 
-I/home/guel/anaconda2/lib/glib-2.0/include 
-I/home/guel/anaconda2/include 
-L/home/guel/anaconda2/lib -lgstreamer-1.0 -lgobject-2.0 -lglib-2.0

看起来所需的库位于 Anaconda 目录中。这会以某种方式阻止gst-inspect-1.0 二进制文件(位于/usr/bin 中)链接到这些库吗?我的PKG_CONFIG_PATH 包含目录/home/guel/anaconda2/lib/pkgconfig

对不起,如果这个问题太天真了;我是 pkg-config 和链接库的初学者。

【问题讨论】:

    标签: gstreamer pkg-config


    【解决方案1】:

    我解决了这个问题,首先意识到我已经在我的.bashrc 文件中修改了我的PKG_CONFIG_PATH,以便为ffmpeg 和anaconda 等库添加一些自定义pkgconfig 路径(我添加了例如/opt/ffmpeg/lib/pkgconfig)。但是,我忘记将默认路径保留在 PKG_CONFIG_PATH 中,并使用 export 命令简单地用新路径覆盖变量。

    here 的答案帮助我弄清楚了 pkg-config 默认在哪里搜索已安装的库。默认路径包括所有gstreamer-*-1.0.pc 所在的/usr/lib/x86_64-linux-gnu/pkgconfig 目录。因此,只需要保留 pkg-config 的默认搜索路径,以便系统可以找到 gstreamer 插件。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-10-22
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多