连接此gstreamer管道的正确方法是什么?

2024-10-01 02:36:10 发布

您现在位置:Python中文网/ 问答频道 /正文

我需要如何在python代码中链接这个gstreamer管道?(不是通过使用商品及服务税()! ) 在

filesrc ! h264parse ! avimux ! filesink

当我尝试创建pad对象时-

^{pr2}$

它返回NoneType。 我也把bufferprobe连接到这个垫子上。在


Tags: 对象代码管道链接商品padgstreamerpr2
2条回答

这是非常直截了当的,但是我建议你去读一点关于这个主题的文章,试试这个:http://www.jonobacon.org/2006/08/28/getting-started-with-gstreamer-with-python/

h264parse的srcpadname是'src',而不是'src0',这就是它返回NoneType的原因src0'通常只在具有请求板的元素(如Tee)时使用,但h264parse不是这种情况。在

如果您仍然无法使其工作,请随意发布一个更完整的代码尝试。在

一小段与Gstreamer 1.0、python 2.7一起使用的代码片段:

import sys, os
import gi
gi.require_version('Gst', '1.0')
from gi.repository import GObject, Gst, Gtk
GObject.threads_init()
Gst.init(None)
pipeline = Gst.Pipeline()
src = Gst.ElementFactory.make("filesrc", "src")
parse = Gst.ElementFactory.make("h264parse", "parse")
mux = Gst.ElementFactory.make("avimux", "mux")
sink = Gst.ElementFactory.make("fakesink","sink")

pipeline.add(src)
pipeline.add(parse)
pipeline.add(mux)
pipeline.add(sink)

pipeline.set_state(Gst.State.PLAYING)
Gtk.main()

相关问题 更多 >