mirror of
https://gitlab.freedesktop.org/gstreamer/gstreamer.git
synced 2025-02-23 06:26:23 +00:00
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:
parent
356aa743dc
commit
803a00f9a6
1 changed files with 9 additions and 1 deletions
|
@ -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;
|
||||
|
|
Loading…
Reference in a new issue