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
Nested ClassesModifier and TypeClassDescriptionstatic classstatic classAudioClock.Builder<B extends AudioClock.Builder<B>>Inner class implementing a builder pattern to construct a GObject with properties.Nested classes/interfaces inherited from class SystemClock
SystemClock.SystemClockClassNested classes/interfaces inherited from class Clock
Clock.Clock$Impl, Clock.ClockClass, Clock.SyncedCallbackNested classes/interfaces inherited from class GstObject
GstObject.DeepNotifyCallback, GstObject.Object$Impl, GstObject.ObjectClassNested classes/interfaces inherited from class InitiallyUnowned
InitiallyUnowned.InitiallyUnownedClassNested classes/interfaces inherited from class GObject
GObject.NotifyCallback -
Constructor Summary
ConstructorsConstructorDescriptionCreate a new AudioClock.AudioClock(MemorySegment address) Create a AudioClock instance for the provided memory address.AudioClock(String name, @Nullable AudioClockGetTimeFunc func) Create a newGstAudioClockinstance. -
Method Summary
Modifier and TypeMethodDescriptionAdjusttimewith the internal offset of the audio clock.protected AudioClockasParent()Return this instance as if it were its parent type.static AudioClock.Builder<? extends AudioClock.Builder> builder()AAudioClock.Builderobject constructs aAudioClockwith the specified properties.static MemoryLayoutThe memory layout of the native struct.getTime()Report the time as returned by theGstAudioClockGetTimeFuncwithout applying any offsets.static @Nullable TypegetType()Get the GType of the AudioClock class.voidInvalidate the clock function.voidInform this AudioClock that future calls toGstAudioClockGetTimeFuncwill 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 theGstClockobject.Methods inherited from class SystemClock
obtain, setDefaultMethods inherited from class 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, waitForSyncMethods inherited from class 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, unrefMethods inherited from class 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, 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, withPropertiesMethods inherited from class TypeInstance
callParent, callParent, cast, getPrivate, readGClass, writeGClassMethods inherited from class ProxyInstance
equals, handle, hashCode
-
Constructor Details
-
AudioClock
Create a AudioClock instance for the provided memory address.- Parameters:
address- the memory address of the native object
-
AudioClock
Create a newGstAudioClockinstance. Whenever the clock time should be calculated it will callfuncwithuserData.WhenfuncreturnsGST_CLOCK_TIME_NONE, the clock will return the last reported time.- Parameters:
name- the name of the clockfunc- a function
-
AudioClock
public AudioClock()Create a new AudioClock.
-
-
Method Details
-
getType
-
getMemoryLayout
The memory layout of the native struct.- Returns:
- the memory layout
-
asParent
Return this instance as if it were its parent type. Comparable to the Javasuperkeyword, but ensures the parent typeclass is also used in native code.- Overrides:
asParentin classSystemClock- Returns:
- the instance as if it were its parent type
-
adjust
-
getTime
-
invalidate
public void invalidate()Invalidate the clock function. Call this function when the provided
GstAudioClockGetTimeFunccannot 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 toGstAudioClockGetTimeFuncwill 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 theGstClockobject.- Parameters:
time- aGstClockTime
-
builder
AAudioClock.Builderobject constructs aAudioClockwith the specified properties. Use the variousset...()methods to set properties, and finish construction withAudioClock.Builder.build().- Returns:
- the builder object
-