# Gst::BaseAudioSink Class Reference
[gstreamermm Base Classes]

The base class for audio sinks. More...

Inherits Gst::BaseSink.

Inherited by Gst::AudioSink.

Collaboration diagram for Gst::BaseAudioSink:
[legend]

List of all members.

## Public Member Functions

virtual | ~BaseAudioSink ()
GstBaseAudioSink* | gobj ()
| Provides access to the underlying C GObject.
const GstBaseAudioSink* | gobj () const
| Provides access to the underlying C GObject.
GstBaseAudioSink* | gobj_copy ()
| Provides access to the underlying C instance. The caller is responsible for unrefing it. Use when directly setting fields in structs.
Glib::RefPtr< Gst::Clock > | get_provided_clock ()
| Get the Gst::Clock of the Gst::BaseAudioSink.
Glib::RefPtr< const Gst::Clock > | get_provided_clock () const
Glib::RefPtr< Gst::RingBuffer > | create_ring_buffer ()
| Create and return the Gst::RingBuffer for sink.
void | set_provide_clock (bool provide)
| Controls whether sink will provide a clock or not.
bool | get_provide_clock () const
| Queries whether sink will provide a clock or not.
void | set_slave_method (Gst::BaseAudioSinkSlaveMethod method)
| Controls how clock slaving will be performed in sink.
Gst::BaseAudioSinkSlaveMethod | get_slave_method () const
| Get the current slave method used by sink.
virtual Glib::RefPtr < Gst::RingBuffer > | create_ring_buffer_vfunc ()
| vfunc to create and return a Gst::RingBuffer to write to.

## Related Functions

(Note that these are not member functions.)
Glib::RefPtr< Gst::BaseAudioSink > | wrap (GstBaseAudioSink* object, bool take_copy=false)
| A Glib::wrap() method for this object.

## Detailed Description

The base class for audio sinks.

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

Last reviewed on 2006-09-27 (0.10.12).

## Constructor & Destructor Documentation

virtual Gst::BaseAudioSink::~BaseAudioSink | ( |  | ) | `[virtual]`

## Member Function Documentation

Glib::RefPtr<Gst::RingBuffer> Gst::BaseAudioSink::create_ring_buffer | ( |  | ) |

Create and return the Gst::RingBuffer for sink.

This function will call the create_ringbuffer vmethod and will set sink as the parent of the returned buffer (see Gst::Object::set_parent()).

Returns:
  The new ringbuffer of sink.

virtual Glib::RefPtr<Gst::RingBuffer> Gst::BaseAudioSink::create_ring_buffer_vfunc | ( |  | ) | `[virtual]`

vfunc to create and return a Gst::RingBuffer to write to.

bool Gst::BaseAudioSink::get_provide_clock | ( |  | ) | const

Queries whether sink will provide a clock or not.

See also gst_base_audio_sink_set_provide_clock.

Since gstreamermm 0.10:
  .16

Returns:
  `true` if sink will provide a clock.

Glib::RefPtr<const Gst::Clock> Gst::BaseAudioSink::get_provided_clock | ( |  | ) | const

Glib::RefPtr<Gst::Clock> Gst::BaseAudioSink::get_provided_clock | ( |  | ) |

Get the Gst::Clock of the Gst::BaseAudioSink.

Gst::BaseAudioSinkSlaveMethod Gst::BaseAudioSink::get_slave_method | ( |  | ) | const

Get the current slave method used by sink.

Since gstreamermm 0.10:
  .16

Returns:
  The current slave method used by sink.

GstBaseAudioSink* Gst::BaseAudioSink::gobj | ( |  | ) | `[inline]`

Provides access to the underlying C GObject.

Reimplemented from Gst::BaseSink.

Reimplemented in Gst::AudioSink.

const GstBaseAudioSink* Gst::BaseAudioSink::gobj | ( |  | ) | const`[inline]`

Provides access to the underlying C GObject.

Reimplemented from Gst::BaseSink.

Reimplemented in Gst::AudioSink.

GstBaseAudioSink* Gst::BaseAudioSink::gobj_copy | ( |  | ) |

Provides access to the underlying C instance. The caller is responsible for unrefing it. Use when directly setting fields in structs.

Reimplemented from Gst::BaseSink.

Reimplemented in Gst::AudioSink.

void Gst::BaseAudioSink::set_provide_clock | ( | bool | provide | ) |

Controls whether sink will provide a clock or not.

If provide is `true`, Gst::Element::provide_clock() will return a clock that reflects the datarate of sink. If provide is `false`, Gst::Element::provide_clock() will return `0`.

Since gstreamermm 0.10:
  .16

Parameters:

  | provide | New state.

void Gst::BaseAudioSink::set_slave_method | ( | Gst::BaseAudioSinkSlaveMethod | method | ) |

Controls how clock slaving will be performed in sink.

Since gstreamermm 0.10:
  .16

Parameters:

  | method | The new slave method.

## Friends And Related Function Documentation

Glib::RefPtr< Gst::BaseAudioSink > wrap | ( | GstBaseAudioSink * | object,
|  | bool | take_copy = `false` |
| ) |  |  | `[related]`

A Glib::wrap() method for this object.

Parameters:

  | object | The C instance.
  | take_copy | False if the result should take ownership of the C instance. True if it should take a new copy or ref.

Returns:
  A C++ instance that wraps this C instance.

The documentation for this class was generated from the following file:

- gstreamermm/baseaudiosink.h