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

Contents

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.

class GObject o => IsAudioSink o Source #

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

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.

noAudioSink :: Maybe AudioSink Source #

A convenience alias for Nothing :: Maybe AudioSink.