gi-gstaudio-1.0.12: GStreamerAudio bindings

CopyrightWill Thompson, Iñaki García Etxebarria and Jonas Platte
LicenseLGPL-2.1
MaintainerIñaki García Etxebarria (garetxe@gmail.com)
Safe HaskellNone
LanguageHaskell2010

GI.GstAudio.Objects.AudioBaseSink

Contents

Description

This is the base class for audio sinks. Subclasses need to implement the ::create_ringbuffer vmethod. This base class will then take care of writing samples to the ringbuffer, synchronisation, clipping and flushing.

Synopsis

Exported types

Methods

createRingbuffer

audioBaseSinkCreateRingbuffer Source #

Arguments

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

sink: a AudioBaseSink.

-> m AudioRingBuffer

Returns: The new ringbuffer of sink.

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

getAlignmentThreshold

audioBaseSinkGetAlignmentThreshold Source #

Arguments

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

sink: a AudioBaseSink

-> m Word64

Returns: The current alignment threshold used by sink.

Get the current alignment threshold, in nanoseconds, used by sink.

getDiscontWait

audioBaseSinkGetDiscontWait Source #

Arguments

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

sink: a AudioBaseSink

-> m Word64

Returns: The current discont wait used by sink.

Get the current discont wait, in nanoseconds, used by sink.

getDriftTolerance

audioBaseSinkGetDriftTolerance Source #

Arguments

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

sink: a AudioBaseSink

-> m Int64

Returns: The current drift tolerance used by sink.

Get the current drift tolerance, in microseconds, used by sink.

getProvideClock

audioBaseSinkGetProvideClock Source #

Arguments

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

sink: a AudioBaseSink

-> m Bool

Returns: True if sink will provide a clock.

Queries whether sink will provide a clock or not. See also gst_audio_base_sink_set_provide_clock.

getSlaveMethod

audioBaseSinkGetSlaveMethod Source #

Arguments

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

sink: a AudioBaseSink

-> m AudioBaseSinkSlaveMethod

Returns: The current slave method used by sink.

Get the current slave method used by sink.

reportDeviceFailure

audioBaseSinkReportDeviceFailure Source #

Arguments

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

sink: a AudioBaseSink

-> m () 

Informs this base class that the audio output device has failed for some reason, causing a discontinuity (for example, because the device recovered from the error, but lost all contents of its ring buffer). This function is typically called by derived classes, and is useful for the custom slave method.

Since: 1.6

setAlignmentThreshold

audioBaseSinkSetAlignmentThreshold Source #

Arguments

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

sink: a AudioBaseSink

-> Word64

alignmentThreshold: the new alignment threshold in nanoseconds

-> m () 

Controls the sink's alignment threshold.

setCustomSlavingCallback

audioBaseSinkSetCustomSlavingCallback Source #

Sets the custom slaving callback. This callback will be invoked if the slave-method property is set to GST_AUDIO_BASE_SINK_SLAVE_CUSTOM and the audio sink receives and plays samples.

Setting the callback to NULL causes the sink to behave as if the GST_AUDIO_BASE_SINK_SLAVE_NONE method were used.

Since: 1.6

setDiscontWait

audioBaseSinkSetDiscontWait Source #

Arguments

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

sink: a AudioBaseSink

-> Word64

discontWait: the new discont wait in nanoseconds

-> m () 

Controls how long the sink will wait before creating a discontinuity.

setDriftTolerance

audioBaseSinkSetDriftTolerance Source #

Arguments

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

sink: a AudioBaseSink

-> Int64

driftTolerance: the new drift tolerance in microseconds

-> m () 

Controls the sink's drift tolerance.

setProvideClock

audioBaseSinkSetProvideClock Source #

Arguments

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

sink: a AudioBaseSink

-> Bool

provide: new state

-> m () 

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

setSlaveMethod

audioBaseSinkSetSlaveMethod Source #

Arguments

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

sink: a AudioBaseSink

-> AudioBaseSinkSlaveMethod

method: the new slave method

-> m () 

Controls how clock slaving will be performed in sink.

Properties

alignmentThreshold

data AudioBaseSinkAlignmentThresholdPropertyInfo Source #

Instances

AttrInfo AudioBaseSinkAlignmentThresholdPropertyInfo Source # 
type AttrOrigin AudioBaseSinkAlignmentThresholdPropertyInfo Source # 
type AttrLabel AudioBaseSinkAlignmentThresholdPropertyInfo Source # 
type AttrGetType AudioBaseSinkAlignmentThresholdPropertyInfo Source # 
type AttrBaseTypeConstraint AudioBaseSinkAlignmentThresholdPropertyInfo Source # 
type AttrSetTypeConstraint AudioBaseSinkAlignmentThresholdPropertyInfo Source # 
type AttrAllowedOps AudioBaseSinkAlignmentThresholdPropertyInfo Source # 

bufferTime

data AudioBaseSinkBufferTimePropertyInfo Source #

Instances

