[gstreamer-bugs] [Bug 636886] New: baseaudiosink: no running clock when eos leads to hang in PLAYING
GStreamer (bugzilla.gnome.org)
bugzilla at gnome.org
Thu Dec 9 07:57:51 PST 2010
https://bugzilla.gnome.org/show_bug.cgi?id=636886
GStreamer | gst-plugins-base | git
Summary: baseaudiosink: no running clock when eos leads to hang
in PLAYING
Classification: Desktop
Product: GStreamer
Version: git
OS/Version: Linux
Status: UNCONFIRMED
Severity: normal
Priority: Normal
Component: gst-plugins-base
AssignedTo: gstreamer-bugs at lists.sourceforge.net
ReportedBy: mnauw at users.sourceforge.net
QAContact: gstreamer-bugs at lists.sourceforge.net
GNOME target: ---
GNOME version: ---
Created an attachment (id=176136)
--> (https://bugzilla.gnome.org/attachment.cgi?id=176136)
Test clip to reproduce
In particular, that can make things hang when pause/playing when audiosink
reached EOS.
For example, consider a mov clip with 8s of audio and 10s of video (evidently,
the difference can also be more or less). If playback is paused after
audiosink receives and renders eos, then the ringbuffer is not started upon
playing. As such, there is no advancing clock, and rendering of video will
wait indefinitely.
Although gst_base_audio_sink_drain tempers this in general (by delaying eos
rendering), it need not handle all cases. In particular, due to the edit list
/ segment handling in qtdemux, it may send "unequal segments" to audio and
video branches (as opposed to other demuxers, where it is usually the same
plain segment).
Not quite sure how to fix. As the audiosink claims to provide a clock, it
should presumably arrange for a running one, e.g. if it has ever seen some data
and/or eos. Or alternatively should not claim to provide a clock when it won't
be coming up with a running one.
Attached test clip has characteristics as decribed above and can be used to
reproduce (e.g. using the test app in bug #633700).
--
Configure bugmail: https://bugzilla.gnome.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the QA contact for the bug.
You are the assignee for the bug.
More information about the Gstreamer-bugs
mailing list