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

The base class for audio sources. More...

Inherits Gst::PushSrc.

Inherited by Gst::AudioSrc.

Collaboration diagram for Gst::BaseAudioSrc:
[legend]

List of all members.

## Public Member Functions

virtual | ~BaseAudioSrc ()
GstBaseAudioSrc* | gobj ()
| Provides access to the underlying C GObject.
const GstBaseAudioSrc* | gobj () const
| Provides access to the underlying C GObject.
GstBaseAudioSrc* | 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_clock ()
| Get the Gst::Clock of the Gst::AudioSrc.
Glib::RefPtr< const Gst::Clock > | get_clock () const
| Gets the currently configured clock of the element.
Glib::RefPtr< Gst::RingBuffer > | create_ring_buffer ()
| Create and return the Gst::RingBuffer for src.
void | set_provide_clock (bool provide)
| Controls whether src will provide a clock or not.
bool | get_provide_clock () const
| Queries whether src will provide a clock or not.
void | set_slave_method (Gst::BaseAudioSrcSlaveMethod method)
| Controls how clock slaving will be performed in src.
Gst::BaseAudioSrcSlaveMethod | get_slave_method () const
| Get the current slave method used by src.
Glib::PropertyProxy_ReadOnly < gint64 > | property_actual_buffer_time () const
| Actual configured size of audio buffer in microseconds.
Glib::PropertyProxy_ReadOnly < gint64 > | property_actual_latency_time () const
| Actual configured audio latency in microseconds.
Glib::PropertyProxy< gint64 > | property_buffer_time ()
| Size of audio buffer in microseconds.
Glib::PropertyProxy_ReadOnly < gint64 > | property_buffer_time () const
| Size of audio buffer in microseconds.
Glib::PropertyProxy< gint64 > | property_latency_time ()
| Audio latency in microseconds.
Glib::PropertyProxy_ReadOnly < gint64 > | property_latency_time () const
| Audio latency in microseconds.
Glib::PropertyProxy< bool > | property_provide_clock ()
| Provide a clock to be used as the global pipeline clock.
Glib::PropertyProxy_ReadOnly < bool > | property_provide_clock () const
| Provide a clock to be used as the global pipeline clock.
Glib::PropertyProxy < BaseAudioSrcSlaveMethod > | property_slave_method ()
| Algorithm to use to match the rate of the masterclock.
Glib::PropertyProxy_ReadOnly < BaseAudioSrcSlaveMethod > | property_slave_method () const
| Algorithm to use to match the rate of the masterclock.
virtual Glib::RefPtr < Gst::RingBuffer > | create_ring_buffer_vfunc ()
| vfunc to create and return a Gst::RingBuffer to read from.

## Related Functions

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

## Detailed Description

The base class for audio sources.

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

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

## Constructor & Destructor Documentation

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

## Member Function Documentation

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

Create and return the Gst::RingBuffer for src.

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

Returns:
  The new ringbuffer of src.

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

vfunc to create and return a Gst::RingBuffer to read from.

Glib::RefPtr<const Gst::Clock> Gst::BaseAudioSrc::get_clock | ( |  | ) | const

Gets the currently configured clock of the element.

This is the clock as was last set with set_clock().

Returns:
  The Gst::Clock of the element. unref after usage.

MT safe.

Reimplemented from Gst::Element.

Glib::RefPtr<Gst::Clock> Gst::BaseAudioSrc::get_clock | ( |  | ) |

Get the Gst::Clock of the Gst::AudioSrc.

Reimplemented from Gst::Element.

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

Queries whether src will provide a clock or not.

See also gst_base_audio_src_set_provide_clock.

Since gstreamermm 0.10:
  .16

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

Gst::BaseAudioSrcSlaveMethod Gst::BaseAudioSrc::get_slave_method | ( |  | ) | const

Get the current slave method used by src.

Since gstreamermm 0.10:
  .20

Returns:
  The current slave method used by src.

const GstBaseAudioSrc* Gst::BaseAudioSrc::gobj | ( |  | ) | const`[inline]`

Provides access to the underlying C GObject.

Reimplemented from Gst::PushSrc.

Reimplemented in Gst::AudioSrc.

GstBaseAudioSrc* Gst::BaseAudioSrc::gobj | ( |  | ) | `[inline]`

Provides access to the underlying C GObject.

Reimplemented from Gst::PushSrc.

