Copyright | Will Thompson Iñaki García Etxebarria and Jonas Platte |
---|---|
License | LGPL-2.1 |
Maintainer | Iñaki García Etxebarria (inaki@blueleaf.cc) |
Safe Haskell | None |
Language | Haskell2010 |
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
- newtype AudioBaseSrc = AudioBaseSrc (ManagedPtr AudioBaseSrc)
- class (GObject o, IsDescendantOf AudioBaseSrc o) => IsAudioBaseSrc o
- toAudioBaseSrc :: (MonadIO m, IsAudioBaseSrc o) => o -> m AudioBaseSrc
- noAudioBaseSrc :: Maybe AudioBaseSrc
- audioBaseSrcCreateRingbuffer :: (HasCallStack, MonadIO m, IsAudioBaseSrc a) => a -> m AudioRingBuffer
- audioBaseSrcGetProvideClock :: (HasCallStack, MonadIO m, IsAudioBaseSrc a) => a -> m Bool
- audioBaseSrcGetSlaveMethod :: (HasCallStack, MonadIO m, IsAudioBaseSrc a) => a -> m AudioBaseSrcSlaveMethod
- audioBaseSrcSetProvideClock :: (HasCallStack, MonadIO m, IsAudioBaseSrc a) => a -> Bool -> m ()
- audioBaseSrcSetSlaveMethod :: (HasCallStack, MonadIO m, IsAudioBaseSrc a) => a -> AudioBaseSrcSlaveMethod -> m ()
- getAudioBaseSrcActualBufferTime :: (MonadIO m, IsAudioBaseSrc o) => o -> m Int64
- getAudioBaseSrcActualLatencyTime :: (MonadIO m, IsAudioBaseSrc o) => o -> m Int64
- constructAudioBaseSrcBufferTime :: IsAudioBaseSrc o => Int64 -> IO (GValueConstruct o)
- getAudioBaseSrcBufferTime :: (MonadIO m, IsAudioBaseSrc o) => o -> m Int64
- setAudioBaseSrcBufferTime :: (MonadIO m, IsAudioBaseSrc o) => o -> Int64 -> m ()
- constructAudioBaseSrcLatencyTime :: IsAudioBaseSrc o => Int64 -> IO (GValueConstruct o)
- getAudioBaseSrcLatencyTime :: (MonadIO m, IsAudioBaseSrc o) => o -> m Int64
- setAudioBaseSrcLatencyTime :: (MonadIO m, IsAudioBaseSrc o) => o -> Int64 -> m ()
- constructAudioBaseSrcProvideClock :: IsAudioBaseSrc o => Bool -> IO (GValueConstruct o)
- getAudioBaseSrcProvideClock :: (MonadIO m, IsAudioBaseSrc o) => o -> m Bool
- setAudioBaseSrcProvideClock :: (MonadIO m, IsAudioBaseSrc o) => o -> Bool -> m ()
- constructAudioBaseSrcSlaveMethod :: IsAudioBaseSrc o => AudioBaseSrcSlaveMethod -> IO (GValueConstruct o)
- getAudioBaseSrcSlaveMethod :: (MonadIO m, IsAudioBaseSrc o) => o -> m AudioBaseSrcSlaveMethod
- setAudioBaseSrcSlaveMethod :: (MonadIO m, IsAudioBaseSrc o) => o -> AudioBaseSrcSlaveMethod -> m ()
Exported types
newtype AudioBaseSrc Source #
Memory-managed wrapper type.
Instances
GObject AudioBaseSrc Source # | |
Defined in GI.GstAudio.Objects.AudioBaseSrc gobjectType :: IO GType # | |
HasParentTypes AudioBaseSrc Source # | |
Defined in GI.GstAudio.Objects.AudioBaseSrc | |
type ParentTypes AudioBaseSrc Source # | |
Defined in GI.GstAudio.Objects.AudioBaseSrc type ParentTypes AudioBaseSrc = PushSrc ': (BaseSrc ': (Element ': (Object ': (Object ': ([] :: [Type]))))) |
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
(GObject o, IsDescendantOf AudioBaseSrc o) => IsAudioBaseSrc o Source # | |
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
.
noAudioBaseSrc :: Maybe AudioBaseSrc Source #
A convenience alias for Nothing
:: Maybe
AudioBaseSrc
.
Methods
createRingbuffer
audioBaseSrcCreateRingbuffer Source #
:: (HasCallStack, MonadIO m, IsAudioBaseSrc a) | |
=> a |
|
-> m AudioRingBuffer | Returns: The new ringbuffer of |
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 #
:: (HasCallStack, MonadIO m, IsAudioBaseSrc a) | |
=> a |
|
-> m Bool | Returns: |
Queries whether src
will provide a clock or not. See also
gst_audio_base_src_set_provide_clock.
getSlaveMethod
audioBaseSrcGetSlaveMethod Source #
:: (HasCallStack, MonadIO m, IsAudioBaseSrc a) | |
=> a |
|
-> m AudioBaseSrcSlaveMethod | Returns: The current slave method used by |
Get the current slave method used by src
.
setProvideClock
audioBaseSrcSetProvideClock Source #
:: (HasCallStack, MonadIO m, IsAudioBaseSrc a) | |
=> a |
|
-> Bool |
|
-> 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 #
:: (HasCallStack, MonadIO m, IsAudioBaseSrc a) | |
=> a |
|
-> AudioBaseSrcSlaveMethod |
|
-> 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 => Int64 -> IO (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 => Int64 -> IO (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 => Bool -> IO (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 => AudioBaseSrcSlaveMethod -> IO (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 ]