无法在pygst中的GstXvImageSink上获取GstBaseSink的属性

时间:2015-04-15 21:50:39

标签: python pygtk gstreamer python-gstreamer

我正在尝试从GstXvImageSink访问“last-sample”属性,该属性派生自GstBaseSink。 我得到了:

  

TypeError:'GstXvImageSink'类型的对象没有属性'last-sample'

是否有一种特殊的方法可以从pygtk中的基类中获取属性,或者这个属性是以某种方式隐藏的?

代码:

def take_snapshoot(self):
    sample = self.__snapshot_source_video_sink.get_property("last-sample")

1 个答案:

答案 0 :(得分:0)

我的错。我正在使用gstreamer 0.1,我正在阅读gstreamer 1.0的文档 所有对GstBuffer感兴趣的东西现在都是GstSample。 在http://gstreamer.freedesktop.org/data/doc/gstreamer/head/manual/html/chapter-porting-1.0.html之后

  

GST_TAG_IMAGE,GST_TAG_PREVIEW_IMAGE,GST_TAG_ATTACHMENT:以前属于GstBuffer类型的许多标签现在都是GstSample类型(它基本上是一个包含缓冲区以及其他信息的结构)。

所以在我的情况下答案是使用:

def take_snapshoot(self):
sample = self.__snapshot_source_video_sink.get_property("last-buffer")