gi-gstaudio-1.0.25: 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.AudioSink

Description

This is the most simple base class for audio sinks that only requires subclasses to implement a set of simple functions:

  • open() :Open the device.
  • prepare() :Configure the device with the specified format.
  • write() :Write samples to the device.
  • reset() :Unblock writes and flush the device.
  • delay() :Get the number of samples written but not yet played by the device.
  • unprepare() :Undo operations done by prepare.
  • close() :Close the device.

All scheduling of samples and timestamps is done in this base class together with AudioBaseSink using a default implementation of a AudioRingBuffer that uses threads.

Synopsis

Exported types

newtype AudioSink Source #

Memory-managed wrapper type.

Constructors

AudioSink (ManagedPtr AudioSink) 

Instances

Instances details
Eq AudioSink Source # 
Instance details

Defined in GI.GstAudio.Objects.AudioSink

GObject AudioSink Source # 
Instance details

Defined in GI.GstAudio.Objects.AudioSink

ManagedPtrNewtype AudioSink Source # 
Instance details

Defined in GI.GstAudio.Objects.AudioSink

Methods

toManagedPtr :: AudioSink -> ManagedPtr AudioSink

TypedObject AudioSink Source # 
Instance details

Defined in GI.GstAudio.Objects.AudioSink

Methods

glibType :: IO GType

HasParentTypes AudioSink Source # 
Instance details

Defined in GI.GstAudio.Objects.AudioSink

IsGValue (Maybe AudioSink) Source #

Convert AudioSink to and from GValue. See toGValue and fromGValue.

Instance details

Defined in GI.GstAudio.Objects.AudioSink

Methods

gvalueGType_ :: IO GType

gvalueSet_ :: Ptr GValue -> Maybe AudioSink -> IO ()

gvalueGet_ :: Ptr GValue -> IO (Maybe AudioSink)

type ParentTypes AudioSink Source # 
Instance details

Defined in GI.GstAudio.Objects.AudioSink

type ParentTypes AudioSink = '[AudioBaseSink, BaseSink, Element, Object, Object]

class (GObject o, IsDescendantOf AudioSink o) => IsAudioSink o Source #

Type class for types which can be safely cast to AudioSink, for instance with toAudioSink.

Instances

Instances details
(GObject o, IsDescendantOf AudioSink o) => IsAudioSink o Source # 
Instance details

Defined in GI.GstAudio.Objects.AudioSink

toAudioSink :: (MonadIO m, IsAudioSink o) => o -> m AudioSink Source #

Cast to AudioSink, 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, doPreroll, forceFloating, foreachPad, foreachSinkPad, foreachSrcPad, freezeNotify, getv, hasActiveControlBindings, hasAncestor, hasAsAncestor, hasAsParent, isAsyncEnabled, isFloating, isLastSampleEnabled, isLockedState, isQosEnabled, iteratePads, iterateSinkPads, iterateSrcPads, link, linkFiltered, linkPads, linkPadsFiltered, linkPadsFull, lostState, messageFull, messageFullWithDetails, noMorePads, notify, notifyByPspec, postMessage, provideClock, query, queryConvert, queryDuration, queryLatency, queryPosition, ref, refSink, releaseRequestPad, removeControlBinding, removePad, removePropertyNotifyWatch, reportDeviceFailure, requestPad, requestPadSimple, runDispose, seek, seekSimple, sendEvent, stealData, stealQdata, suggestNextSync, syncStateWithParent, syncValues, thawNotify, unlink, unlinkPads, unparent, unref, wait, waitClock, waitPreroll, watchClosure.

Getters

getAlignmentThreshold, getBaseTime, getBlocksize, getBus, getClock, getCompatiblePad, getCompatiblePadTemplate, getContext, getContextUnlocked, getContexts, getControlBinding, getControlRate, getCurrentClockTime, getCurrentRunningTime, getData, getDiscontWait, getDriftTolerance, getDropOutOfSegment, getFactory, getGValueArray, getLastSample, getLatency, getMaxBitrate, getMaxLateness, getMetadata, getName, getPadTemplate, getPadTemplateList, getParent, getPathString, getProcessingDeadline, getProperty, getProvideClock, getQdata, getRenderDelay, getRequestPad, getSlaveMethod, getStartTime, getState, getStaticPad, getStats, getSync, getThrottleTime, getTsOffset, getValue.

Setters

setAlignmentThreshold, setAsyncEnabled, setBaseTime, setBlocksize, setBus, setClock, setContext, setControlBindingDisabled, setControlBindingsDisabled, setControlRate, setCustomSlavingCallback, setData, setDataFull, setDiscontWait, setDriftTolerance, setDropOutOfSegment, setLastSampleEnabled, setLockedState, setMaxBitrate, setMaxLateness, setName, setParent, setProcessingDeadline, setProperty, setProvideClock, setQosEnabled, setRenderDelay, setSlaveMethod, setStartTime, setState, setSync, setThrottleTime, setTsOffset.