python程序中Gst的问题

时间:2016-10-25 17:47:17

标签: python gstreamer fedora raspbian

我在制作一个简单的服务器/客户端套接字python程序时遇到了麻烦。基本上,我的服务器(RPi3)必须将视频(使用Gstreamer)传输到客户端(Fedora 24)。问题是在我的Fedora中,我可以使用Gstreamer导入这样的库:

import gi
gi.require_version('Gst', '1.0')
gi.require_version('Gtk', '3.0')
from gi.repository import Gst, GObject, Gtk

但在我的Raspbian中,我不能,因为:

Traceback (most recent call last):
File "peerMain.py", line 12, in <module>
gi.require_version('Gst', '1.0')
File "/usr/lib/python2.7/dist-packages/gi/__init__.py", line 100, in require_version
raise ValueError('Namespace %s not available' % namespace)
ValueError: Namespace Gst not available

我尝试了很多东西,例如import gst或pygst。我也试过安装一些像

这样的包
sudo apt-get install libgstreamer1.0-dev libgstreamer1.0-0-dbg libgstreamer1.0-0 gstreamer1.0-tools gstreamer-tools gstreamer1.0-doc gstreamer1.0-x

但结果是

gstreamer1.0-tools is already the newest version.
gstreamer1.0-x is already the newest version.
libgstreamer1.0-0 is already the newest version.
libgstreamer1.0-0 set to manually installed.
Some packages could not be installed. This may mean that you have
requested an impossible situation or if you are using the unstable
distribution that some required packages have not yet been created
or been moved out of Incoming.
The following information may help to resolve the situation:

The following packages have unmet dependencies:
libgstreamer1.0-dev : Depends: libglib2.0-dev but it is not going to be installed
E: Unable to correct problems, you have held broken packages.

当我探索这种依赖性时,它派生在libglib2.0-0和libglib2.0-bin中,这些数据包刚刚出现在最后一个版本中:

pi@raspberrypi:~ $ sudo apt-get install libglib2.0-0 libglib2.0-bin 
Reading package lists... Done
Building dependency tree       
Reading state information... Done
libglib2.0-0 is already the newest version.
libglib2.0-bin is already the newest version.
0 upgraded, 0 newly installed, 0 to remove and 4 not upgraded.

我真的需要它,我希望有人可以帮助我。

提前致谢。

2 个答案:

答案 0 :(得分:3)

我刚刚找到了解决这个问题的方法。

基本上,我删除并重新安装所有gstreamer-1.0并强制使用apt-get参数-f安装依赖项。

我希望这个问题会对某人有所帮助。

答案 1 :(得分:2)

我使用this solution安装了适用于Python 3的GStreamer Python绑定。

body