gi-gstaudio-1.0.24: GStreamerAudio bindings
CopyrightWill Thompson and Iñaki García Etxebarria
LicenseLGPL-2.1
MaintainerIñaki García Etxebarria
Safe HaskellSafe-Inferred
LanguageHaskell2010

GI.GstAudio.Objects.AudioBaseSrc

Description

This is the base class for audio sources. Subclasses need to implement the create_ringbuffer vmethod. This base class will then take care of reading samples from the ringbuffer, synchronisation and flushing.

Synopsis

Exported types

class (GObject o, IsDescendantOf AudioBaseSrc o) => IsAudioBaseSrc o Source #

Type class for types which can be safely cast to AudioBaseSrc, for instance with toAudioBaseSrc.

Instances

Instances details
(GObject o, IsDescendantOf AudioBaseSrc o) => IsAudioBaseSrc o Source # 
Instance details

Defined in GI.GstAudio.Objects.AudioBaseSrc

toAudioBaseSrc :: (MonadIO m, IsAudioBaseSrc o) => o -> m AudioBaseSrc Source #

Cast to AudioBaseSrc, for types for which this is known to be safe. For general casts, use castTo.

Methods

Click to display all available methods, including inherited ones

Expand

Methods

abortState, addControlBinding, addPad, addPropertyDeepNotifyWatch, addPropertyNotifyWatch, bindProperty, bindPropertyFull, callAsync, changeState, continueState, createAllPads, createRingbuffer, defaultError, forceFloating, foreachPad, foreachSinkPad, foreachSrcPad, freezeNotify, getv, hasActiveControlBindings, hasAncestor, hasAsAncestor, hasAsParent, isAsync, isFloating, isLive, isLockedState, iteratePads, iterateSinkPads, iterateSrcPads, link, linkFiltered, linkPads, linkPadsFiltered, linkPadsFull, lostState, messageFull, messageFullWithDetails, negotiate, newSeamlessSegment, newSegment, noMorePads, notify, notifyByPspec, postMessage, provideClock, query, queryConvert, queryDuration, queryLatency, queryPosition, ref, refSink, releaseRequestPad, removeControlBinding, removePad, removePropertyNotifyWatch, requestPad, requestPadSimple, runDispose, seek, seekSimple, sendEvent, startComplete, startWait, stealData, stealQdata, submitBufferList, suggestNextSync, syncStateWithParent, syncValues, thawNotify, unlink, unlinkPads, unparent, unref, waitPlaying, watchClosure.

Getters

getAllocator, getBaseTime, getBlocksize, getBufferPool, getBus, getClock, getCompatiblePad, getCompatiblePadTemplate, getContext, getContextUnlocked, getContexts, getControlBinding, getControlRate, getCurrentClockTime, getCurrentRunningTime, getData, getDoTimestamp, getFactory, getGValueArray, getMetadata, getName, getPadTemplate, getPadTemplateList, getParent, getPathString, getProperty, getProvideClock, getQdata, getRequestPad, getSlaveMethod, getStartTime, getState, getStaticPad, getValue.

Setters

setAsync, setAutomaticEos, setBaseTime, setBlocksize, setBus, setCaps, setClock, setContext, setControlBindingDisabled, setControlBindingsDisabled, setControlRate, setData, setDataFull, setDoTimestamp, setDynamicSize, setFormat, setLive, setLockedState, setName, setParent, setProperty, setProvideClock, setSlaveMethod, setStartTime, setState.

createRingbuffer

audioBaseSrcCreateRingbuffer Source #

Arguments

:: (HasCallStack, MonadIO m, IsAudioBaseSrc a) 
=> a

src: a AudioBaseSrc.

-> m AudioRingBuffer

Returns: The new ringbuffer of src.

Create and return the AudioRingBuffer for src. This function will call the create_ringbuffer vmethod and will set src as the parent of the returned buffer (see objectSetParent).

getProvideClock

audioBaseSrcGetProvideClock Source #

Arguments

:: (HasCallStack, MonadIO m, IsAudioBaseSrc a) 
=> a

src: a AudioBaseSrc

-> m Bool

Returns: True if src will provide a clock.

Queries whether src will provide a clock or not. See also gst_audio_base_src_set_provide_clock.

getSlaveMethod

audioBaseSrcGetSlaveMethod Source #

Arguments

:: (HasCallStack, MonadIO m, IsAudioBaseSrc a) 
=> a

src: a AudioBaseSrc

-> m AudioBaseSrcSlaveMethod

Returns: The current slave method used by src.

Get the current slave method used by src.

setProvideClock

audioBaseSrcSetProvideClock Source #

Arguments

:: (HasCallStack, MonadIO m, IsAudioBaseSrc a) 
=> a

