gst/gstpipeline.c: Some more comments.

Original commit message from CVS:
* gst/gstpipeline.c: (gst_pipeline_provide_clock_func):
Some more comments.
This commit is contained in:
Wim Taymans 2008-10-29 17:04:50 +00:00
parent 8798ea2cca
commit d0b44d1578
2 changed files with 16 additions and 3 deletions

View file

@ -1,3 +1,8 @@
2008-10-29 Wim Taymans <wim.taymans@collabora.co.uk>
* gst/gstpipeline.c: (gst_pipeline_provide_clock_func):
Some more comments.
2008-10-27 Wim Taymans <wim.taymans@collabora.co.uk> 2008-10-27 Wim Taymans <wim.taymans@collabora.co.uk>
* libs/gst/base/gstbasetransform.c: * libs/gst/base/gstbasetransform.c:

View file

@ -68,7 +68,9 @@
* performed on it, the stream time is reset to 0. When the pipeline is * performed on it, the stream time is reset to 0. When the pipeline is
* set from PLAYING to PAUSED, the current clock time is sampled and used to * set from PLAYING to PAUSED, the current clock time is sampled and used to
* configure the base time for the elements when the pipeline is set * configure the base time for the elements when the pipeline is set
* to PLAYING again. This default behaviour can be changed with the * to PLAYING again. The effect is that the stream time (as the difference
* between the clock time and the base time) will count how much time was spent
* in the PLAYING state. This default behaviour can be changed with the
* gst_pipeline_set_new_stream_time() method. * gst_pipeline_set_new_stream_time() method.
* *
* When sending a flushing seek event to a GstPipeline (see * When sending a flushing seek event to a GstPipeline (see
@ -545,6 +547,12 @@ invalid_clock:
} }
} }
/* intercept the bus messages from our children. We watch for the ASYNC_START
* message with is posted by the elements (sinks) that require a reset of the
* running_time after a flush. ASYNC_START also brings the pipeline back into
* the PAUSED, pending PAUSED state. When the ASYNC_DONE message is received the
* pipeline will redistribute the new base_time and will bring the elements back
* to the desired state of the pipeline. */
static void static void
gst_pipeline_handle_message (GstBin * bin, GstMessage * message) gst_pipeline_handle_message (GstBin * bin, GstMessage * message)
{ {
@ -671,8 +679,8 @@ gst_pipeline_provide_clock_func (GstElement * element)
GST_OBJECT_UNLOCK (pipeline); GST_OBJECT_UNLOCK (pipeline);
/* let the parent bin select a clock */ /* let the parent bin select a clock */
clock = clock =
GST_ELEMENT_CLASS (parent_class)-> GST_ELEMENT_CLASS (parent_class)->provide_clock (GST_ELEMENT
provide_clock (GST_ELEMENT (pipeline)); (pipeline));
/* no clock, use a system clock */ /* no clock, use a system clock */
if (!clock) { if (!clock) {
clock = gst_system_clock_obtain (); clock = gst_system_clock_obtain ();