| GStreamer Base Plugins 1.0 Library Reference Manual | ||||
|---|---|---|---|---|
| Top | Description | Object Hierarchy | ||||
#include <gst/audio/gstaudioclock.h> struct GstAudioClock; GstClockTime (*GstAudioClockGetTimeFunc) (GstClock *clock,gpointer user_data); GstClock * gst_audio_clock_new (const gchar *name,GstAudioClockGetTimeFunc func,gpointer user_data,GDestroyNotify destroy_notify); GstClockTime gst_audio_clock_adjust (GstClock *clock,GstClockTime time); GstClockTime gst_audio_clock_get_time (GstClock *clock); void gst_audio_clock_reset (GstAudioClock *clock,GstClockTime time); void gst_audio_clock_invalidate (GstClock *clock);
GObject +----GInitiallyUnowned +----GstObject +----GstClock +----GstSystemClock +----GstAudioClock
GstAudioClock makes it easy for elements to implement a GstClock, they simply need to provide a function that returns the current clock time.
This object is internally used to implement the clock in GstAudioBaseSink.
Last reviewed on 2006-09-27 (0.10.12)
GstClockTime (*GstAudioClockGetTimeFunc) (GstClock *clock,gpointer user_data);
This function will be called whenever the current clock time needs to be calculated. If this function returns GST_CLOCK_TIME_NONE, the last reported time will be returned by the clock.
|
the GstAudioClock |
|
user data |
Returns : |
the current time or GST_CLOCK_TIME_NONE if the previous time should be used. |
GstClock * gst_audio_clock_new (const gchar *name,GstAudioClockGetTimeFunc func,gpointer user_data,GDestroyNotify destroy_notify);
Create a new GstAudioClock instance. Whenever the clock time should be
calculated it will call func with user_data. When func returns
GST_CLOCK_TIME_NONE, the clock will return the last reported time.
|
the name of the clock |
|
a function |
|
user data |
|
GDestroyNotify for user_data
|
Returns : |
a new GstAudioClock casted to a GstClock. |
GstClockTime gst_audio_clock_adjust (GstClock *clock,GstClockTime time);
Adjust time with the internal offset of the audio clock.
|
a GstAudioClock |
|
a GstClockTime |
Returns : |
time adjusted with the internal offset. |
GstClockTime gst_audio_clock_get_time (GstClock *clock);
Report the time as returned by the GstAudioClockGetTimeFunc without applying any offsets.
|
a GstAudioClock |
Returns : |
the time as reported by the time function of the audio clock |
void gst_audio_clock_reset (GstAudioClock *clock,GstClockTime time);
Inform clock that future calls to GstAudioClockGetTimeFunc will return values
starting from time. The clock will update an internal offset to make sure that
future calls to internal_time will return an increasing result as required by
the GstClock object.
|
a GstAudioClock |
|
a GstClockTime |
void gst_audio_clock_invalidate (GstClock *clock);
Invalidate the clock function. Call this function when the provided GstAudioClockGetTimeFunc cannot be called anymore, for example, when the user_data becomes invalid.
After calling this function, clock will return the last returned time for
the rest of its lifetime.
|
a GstAudioClock |