src: a AudioBaseSrc

-> Bool

provide: new state

-> m () 

Controls whether src will provide a clock or not. If provide is True, elementProvideClock will return a clock that reflects the datarate of src. If provide is False, elementProvideClock will return NULL.

setSlaveMethod

audioBaseSrcSetSlaveMethod Source #

Arguments

:: (HasCallStack, MonadIO m, IsAudioBaseSrc a) 
=> a

src: a AudioBaseSrc

-> AudioBaseSrcSlaveMethod

method: the new slave method

-> m () 

Controls how clock slaving will be performed in src.

Properties

actualBufferTime

Actual configured size of audio buffer in microseconds.

getAudioBaseSrcActualBufferTime :: (MonadIO m, IsAudioBaseSrc o) => o -> m Int64 Source #

Get the value of the “actual-buffer-time” property. When overloading is enabled, this is equivalent to

get audioBaseSrc #actualBufferTime

actualLatencyTime

Actual configured audio latency in microseconds.

getAudioBaseSrcActualLatencyTime :: (MonadIO m, IsAudioBaseSrc o) => o -> m Int64 Source #

Get the value of the “actual-latency-time” property. When overloading is enabled, this is equivalent to

get audioBaseSrc #actualLatencyTime

bufferTime

No description available in the introspection data.

constructAudioBaseSrcBufferTime :: (IsAudioBaseSrc o, MonadIO m) => Int64 -> m (GValueConstruct o) Source #

Construct a GValueConstruct with valid value for the “buffer-time” property. This is rarely needed directly, but it is used by new.

getAudioBaseSrcBufferTime :: (MonadIO m, IsAudioBaseSrc o) => o -> m Int64 Source #

Get the value of the “buffer-time” property. When overloading is enabled, this is equivalent to

get audioBaseSrc #bufferTime

setAudioBaseSrcBufferTime :: (MonadIO m, IsAudioBaseSrc o) => o -> Int64 -> m () Source #

Set the value of the “buffer-time” property. When overloading is enabled, this is equivalent to

set audioBaseSrc [ #bufferTime := value ]

latencyTime

No description available in the introspection data.

constructAudioBaseSrcLatencyTime :: (IsAudioBaseSrc o, MonadIO m) => Int64 -> m (GValueConstruct o) Source #

Construct a GValueConstruct with valid value for the “latency-time” property. This is rarely needed directly, but it is used by new.

getAudioBaseSrcLatencyTime :: (MonadIO m, IsAudioBaseSrc o) => o -> m Int64 Source #

Get the value of the “latency-time” property. When overloading is enabled, this is equivalent to

get audioBaseSrc #latencyTime

setAudioBaseSrcLatencyTime :: (MonadIO m, IsAudioBaseSrc o) => o -> Int64 -> m () Source #

Set the value of the “latency-time” property. When overloading is enabled, this is equivalent to

set audioBaseSrc [ #latencyTime := value ]

provideClock

No description available in the introspection data.

constructAudioBaseSrcProvideClock :: (IsAudioBaseSrc o, MonadIO m) => Bool -> m (GValueConstruct o) Source #

Construct a GValueConstruct with valid value for the “provide-clock” property. This is rarely needed directly, but it is used by new.

getAudioBaseSrcProvideClock :: (MonadIO m, IsAudioBaseSrc o) => o -> m Bool Source #

Get the value of the “provide-clock” property. When overloading is enabled, this is equivalent to

get audioBaseSrc #provideClock

setAudioBaseSrcProvideClock :: (MonadIO m, IsAudioBaseSrc o) => o -> Bool -> m () Source #

Set the value of the “provide-clock” property. When overloading is enabled, this is equivalent to

set audioBaseSrc [ #provideClock := value ]

slaveMethod

No description available in the introspection data.

constructAudioBaseSrcSlaveMethod :: (IsAudioBaseSrc o, MonadIO m) => AudioBaseSrcSlaveMethod -> m (GValueConstruct o) Source #

Construct a GValueConstruct with valid value for the “slave-method” property. This is rarely needed directly, but it is used by new.

getAudioBaseSrcSlaveMethod :: (MonadIO m, IsAudioBaseSrc o) => o -> m AudioBaseSrcSlaveMethod Source #

Get the value of the “slave-method” property. When overloading is enabled, this is equivalent to

get audioBaseSrc #slaveMethod

setAudioBaseSrcSlaveMethod :: (MonadIO m, IsAudioBaseSrc o) => o -> AudioBaseSrcSlaveMethod -> m () Source #

Set the value of the “slave-method” property. When overloading is enabled, this is equivalent to

set audioBaseSrc [ #slaveMethod := value ]