AttrInfo AudioBaseSinkBufferTimePropertyInfo Source # 
type AttrOrigin AudioBaseSinkBufferTimePropertyInfo Source # 
type AttrLabel AudioBaseSinkBufferTimePropertyInfo Source # 
type AttrGetType AudioBaseSinkBufferTimePropertyInfo Source # 
type AttrBaseTypeConstraint AudioBaseSinkBufferTimePropertyInfo Source # 
type AttrSetTypeConstraint AudioBaseSinkBufferTimePropertyInfo Source # 
type AttrAllowedOps AudioBaseSinkBufferTimePropertyInfo Source # 

canActivatePull

data AudioBaseSinkCanActivatePullPropertyInfo Source #

Instances

AttrInfo AudioBaseSinkCanActivatePullPropertyInfo Source # 
type AttrOrigin AudioBaseSinkCanActivatePullPropertyInfo Source # 
type AttrLabel AudioBaseSinkCanActivatePullPropertyInfo Source # 
type AttrGetType AudioBaseSinkCanActivatePullPropertyInfo Source # 
type AttrBaseTypeConstraint AudioBaseSinkCanActivatePullPropertyInfo Source # 
type AttrSetTypeConstraint AudioBaseSinkCanActivatePullPropertyInfo Source # 
type AttrAllowedOps AudioBaseSinkCanActivatePullPropertyInfo Source # 

discontWait

data AudioBaseSinkDiscontWaitPropertyInfo Source #

Instances

AttrInfo AudioBaseSinkDiscontWaitPropertyInfo Source # 
type AttrOrigin AudioBaseSinkDiscontWaitPropertyInfo Source # 
type AttrLabel AudioBaseSinkDiscontWaitPropertyInfo Source # 
type AttrGetType AudioBaseSinkDiscontWaitPropertyInfo Source # 
type AttrBaseTypeConstraint AudioBaseSinkDiscontWaitPropertyInfo Source # 
type AttrSetTypeConstraint AudioBaseSinkDiscontWaitPropertyInfo Source # 
type AttrAllowedOps AudioBaseSinkDiscontWaitPropertyInfo Source # 

driftTolerance

data AudioBaseSinkDriftTolerancePropertyInfo Source #

Instances

AttrInfo AudioBaseSinkDriftTolerancePropertyInfo Source # 
type AttrOrigin AudioBaseSinkDriftTolerancePropertyInfo Source # 
type AttrLabel AudioBaseSinkDriftTolerancePropertyInfo Source # 
type AttrGetType AudioBaseSinkDriftTolerancePropertyInfo Source # 
type AttrBaseTypeConstraint AudioBaseSinkDriftTolerancePropertyInfo Source # 
type AttrSetTypeConstraint AudioBaseSinkDriftTolerancePropertyInfo Source # 
type AttrAllowedOps AudioBaseSinkDriftTolerancePropertyInfo Source # 

latencyTime

data AudioBaseSinkLatencyTimePropertyInfo Source #

Instances

AttrInfo AudioBaseSinkLatencyTimePropertyInfo Source # 
type AttrOrigin AudioBaseSinkLatencyTimePropertyInfo Source # 
type AttrLabel AudioBaseSinkLatencyTimePropertyInfo Source # 
type AttrGetType AudioBaseSinkLatencyTimePropertyInfo Source # 
type AttrBaseTypeConstraint AudioBaseSinkLatencyTimePropertyInfo Source # 
type AttrSetTypeConstraint AudioBaseSinkLatencyTimePropertyInfo Source # 
type AttrAllowedOps AudioBaseSinkLatencyTimePropertyInfo Source # 

provideClock

data AudioBaseSinkProvideClockPropertyInfo Source #

Instances

AttrInfo AudioBaseSinkProvideClockPropertyInfo Source # 
type AttrOrigin AudioBaseSinkProvideClockPropertyInfo Source # 
type AttrLabel AudioBaseSinkProvideClockPropertyInfo Source # 
type AttrGetType AudioBaseSinkProvideClockPropertyInfo Source # 
type AttrBaseTypeConstraint AudioBaseSinkProvideClockPropertyInfo Source # 
type AttrSetTypeConstraint AudioBaseSinkProvideClockPropertyInfo Source # 
type AttrAllowedOps AudioBaseSinkProvideClockPropertyInfo Source # 

slaveMethod

data AudioBaseSinkSlaveMethodPropertyInfo Source #

Instances

AttrInfo AudioBaseSinkSlaveMethodPropertyInfo Source # 
type AttrOrigin AudioBaseSinkSlaveMethodPropertyInfo Source # 
type AttrLabel AudioBaseSinkSlaveMethodPropertyInfo Source # 
type AttrGetType AudioBaseSinkSlaveMethodPropertyInfo Source # 
type AttrBaseTypeConstraint AudioBaseSinkSlaveMethodPropertyInfo Source # 
type AttrSetTypeConstraint AudioBaseSinkSlaveMethodPropertyInfo Source # 
type AttrAllowedOps AudioBaseSinkSlaveMethodPropertyInfo Source #