+2006-07-28 Andy Wingo <wingo@pobox.com>
+
+ * examples/remuxer.py (RemuxBin._do_seek, Remuxer._bus_watch): Use
+ normal seeks instead of segment seeks so that EOS is handled
+ properly. Patch by James "Doc" Livingston <doclivingston at
+ gmail.com>.
+
+ * examples/remuxer.py (RemuxBin._new_demuxed_pad): Increase the
+ buffer size for dealing with terribly muxed files.
+
2006-07-20 Edward Hervey <edward@fluendo.com>
* configure.ac:
* examples/remuxer.py (PlayerWindow.update_scale_cb): Fix a race
condition getting the initial cutin time via inserting whitespace.
(all over): UI fixes to make Mike happy.
-
+
* examples/remuxer.py: Updates! Nothing gstreamery, it's all ui,
so I won't bother you with the details.
self.response(FAILURE)
elif message.type == gst.MESSAGE_WARNING:
print 'warning', message
- elif message.type == gst.MESSAGE_SEGMENT_DONE:
+ elif message.type == gst.MESSAGE_EOS:
# print 'eos, woot', message.src
name = self.touri
if name.startswith('file://'):
return
queue = gst.element_factory_make('queue', 'queue_' + format)
+ queue.set_property('max-size-buffers', 1000)
parser = gst.element_factory_make(self.parsefactories[format])
self.add(queue)
self.add(parser)
parser.link(self.mux)
self.parsers.append(parser)
- def _do_segment_seek(self):
- flags = gst.SEEK_FLAG_SEGMENT | gst.SEEK_FLAG_FLUSH
+ def _do_seek(self):
+ flags = gst.SEEK_FLAG_FLUSH
# HACK: self.seek should work, should try that at some point
return self.demux.seek(1.0, gst.FORMAT_TIME, flags,
gst.SEEK_TYPE_SET, self.start_time,
def _no_more_pads(self, element):
pads = [x.get_pad('src') for x in self.parsers]
set_connection_blocked_async_marshalled(pads,
- self._do_segment_seek)
+ self._do_seek)
class PlayerWindow(gtk.Window):