Package org.freedesktop.gstreamer.audio
Class AudioBaseSink
-
Nested Class Summary
Modifier and TypeClassDescriptionstatic class
GstAudioBaseSink
class.static class
AudioBaseSink.Builder<B extends AudioBaseSink.Builder<B>>
Inner class implementing a builder pattern to construct a GObject with properties.Nested classes/interfaces inherited from class org.freedesktop.gstreamer.base.BaseSink
BaseSink.BaseSinkClass, BaseSink.BaseSinkImpl
Nested classes/interfaces inherited from class org.freedesktop.gstreamer.gst.Element
Element.ElementClass, Element.ElementImpl, Element.NoMorePadsCallback, Element.PadAddedCallback, Element.PadRemovedCallback
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
ConstructorDescriptionAudioBaseSink
(MemorySegment address) Create a AudioBaseSink proxy instance for the provided memory address. -
Method Summary
Modifier and TypeMethodDescriptionprotected AudioBaseSink
asParent()
Returns this instance as if it were its parent type.static AudioBaseSink.Builder
<? extends AudioBaseSink.Builder> builder()
AAudioBaseSink.Builder
object constructs aAudioBaseSink
with the specified properties.Create and return theGstAudioRingBuffer
for this AudioBaseSink.Get the current alignment threshold, in nanoseconds, used by this AudioBaseSink.Get the current discont wait, in nanoseconds, used by this AudioBaseSink.long
Get the current drift tolerance, in microseconds, used by this AudioBaseSink.static MemoryLayout
The memory layout of the native struct.boolean
Queries whether this AudioBaseSink will provide a clock or not.Get the current slave method used by this AudioBaseSink.static Type
getType()
Get the GType of the AudioBaseSink classprotected Buffer
payload data in a format suitable to write to the sink.void
Informs this base class that the audio output device has failed for some reason, causing a discontinuity (for example, because the device recovered from the error, but lost all contents of its ring buffer).void
setAlignmentThreshold
(ClockTime alignmentThreshold) Controls the sink's alignment threshold.void
Sets the custom slaving callback.void
setDiscontWait
(ClockTime discontWait) Controls how long the sink will wait before creating a discontinuity.void
setDriftTolerance
(long driftTolerance) Controls the sink's drift tolerance.void
setProvideClock
(boolean provide) Controls whether this AudioBaseSink will provide a clock or not.void
Controls how clock slaving will be performed in this AudioBaseSink.Methods inherited from class org.freedesktop.gstreamer.base.BaseSink
activatePull, doPreroll, event, fixate, getBlocksize, getCaps, getDropOutOfSegment, getLastSample, getLatency, getMaxBitrate, getMaxLateness, getProcessingDeadline, getRenderDelay, getStats, getSync, getThrottleTime, getTimes, getTsOffset, isAsyncEnabled, isLastSampleEnabled, isQosEnabled, prepare, prepareList, preroll, proposeAllocation, query, queryLatency, render, renderList, setAsyncEnabled, setBlocksize, setCaps, setDropOutOfSegment, setLastSampleEnabled, setMaxBitrate, setMaxLateness, setProcessingDeadline, setQosEnabled, setRenderDelay, setSync, setThrottleTime, setTsOffset, start, stop, unlock, unlockStop, wait_, waitClock, waitEvent, waitPreroll
Methods inherited from class org.freedesktop.gstreamer.gst.Element
abortState, addPad, addPropertyDeepNotifyWatch, addPropertyNotifyWatch, callAsync, changeState, continueState, createAllPads, decorateStreamId, decorateStreamIdPrintf, emitNoMorePads, emitPadAdded, emitPadRemoved, foreachPad, foreachSinkPad, foreachSrcPad, getBaseTime, getBus, getClock, getCompatiblePad, getCompatiblePadTemplate, getContext, getContexts, getContextUnlocked, getCurrentClockTime, getCurrentRunningTime, getFactory, getMetadata, getPadTemplate, getPadTemplateList, getRequestPad, getStartTime, getState, getStaticPad, isLockedState, iteratePads, iterateSinkPads, iterateSrcPads, link, linkFiltered, linkMany, linkPads, linkPadsFiltered, linkPadsFull, linkPadsFull, lostState, makeFromUri, messageFull, messageFull, messageFullWithDetails, messageFullWithDetails, noMorePads, onNoMorePads, onPadAdded, onPadRemoved, padAdded, padRemoved, postMessage, provideClock, queryConvert, queryDuration, queryPosition, register, releasePad, releaseRequestPad, removePad, removePropertyNotifyWatch, requestPad, requestPadSimple, seek, seek, seekSimple, seekSimple, sendEvent, setBaseTime, setBus, setClock, setContext, setLockedState, setStartTime, setState, stateChanged, stateChangeReturnGetName, stateGetName, syncStateWithParent, typeSetSkipDocumentation, unlink, unlinkMany, unlinkPads
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
-
AudioBaseSink
Create a AudioBaseSink proxy instance for the provided memory address.- Parameters:
address
- the memory address of the native object
-
-
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. -
createRingbuffer
Create and return theGstAudioRingBuffer
for this AudioBaseSink. This function will call the ::create_ringbuffer vmethod and will set this AudioBaseSink as the parent of the returned buffer (see gst_object_set_parent()).- Returns:
- The new ringbuffer of this AudioBaseSink.
-
getAlignmentThreshold
Get the current alignment threshold, in nanoseconds, used by this AudioBaseSink.- Returns:
- The current alignment threshold used by this AudioBaseSink.
-
getDiscontWait
Get the current discont wait, in nanoseconds, used by this AudioBaseSink.- Returns:
- The current discont wait used by this AudioBaseSink.
-
getDriftTolerance
public long getDriftTolerance()Get the current drift tolerance, in microseconds, used by this AudioBaseSink.- Returns:
- The current drift tolerance used by this AudioBaseSink.
-
getProvideClock
public boolean getProvideClock()Queries whether this AudioBaseSink will provide a clock or not. See also gst_audio_base_sink_set_provide_clock.- Returns:
true
if this AudioBaseSink will provide a clock.
-
getSlaveMethod
Get the current slave method used by this AudioBaseSink.- Returns:
- The current slave method used by this AudioBaseSink.
-
reportDeviceFailure
public void reportDeviceFailure()Informs this base class that the audio output device has failed for some reason, causing a discontinuity (for example, because the device recovered from the error, but lost all contents of its ring buffer). This function is typically called by derived classes, and is useful for the custom slave method. -
setAlignmentThreshold
Controls the sink's alignment threshold.- Parameters:
alignmentThreshold
- the new alignment threshold in nanoseconds
-
setCustomSlavingCallback
Sets the custom slaving callback. This callback will be invoked if the slave-method property is set to GST_AUDIO_BASE_SINK_SLAVE_CUSTOM and the audio sink receives and plays samples.Setting the callback to NULL causes the sink to behave as if the GST_AUDIO_BASE_SINK_SLAVE_NONE method were used.
- Parameters:
callback
- aGstAudioBaseSinkCustomSlavingCallback
-
setDiscontWait
Controls how long the sink will wait before creating a discontinuity.- Parameters:
discontWait
- the new discont wait in nanoseconds
-
setDriftTolerance
public void setDriftTolerance(long driftTolerance) Controls the sink's drift tolerance.- Parameters:
driftTolerance
- the new drift tolerance in microseconds
-
setProvideClock
public void setProvideClock(boolean provide) Controls whether this AudioBaseSink will provide a clock or not. Ifprovide
istrue
, gst_element_provide_clock() will return a clock that reflects the datarate of this AudioBaseSink. Ifprovide
isfalse
, gst_element_provide_clock() will return NULL.- Parameters:
provide
- new state
-
setSlaveMethod
Controls how clock slaving will be performed in this AudioBaseSink.- Parameters:
method
- the new slave method
-
payload
-
builder
AAudioBaseSink.Builder
object constructs aAudioBaseSink
with the specified properties. Use the variousset...()
methods to set properties, and finish construction withAudioBaseSink.Builder.build()
.
-