[gstreamer-bugs] [Bug 469930] New: PATCH: seeking support for mmssrc plugin
GStreamer (bugzilla.gnome.org)
bugzilla-daemon at bugzilla.gnome.org
Fri Aug 24 08:27:29 PDT 2007
If you have any questions why you received this email, please see the text at
the end of this email. Replies to this email are NOT read, please see the text
at the end of this email. You can add comments to this bug at:
http://bugzilla.gnome.org/show_bug.cgi?id=469930
GStreamer | gst-plugins-bad | Ver: 0.10.5
Summary: PATCH: seeking support for mmssrc plugin
Product: GStreamer
Version: 0.10.5
Platform: Other
OS/Version: Linux
Status: UNCONFIRMED
Severity: normal
Priority: Normal
Component: gst-plugins-bad
AssignedTo: gstreamer-bugs at lists.sourceforge.net
ReportedBy: j.w.r.degoede at hhs.nl
QAContact: gstreamer-bugs at lists.sourceforge.net
GNOME version: Unspecified
GNOME milestone: Unspecified
Sometime ago I stumbled over an libmms patch which Debian has included which
adds seeking support to libmms. After a couple of 10 hour days learning
gstreamer and working on this I'm happy to report that I can now seek in totem
in the mms streams from the Dutch television.
First of all this requires 3 patches to libmms:
libmms-0.3-seek.patch:
Seek patch from debian ported from libmss-0.2 to 0.3
libmms-0.3-64bit-off_t.patch:
Fix the fact that the Debian patch needed apps/libs using libmms to be compiled
with -D_FILE_OFFSET=64
libmms-0.3-length.patch:
Lie about the file size as we cannot get to the ASF index object at the end of
most asf files through mms
So maybe gstreamer-plugins-bad should come with its own libmms copy until this
gets picked up upstream (as far as libmms upstream is still alive).
Then there is the actual gst seeking support patch:
gst-plugins-bad-0.10.5-mms-seek.patch
Last there is also a patch to the asf demuxer from gst-plugins-ugly, let me
know if you want that in another bug report:
gst-plugins-ugly-0.10.6-asf-seek.patch
This patch isn't strictly needed, actually without it its much easier to
trigger the frozen video problem described below. It does result in a much
better seeking experience though, so once the frozen video issue is fixed, it
should definitively get in.
With all this in place seeking works, but there are a couple of caveats:
-gstreamer and / or totem now want to run the typefind helper on the stream,
which causes a long initial delay when playing a stream. Setting gstbasesrc
type_find property to 0 is not enough to stop this, I need some help fixing
this.
And a much bigger one:
-at work (with _high_ speed internet, the 100mbit switch is the bottleneck),
it works well. But at home most of the time after a seek the playback doesn't
start. Totem shows the first frame of the seeked to part, buffers data and
then nothing happens, the seconds don't start counting, nothing. totem is
still
100% responsive to ui input though, pause/unpause doesn't help. Seeking to
another place does result in a new first frame appearing, new buffering and
usually again nothing happening after this. Sometimes it does start to play
then. This seems a timing issue, where some part of the gstreamer stack and /
or totem stops when the new packets don't come quickly enough after the seek.
I've run totem with "--gst-debug=mmssrc:5,asfdemux:5 --gst-debug-no-color &>
log" and asfdemux keeps pulling and getting packets from mmssrc, and also keeps
pushing both audio and video packets to its sinks. But somewhere further
downstream things seem to go wrong, because as explained in totem things stop,
totem doesn't freeze but the video in it does.
I'm afraid my knowledge of gstreamer isn't sufficient here and I would be much
obliged if you could help. I think this is a bug elsewhere, but since sofar asf
seeking was only done from files, which can deliver data pretty quickly, never
got triggered. Or it could be a locking issue in my code. Either way I need
help.
--
See http://bugzilla.gnome.org/page.cgi?id=email.html for more info about why you received
this email, why you can't respond via email, how to stop receiving
emails (or reduce the number you receive), and how to contact someone
if you are having problems with the system.
You can add comments to this bug at http://bugzilla.gnome.org/show_bug.cgi?id=469930.
More information about the Gstreamer-bugs
mailing list