summaryrefslogtreecommitdiff
path: root/gst/gstelement.h
diff options
context:
space:
mode:
authorWim Taymans <wim.taymans@gmail.com>2005-11-22 18:28:44 +0000
committerWim Taymans <wim.taymans@gmail.com>2005-11-22 18:28:44 +0000
commitcf925ebb6f056b59025ee58eb4bb32079b1587fe (patch)
tree0333bf2c065b0eab313a2116e25d317a74a7bff8 /gst/gstelement.h
parent59ac39499a81dfe99d4e773ec52a5215951f5e5e (diff)
gst/base/gstbasesink.*: No need to store the clock, the parent element class already has it.
Original commit message from CVS: * gst/base/gstbasesink.c: (gst_base_sink_class_init), (gst_base_sink_wait), (gst_base_sink_do_sync), (gst_base_sink_handle_event): * gst/base/gstbasesink.h: No need to store the clock, the parent element class already has it. * gst/gstbin.c: (gst_bin_set_clock_func), (gst_bin_add_func): Updates for clock_set returning a gboolean * gst/gstclock.c: (gst_clock_entry_new), (gst_clock_id_wait), (gst_clock_id_wait_async), (gst_clock_class_init), (gst_clock_init), (gst_clock_finalize), (gst_clock_get_internal_time), (gst_clock_get_time), (gst_clock_slave_callback), (gst_clock_set_master), (gst_clock_get_master), (do_linear_regression), (gst_clock_add_observation), (gst_clock_set_property), (gst_clock_get_property): * gst/gstclock.h: Implement master/slave. When setting a clock as a slave, a periodic timeout is scheduled to sample master and slave times. Then the slave clock is recalibrated to match offset and rate of the master clock. Update logging a bit. Add flag so that a clock can state that is cannot be slaved to another clock. * gst/gstelement.c: (gst_element_set_clock): * gst/gstelement.h: The set_clock returns a gboolean for when an element cannot deal with the selected clock in the pipeline. * gst/gstpipeline.c: (gst_pipeline_change_state), (gst_pipeline_set_clock): * gst/gstpipeline.h: Handle the case where the selected clock cannot be set on the pipeline. * gst/net/gstnetclientclock.c: (gst_net_client_clock_class_init), (gst_net_client_clock_init), (gst_net_client_clock_finalize), (gst_net_client_clock_set_property), (gst_net_client_clock_get_property), (gst_net_client_clock_observe_times): * gst/net/gstnetclientclock.h: Use regression code in GstClock parent, remove duplicated functionality.
Diffstat (limited to 'gst/gstelement.h')
-rw-r--r--gst/gstelement.h4
1 files changed, 2 insertions, 2 deletions
diff --git a/gst/gstelement.h b/gst/gstelement.h
index 1b65806272..64fc465679 100644
--- a/gst/gstelement.h
+++ b/gst/gstelement.h
@@ -462,7 +462,7 @@ struct _GstElementClass
/* set/get clocks */
GstClock* (*provide_clock) (GstElement *element);
- void (*set_clock) (GstElement *element, GstClock *clock);
+ gboolean (*set_clock) (GstElement *element, GstClock *clock);
/* index */
GstIndex* (*get_index) (GstElement *element);
@@ -529,7 +529,7 @@ gboolean gst_element_requires_clock (GstElement *element);
gboolean gst_element_provides_clock (GstElement *element);
GstClock* gst_element_provide_clock (GstElement *element);
GstClock* gst_element_get_clock (GstElement *element);
-void gst_element_set_clock (GstElement *element, GstClock *clock);
+gboolean gst_element_set_clock (GstElement *element, GstClock *clock);
void gst_element_set_base_time (GstElement *element, GstClockTime time);
GstClockTime gst_element_get_base_time (GstElement *element);