# Let's see if we can get a viewport AND audio working, combining ex. 2 and 3
# GdkX11 to get access to xid, GstVideo to get access to set_window_handle
-import gi
+import gi, signal
gi.require_version('Gtk', '3.0')
gi.require_version('Gst', '1.0')
gi.require_version('GstVideo', '1.0')
from gi.repository import Gtk, Gst, GdkX11, GstVideo
-import signal
class Main:
def __init__(self):
self.win_id = self.mainwindow.get_object("viewport").get_window().get_xid()
- # When we get a message that video is ready to display, set the
+ # When we get a message that video is ready to display, set the
# correct window id to hook it to our viewport
def OnSyncElement(self, bus, message):
if message.get_structure().get_name() == "prepare-window-handle":
- print "prepare-window-handle"
+ print("prepare-window-handle")
message.src.set_window_handle(self.win_id)
def OnPlay(self, widget):
- print "play"
+ print("play")
self.pipeline.set_state(Gst.State.PLAYING)
def OnStop(self, widget):
- print "stop"
+ print("stop")
self.pipeline.set_state(Gst.State.READY)
def OnQuit(self, widget):
- print "quit"
+ print("quit")
Gtk.main_quit()
# Workaround to get Ctrl+C to terminate from command line