Package org.freedesktop.gstreamer.audio
Class AudioClock
- All Implemented Interfaces:
Proxy
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
.
-
Nested Class Summary
Modifier and TypeClassDescriptionstatic class
static class
AudioClock.Builder<B extends AudioClock.Builder<B>>
Inner class implementing a builder pattern to construct a GObject with properties.Nested classes/interfaces inherited from class org.freedesktop.gstreamer.gst.SystemClock
SystemClock.SystemClockClass
Nested classes/interfaces inherited from class org.freedesktop.gstreamer.gst.Clock
Clock.ClockClass, Clock.ClockImpl, Clock.SyncedCallback
Nested classes/interfaces inherited from class org.freedesktop.gstreamer.gst.GstObject
GstObject.DeepNotifyCallback, GstObject.ObjectClass, GstObject.ObjectImpl
Nested classes/interfaces inherited from class org.gnome.gobject.InitiallyUnowned
InitiallyUnowned.InitiallyUnownedClass
Nested classes/interfaces inherited from class org.gnome.gobject.GObject
GObject.NotifyCallback
-
Constructor Summary
ConstructorDescriptionAudioClock
(MemorySegment address) Create a AudioClock proxy instance for the provided memory address.AudioClock
(String name, AudioClockGetTimeFunc func) Create a newGstAudioClock
instance. -
Method Summary
Modifier and TypeMethodDescriptionAdjusttime
with the internal offset of the audio clock.protected AudioClock
asParent()
Returns this instance as if it were its parent type.static AudioClock.Builder
<? extends AudioClock.Builder> builder()
AAudioClock.Builder
object constructs aAudioClock
with the specified properties.static MemoryLayout
The memory layout of the native struct.getTime()
Report the time as returned by theGstAudioClockGetTimeFunc
without applying any offsets.static Type
getType()
Get the GType of the AudioClock classvoid
Invalidate the clock function.void
Inform this AudioClock that future calls toGstAudioClockGetTimeFunc
will return values starting fromtime
.Methods inherited from class org.freedesktop.gstreamer.gst.SystemClock
obtain, setDefault
Methods inherited from class org.freedesktop.gstreamer.gst.Clock
addObservation, addObservationUnapplied, adjustUnlocked, adjustWithCalibration, changeResolution, emitSynced, getCalibration, getInternalTime, getMaster, getResolution, getTimeout, idCompareFunc, idGetClock, idGetTime, idRef, idUnref, idUnschedule, idUsesClock, idWait, idWaitAsync, isSynced, newPeriodicId, newSingleShotId, onSynced, periodicIdReinit, setCalibration, setMaster, setResolution, setSynced, setTimeout, singleShotIdReinit, unadjustUnlocked, unadjustWithCalibration, unschedule, wait_, waitAsync, waitForSync
Methods inherited from class org.freedesktop.gstreamer.gst.GstObject
addControlBinding, checkUniqueness, deepNotify, defaultDeepNotify, defaultError, emitDeepNotify, getControlBinding, getControlRate, getGValueArray, getName, getParent, getPathString, getValue, getValueArray, hasActiveControlBindings, hasAncestor, hasAsAncestor, hasAsParent, onDeepNotify, ref, refSink, removeControlBinding, replace, setControlBindingDisabled, setControlBindingsDisabled, setControlRate, setName, setParent, suggestNextSync, syncValues, unparent, unref
Methods inherited from class org.gnome.gobject.GObject
addToggleRef, addWeakPointer, bindProperty, bindProperty, bindProperty, bindPropertyFull, bindPropertyFull, bindPropertyWithClosures, bindPropertyWithClosures, compatControl, connect, connect, connect, constructed, disconnect, dispatchPropertiesChanged, dispose, dupData, dupQdata, emit, emitNotify, finalize_, forceFloating, freezeNotify, get, getData, getProperty, getProperty, getProperty, getQdata, getv, interfaceFindProperty, interfaceInstallProperty, interfaceListProperties, isFloating, newInstance, newInstance, newInstance, newInstance, newv, notify_, notify_, notifyByPspec, onNotify, refSink, removeToggleRef, removeWeakPointer, replaceData, replaceQdata, runDispose, set, setData, setDataFull, setProperty, setProperty, setProperty, setQdata, setQdataFull, setv, stealData, stealQdata, takeRef, thawNotify, watchClosure, weakRef, weakUnref, withProperties
Methods inherited from class org.gnome.gobject.TypeInstance
callParent, callParent, getPrivate, readGClass, writeGClass
Methods inherited from class io.github.jwharm.javagi.base.ProxyInstance
equals, handle, hashCode
-
Constructor Details
-
AudioClock
Create a AudioClock proxy instance for the provided memory address.- Parameters:
address
- the memory address of the native object
-
AudioClock
Create a newGstAudioClock
instance. Whenever the clock time should be calculated it will callfunc
withuserData
. Whenfunc
returnsGST_CLOCK_TIME_NONE
, the clock will return the last reported time.- Parameters:
name
- the name of the clockfunc
- a function
-
-
Method Details
-
getType
-
getMemoryLayout
The memory layout of the native struct.- Returns:
- the memory layout
-
asParent
Returns this instance as if it were its parent type. This is mostly synonymous to the Javasuper
keyword, but will set the native typeclass function pointers to the parent type. When overriding a native virtual method in Java, "chaining up" withsuper.methodName()
doesn't work, because it invokes the overridden function pointer again. To chain up, callasParent().methodName()
. This will call the native function pointer of this virtual method in the typeclass of the parent type.- Overrides:
asParent
in classSystemClock
-
adjust
-
getTime
-
invalidate
public void invalidate()Invalidate the clock function. Call this function when the providedGstAudioClockGetTimeFunc
cannot be called anymore, for example, when the user_data becomes invalid.After calling this function, this AudioClock will return the last returned time for the rest of its lifetime.
-
reset
Inform this AudioClock that future calls toGstAudioClockGetTimeFunc
will return values starting fromtime
. The clock will update an internal offset to make sure that future calls to internal_time will return an increasing result as required by theGstClock
object.- Parameters:
time
- aGstClockTime
-
builder
AAudioClock.Builder
object constructs aAudioClock
with the specified properties. Use the variousset...()
methods to set properties, and finish construction withAudioClock.Builder.build()
.
-