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

Gst::AudioSrc - Simple base class for audio sources. More...

`#include <audiosrc.h>`

Inheritance diagram for Gst::AudioSrc:

List of all members.

## Public Member Functions

virtual | ~AudioSrc ()
GstAudioSrc* | gobj ()
| Provides access to the underlying C GObject.
const GstAudioSrc* | gobj () const
| Provides access to the underlying C GObject.
GstAudioSrc* | gobj_copy ()
| Provides access to the underlying C instance. The caller is responsible for unrefing it. Use when directly setting fields in structs.

## Related Functions

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

## Detailed Description

Gst::AudioSrc - Simple base class for audio sources.

This is the most simple base class for audio sources that only requires subclasses to implement a set of simple virtual functions:

- open_vfunc() - Open the device.
- prepare_vfunc() - Configure the device with the specified format.
- write_vfunc() - Write samples to the device.
- reset_vfunc() - Unblock writes and flush the device.
- delay_vfunc() - Get the number of samples written but not yet played by the device.
- unprepare_vfunc() - Undo operations done by prepare.
- close_vfunc() - Close the device.

All scheduling of samples and timestamps is done in this base class together with Gst::BaseAudioSrc using a default implementation of a Gst::RingBuffer that uses threads.

Last reviewed on 2006-09-27 (0.10.12)

## Constructor & Destructor Documentation

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

## Member Function Documentation

GstAudioSrc* Gst::AudioSrc::gobj | ( |  | ) | `[inline]`

Provides access to the underlying C GObject.

Reimplemented from Gst::BaseAudioSrc.

Reimplemented in Gst::AlsaSrc.

const GstAudioSrc* Gst::AudioSrc::gobj | ( |  | ) | const`[inline]`

Provides access to the underlying C GObject.

Reimplemented from Gst::BaseAudioSrc.

Reimplemented in Gst::AlsaSrc.

GstAudioSrc* Gst::AudioSrc::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::BaseAudioSrc.

Reimplemented in Gst::AlsaSrc.

## Friends And Related Function Documentation

Glib::RefPtr<Gst::AudioSrc> wrap | ( | GstAudioSrc * | 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:

- audiosrc.h