Copyright | Will Thompson and Iñaki García Etxebarria |
---|---|
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 sources that only requires subclasses to implement a set of simple functions:
open()
:Open the device.prepare()
:Configure the device with the specified format.read()
:Read samples from the device.reset()
:Unblock reads and flush the device.delay()
:Get the number of samples in the device but not yet read.unprepare()
:Undo operations done by prepare.close()
:Close the device.
All scheduling of samples and timestamps is done in this base class
together with AudioBaseSrc
using a default implementation of a
AudioRingBuffer
that uses threads.
Synopsis
- newtype AudioSrc = AudioSrc (ManagedPtr AudioSrc)
- class (GObject o, IsDescendantOf AudioSrc o) => IsAudioSrc o
- toAudioSrc :: (MonadIO m, IsAudioSrc o) => o -> m AudioSrc
Exported types
Memory-managed wrapper type.
Instances
Eq AudioSrc Source # | |
GObject AudioSrc Source # | |
Defined in GI.GstAudio.Objects.AudioSrc | |
ManagedPtrNewtype AudioSrc Source # | |
Defined in GI.GstAudio.Objects.AudioSrc toManagedPtr :: AudioSrc -> ManagedPtr AudioSrc | |
TypedObject AudioSrc Source # | |
Defined in GI.GstAudio.Objects.AudioSrc | |
HasParentTypes AudioSrc Source # | |
Defined in GI.GstAudio.Objects.AudioSrc | |
IsGValue (Maybe AudioSrc) Source # | Convert |
Defined in GI.GstAudio.Objects.AudioSrc gvalueGType_ :: IO GType gvalueSet_ :: Ptr GValue -> Maybe AudioSrc -> IO () gvalueGet_ :: Ptr GValue -> IO (Maybe AudioSrc) | |
type ParentTypes AudioSrc Source # | |
Defined in GI.GstAudio.Objects.AudioSrc |
class (GObject o, IsDescendantOf AudioSrc o) => IsAudioSrc o Source #
Type class for types which can be safely cast to AudioSrc
, for instance with toAudioSrc
.
Instances
(GObject o, IsDescendantOf AudioSrc o) => IsAudioSrc o Source # | |
Defined in GI.GstAudio.Objects.AudioSrc |
toAudioSrc :: (MonadIO m, IsAudioSrc o) => o -> m AudioSrc 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, 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.