Better fallback for when seeking is not supported by the peer element.

Original commit message from CVS:
Better fallback for when seeking is not supported by the peer element.
This commit is contained in:
Wim Taymans 2002-06-02 15:48:25 +00:00
parent 356aa743dc
commit 803a00f9a6

View file

@ -444,7 +444,12 @@ gst_vorbisfile_loop (GstElement *element)
}
vorbisfile->may_eos = TRUE;
GST_BUFFER_TIMESTAMP (outbuf) = (gint64) (ov_time_tell (&vorbisfile->vf) * GST_SECOND);
if (vorbisfile->vf.seekable) {
GST_BUFFER_TIMESTAMP (outbuf) = (gint64) (ov_time_tell (&vorbisfile->vf) * GST_SECOND);
}
else {
GST_BUFFER_TIMESTAMP (outbuf) = 0;
}
gst_pad_push (vorbisfile->srcpad, outbuf);
}
@ -515,6 +520,9 @@ gst_vorbisfile_src_event (GstPad *pad, GstEvent *event)
switch (GST_EVENT_TYPE (event)) {
case GST_EVENT_SEEK:
if (!vorbisfile->vf.seekable)
return FALSE;
switch (GST_EVENT_SEEK_FORMAT (event)) {
case GST_FORMAT_TIME:
vorbisfile->seek_pending = TRUE;