我正在研究gstreamer作为一种从列表中选择视频设备的方法,以便将其提供给opencv脚本。
我绝对不明白如何在windows中使用gstreamer和python。我从安装了WindowsGStreer1.07二进制文件。但是,我无法在python中导入pygst和gst模块。
>>> import pygst
Traceback (most recent call last):
File "<pyshell#0>", line 1, in <module>
import pygst
ImportError: No module named pygst
>>> 我检查了gstreamer安装,似乎没有提供,但是有一个名为gst-env的文件,其中包含环境变量的路径(安装时没有添加到系统变量中)。我查过了。
关于同一个问题的其他问题,例如这里和这里,都使用winbuild的版本。为什么是这样?
我完全迷上了这个。
编辑
好的,我使用SDKforGStreamer0.10(其中有一个pygst.py)来管理它,但是有没有一种方法可以使用GStreamer1.0系列,因为0.10是“寿命的终结”?
发布于 2015-04-01 11:58:16
步骤1: Windows 8.1 64位
步骤2:下载并安装Python
C:\>wget https://www.python.org/ftp/python/2.7.9/python-2.7.9.amd64.msi
C:\>./python-2.7.9.amd64.msi
C:\>cd C:\Python27
C:\>pwd
C:\Python27步骤3:下载GStreer1.0的安装Python绑定
C:\>wget http://sourceforge.net/projects/pygobjectwin32/files/pygi-aio-3.14.0_rev14-setup.exe
C:\>unzip "pygi-aio-3.14.0_rev14-setup.exe"
C:\>whereis_unzipped "pygi-aio-3.14.0_rev14-setup.exe"
C:\pygi
C:\>./c:\pygi\setup.exe







步骤4:运行以下代码
C:\>C:\Python27\python.exe -c "import gi; gi.require_version('Gst', '1.0'); from gi.repository import Gst; Gst.init(None); pipeline = Gst.parse_launch('playbin uri=http://docs.gstreamer.com/media/sintel_trailer-480p.webm'); pipeline.set_state(Gst.State.PLAYING); bus = pipeline.get_bus();msg = bus.timed_pop_filtered(Gst.CLOCK_TIME_NONE, Gst.MessageType.ERROR | Gst.MessageType.EOS)"步骤5:您必须等待10分钟,才能看到类似于下面的结果。因为因为某种原因需要时间

发布于 2014-02-06 15:26:43
http://sourceforge.net/projects/pygobjectwin32/files/的安装程序应该适用于Tom给出的测试用例。尝试将由pygi安装程序安装的插件与官方gstreamer中的插件进行匹配。
安装程序试图成为每个python的“可移植和私有”安装,而没有注册表/环境vars更改。
我关于运行时dll的说明,建议不要混合运行时,因为pygi的运行时是专门为python .k.a链接到python首选的msvcrt的,并使用python使用的stat()约定。如果像glib的stat()这样的公共api使用与其他dll不同的约定,那么运行时混合可能导致无声崩溃。不过,除此之外,它可能运作得很好。
https://stackoverflow.com/questions/17278953
复制相似问题