gstreamer vedio

gst-launch-0.10 playbin uri=file:///path/to/视频文件

在Python里播放

  1. self.player = gst.element_factory_make("playbin", "player")
  2. bus = self.player.get_bus()
  3. bus.add_signal_watch()
  4. bus.enable_sync_message_emission()
  5. bus.connect(‘message’, self.on_message)
  6. bus.connect(’sync-message::element’, self.on_sync_message)
  7. self.player.set_property(‘uri’, "file://" + filepath)
  8. self.player.set_state(gst.STATE_PLAYING)
  9.  
  10. def on_message(self, bus, message):
  11.                  t = message.type
  12.                  if t == gst.MESSAGE_EOS:
  13.                                   self.player.set_state(gst.STATE_NULL)
  14.                                   self.button.set_label("Start")
  15.                  else if t == gst.MESSAGE_ERROR:
  16.                                   self.player.set_state(gst.STATE_NULL)
  17.                                   self.button.set_label("Start")def on_sync_message(self, bus, message):
  18.                  if message.structure is None:
  19.                                   return  message_name = message.structure.get_name()
  20.                  if message_name == ‘prepare-xwindow-id’:
  21.                                   imagesink = message.src
  22.                                   imagesink.set_property(‘force-aspect-ratio’, True)
  23.                                   imagesink.set_xwindow_id(self.movie_window.window.xid)
阅读更多
文章标签: signal null python file
个人分类: LINUX
想对作者说点什么? 我来说一句

gstreamer 项目实践

2011年07月01日 18.89MB 下载

gstreamer安装和MP3的播放

2011年08月17日 227KB 下载

Gstreamer 插件开发指南(中文)

2011年06月25日 661KB 下载

vedio

data-setup="{}">

y670340559 y670340559

2017-03-16 08:52:56

阅读数:146

Gstreamer手册

2012年02月29日 472KB 下载

GStreamer中文开发手册

2013年04月28日 431KB 下载

没有更多推荐了,返回首页

加入CSDN,享受更精准的内容推荐,与500万程序员共同成长!
关闭
关闭