GstClock Abstract class for global clocks GStreamer uses a global clock to synchronise the plugins in a pipeline. Different clock implementations are possible by implementing this abstract base class. The clock time is always measured in nanoseconds, with the clock being set to 0 when the pipeline goes to READY. Usually all renderers sync to the global clock so that the clock is always a good measure of the time in the pipeline. #GstSystemClock A datatype to hold a time, measured in nanoseconds. A datatype to hold a timedifference, measured in nanoseconds. The function prototype of the callback. @clock: The clock that triggered the callback @time: The time it was triggered @id: The id that expired @user_data: user data passed in the async_wait call @Returns: A detatype to hold the handle to an outstanding async clock callback The return value of a clock operation. @GST_CLOCK_STOPPED: The clock is stopped. @GST_CLOCK_TIMEOUT: The operation timed out. @GST_CLOCK_EARLY: The operation was scheduled too late. @GST_CLOCK_ERROR: An error occured @GST_CLOCK_UNSUPPORTED: Constant to define an undefined clock time Constant that defines one GStreamer second Constant that defines one GStreamer millisecond Constant that defines one GStreamer microsecond Constant that defines one GStreamer nanosecond Calculate a difference between to clock times. @s: the first time @e: the second time Convert a GTimeVal to a GstClockTime @tv: the timeval to convert Convert a GstClockTime to a GTimeVal @t: The GstClockTime to convert @tv: The target timeval The opaque data structure of the clock. @clock: @speed: @Returns: @clock: @Returns: @speed: @clock: @active: @clock: @Returns: @clock: @clock: @time: @Returns: @clock: @Returns: @clock: @Returns: @id: @Returns: @clock: @Returns: @clock: @resolution: @Returns: