Copyright | Will Thompson Iñaki García Etxebarria and Jonas Platte |
---|---|
License | LGPL-2.1 |
Maintainer | Iñaki García Etxebarria |
Safe Haskell | Safe-Inferred |
Language | Haskell2010 |
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
- newtype AudioSink = AudioSink (ManagedPtr AudioSink)
- class (GObject o, IsDescendantOf AudioSink o) => IsAudioSink o
- toAudioSink :: (MonadIO m, IsAudioSink o) => o -> m AudioSink
Exported types
Memory-managed wrapper type.
Instances
Eq AudioSink Source # | |
GObject AudioSink Source # | |
Defined in GI.GstAudio.Objects.AudioSink | |
ManagedPtrNewtype AudioSink Source # | |
Defined in GI.GstAudio.Objects.AudioSink toManagedPtr :: AudioSink -> ManagedPtr AudioSink | |
TypedObject AudioSink Source # | |
Defined in GI.GstAudio.Objects.AudioSink | |
HasParentTypes AudioSink Source # | |
Defined in GI.GstAudio.Objects.AudioSink | |
IsGValue (Maybe AudioSink) Source # | Convert |
Defined in GI.GstAudio.Objects.AudioSink gvalueGType_ :: IO GType gvalueSet_ :: Ptr GValue -> Maybe AudioSink -> IO () gvalueGet_ :: Ptr GValue -> IO (Maybe AudioSink) | |
type ParentTypes AudioSink Source # | |
Defined in GI.GstAudio.Objects.AudioSink |
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
(GObject o, IsDescendantOf AudioSink o) => IsAudioSink o Source # | |
Defined in GI.GstAudio.Objects.AudioSink |
toAudioSink :: (MonadIO m, IsAudioSink o) => o -> m AudioSink Source #
Methods
Click to display all available methods, including inherited ones
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, 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.