Original commit message from CVS:
Better fallback for when seeking is not supported by the peer 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);
}
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;