MCPcopy Create free account
hub / github.com/GStreamer/gst-python / Resynchronizer

Class Resynchronizer

old_examples/synchronizer.py:346–504  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

344 self.set_response_sensitive(SUCCESS, completed)
345
346class Resynchronizer(gst.Pipeline):
347
348 __gsignals__ = {'done': (gobject.SIGNAL_RUN_LAST, None, (int,))}
349
350 def __init__(self, fromuri, touri, (syncpoints, maxdiff)):
351 # HACK: should do Pipeline.__init__, but that doesn't do what we
352 # want; there's a bug open aboooot that
353 self.__gobject_init__()
354
355 self.fromuri = fromuri
356 self.touri = None
357 self.syncpoints = syncpoints
358 self.maxdiff = maxdiff
359
360 self.src = self.resyncbin = self.sink = None
361 self.resolution = UNKNOWN
362
363 self.window = None
364 self.pdialog = None
365
366 self._query_id = -1
367
368 def do_setup_pipeline(self):
369 self.src = gst.element_make_from_uri(gst.URI_SRC, self.fromuri)
370 self.resyncbin = ResyncBin(self.syncpoints, self.maxdiff)
371 self.sink = gst.element_make_from_uri(gst.URI_SINK, self.touri)
372 self.resolution = UNKNOWN
373
374 if gobject.signal_lookup('allow-overwrite', self.sink.__class__):
375 self.sink.connect('allow-overwrite', lambda *x: True)
376
377 self.add(self.src, self.resyncbin, self.sink)
378
379 self.src.link(self.resyncbin)
380 self.resyncbin.link(self.sink)
381
382 def do_get_touri(self):
383 chooser = gtk.FileChooserDialog('Save as...',
384 self.window,
385 action=gtk.FILE_CHOOSER_ACTION_SAVE,
386 buttons=(gtk.STOCK_CANCEL,
387 CANCELLED,
388 gtk.STOCK_SAVE,
389 SUCCESS))
390 chooser.set_uri(self.fromuri) # to select the folder
391 chooser.unselect_all()
392 chooser.set_do_overwrite_confirmation(True)
393 name = self.fromuri.split('/')[-1][:-4] + '-remuxed.ogg'
394 chooser.set_current_name(name)
395 resp = chooser.run()
396 uri = chooser.get_uri()
397 chooser.destroy()
398
399 if resp == SUCCESS:
400 return uri
401 else:
402 return None
403

Callers 1

do_remuxMethod · 0.85

Calls

no outgoing calls

Tested by

no test coverage detected