Reimplemented in Gst::AudioSrc.

GstBaseAudioSrc* Gst::BaseAudioSrc::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::PushSrc.

Reimplemented in Gst::AudioSrc.

Glib::PropertyProxy_ReadOnly<gint64> Gst::BaseAudioSrc::property_actual_buffer_time | ( |  | ) | const

Actual configured size of audio buffer in microseconds.

You rarely need to use properties because there are get_ and set_ methods for almost all of them.

Returns:
  A PropertyProxy that allows you to get or set the property of the value, or receive notification when the value of the property changes.

Glib::PropertyProxy_ReadOnly<gint64> Gst::BaseAudioSrc::property_actual_latency_time | ( |  | ) | const

Actual configured audio latency in microseconds.

You rarely need to use properties because there are get_ and set_ methods for almost all of them.

Returns:
  A PropertyProxy that allows you to get or set the property of the value, or receive notification when the value of the property changes.

Glib::PropertyProxy<gint64> Gst::BaseAudioSrc::property_buffer_time | ( |  | ) |

Size of audio buffer in microseconds.

You rarely need to use properties because there are get_ and set_ methods for almost all of them.

Returns:
  A PropertyProxy that allows you to get or set the property of the value, or receive notification when the value of the property changes.

Glib::PropertyProxy_ReadOnly<gint64> Gst::BaseAudioSrc::property_buffer_time | ( |  | ) | const

Size of audio buffer in microseconds.

You rarely need to use properties because there are get_ and set_ methods for almost all of them.

Returns:
  A PropertyProxy that allows you to get or set the property of the value, or receive notification when the value of the property changes.

Glib::PropertyProxy_ReadOnly<gint64> Gst::BaseAudioSrc::property_latency_time | ( |  | ) | const

Audio latency in microseconds.

You rarely need to use properties because there are get_ and set_ methods for almost all of them.

Returns:
  A PropertyProxy that allows you to get or set the property of the value, or receive notification when the value of the property changes.

Glib::PropertyProxy<gint64> Gst::BaseAudioSrc::property_latency_time | ( |  | ) |

Audio latency in microseconds.

You rarely need to use properties because there are get_ and set_ methods for almost all of them.

Returns:
  A PropertyProxy that allows you to get or set the property of the value, or receive notification when the value of the property changes.

Glib::PropertyProxy<bool> Gst::BaseAudioSrc::property_provide_clock | ( |  | ) |

Provide a clock to be used as the global pipeline clock.

You rarely need to use properties because there are get_ and set_ methods for almost all of them.

Returns:
  A PropertyProxy that allows you to get or set the property of the value, or receive notification when the value of the property changes.

Glib::PropertyProxy_ReadOnly<bool> Gst::BaseAudioSrc::property_provide_clock | ( |  | ) | const

Provide a clock to be used as the global pipeline clock.

You rarely need to use properties because there are get_ and set_ methods for almost all of them.

Returns:
  A PropertyProxy that allows you to get or set the property of the value, or receive notification when the value of the property changes.

Glib::PropertyProxy_ReadOnly<BaseAudioSrcSlaveMethod> Gst::BaseAudioSrc::property_slave_method | ( |  | ) | const

Algorithm to use to match the rate of the masterclock.

You rarely need to use properties because there are get_ and set_ methods for almost all of them.

Returns:
  A PropertyProxy that allows you to get or set the property of the value, or receive notification when the value of the property changes.

Glib::PropertyProxy<BaseAudioSrcSlaveMethod> Gst::BaseAudioSrc::property_slave_method | ( |  | ) |

Algorithm to use to match the rate of the masterclock.

You rarely need to use properties because there are get_ and set_ methods for almost all of them.

Returns:
  A PropertyProxy that allows you to get or set the property of the value, or receive notification when the value of the property changes.

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

Controls whether src will provide a clock or not.

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

Since gstreamermm 0.10:
  .16

Parameters:

  | provide | New state.

void Gst::BaseAudioSrc::set_slave_method | ( | Gst::BaseAudioSrcSlaveMethod | method | ) |

Controls how clock slaving will be performed in src.

Since gstreamermm 0.10:
  .20

Parameters:

  | method | The new slave method.

## Friends And Related Function Documentation

Glib::RefPtr< Gst::BaseAudioSrc > wrap | ( | GstBaseAudioSrc * | 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/baseaudiosrc.h