GNOME Bugzilla – Bug 111671
vorbisfile sets incorrect timestamps on non-seekable streams
Last modified: 2004-12-22 21:47:04 UTC
Try this: gst-launch -v { filesrc location=music.ogg ! queue } ! vorbisfile ! fakesink Compare to: gst-launch -v filesrc location=music.ogg ! vorbisfile ! fakesink Notice: The timestamps output are totally different. In the first case they are wrong (too close). This breaks ALSA as it syncs to timestamps and I can't hear oggs in net-rb anymore.
This appears to be some kind of race condition. Adding the following line causes the launch line to work... sometimes. @@ -568,6 +568,7 @@ GST_BUFFER_SIZE (outbuf) = 4096; /* get current time for discont and buffer timestamp */ + g_print("vorbisfile: %g\n", ov_time_tell (&vorbisfile->vf)); time = (GstClockTime) (ov_time_tell (&vorbisfile->vf) * GST_SECOND); ret = ov_read (&vorbisfile->vf,
I've been told by Wim that this is caused by the queue not doing correct queries, because it doesn't include the currently queued buffers when figuring this out. And the timestamp calculations depends on this.
Is this still a problem with oggdemux?
vorbisfile was removed. Closing.