在GStreamer 0.10下不同音源之间切换不工作

问题描述:

我试图用input-selector两个流之间进行切换,但我得到的错误:在GStreamer 0.10下不同音源之间切换不工作

`AttributeError: 'NoneType' object has no attribute 'get_property'` 

这是我的Python代码:

def __init__(self): 
     pipeline_string=(
         'videotestsrc pattern=0 ! in. ' 
         'videotestsrc pattern=2 ! in. ' 
         'input-selector name=in ! autovideosink '       
         ) 
     self.pipeline=Gst.parse_launch(pipeline_string) 

    def cam1(self): 
     switch = self.pipeline.get_by_name('in') 
     stop_time = switch.emit('block') 
     newpad = switch.get_static_pad('sink0') 
     start_time = newpad.get_property('running-time')  
     switch.emit('switch', newpad, stop_time, start_time) 

我认为这两个功能只是你需要的东西。我写了它,以便我可以测试input-stream元素。发生的事情是,当我尝试获取sink0打击垫时,我得到None类型。为什么?

+0

'get_static_pad('sink0')'在我的笔记本电脑上适合我,至少它会返回一个'GstPad对象'而不是'None'。也许检查你的gstreamer安装或相关配置? – starrify 2014-09-21 08:33:51

+0

对不起,但用我的Python绑定它是被调用的版本'0.10.36'。对不起,没有帮助。 – starrify 2014-09-21 08:48:00

+0

没问题的队友 – 2014-09-21 08:51:31

Okey经过几个小时试图解决这个问题后,我发现(感谢名叫Tim的人)iam使用sink0而不是sink_0。