def loadEDL(self): assert self.movieFileName self.edlFileName = os.path.splitext(self.movieFileName)[0] + ".edl" if os.path.exists(self.edlFileName): self.edl = pyedl.load(open(self.edlFileName)) else: self.edl = pyedl.EDL() self.edlDirty = False self.ui.edlWidget.setEDL(self.edl, self.ui.player.totalTime()) self.ui.actionSaveEDL.setEnabled(True) self.ui.actionStartCut.setEnabled(True) self.ui.actionStopCut.setEnabled(True) self.ui.actionDeleteCut.setEnabled(True) self.refreshTitle()
def setup_pipeline(self, filepath): self.player = Gst.ElementFactory.make('playbin', None) self.player.set_state(Gst.State.READY) self.player.set_property("uri", "file://" + urllib2.quote(filepath)) self.edlfile = os.path.splitext(filepath)[0] + ".edl" if os.path.isfile(self.edlfile): self.edl = pyedl.load(open(self.edlfile)) else: self.edl = pyedl.EDL() bus = self.player.get_bus() bus.add_signal_watch() bus.enable_sync_message_emission() bus.connect("message", self.on_message) bus.connect("sync-message::element", self.on_sync_message)