Blame docs/libs/html/GstAudioBaseSrc.html

Packit 0652a1
Packit 0652a1
<html>
Packit 0652a1
<head>
Packit 0652a1
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
Packit 0652a1
<title>GstAudioBaseSrc: GStreamer Base Plugins 1.0 Library Reference Manual</title>
Packit 0652a1
<meta name="generator" content="DocBook XSL Stylesheets V1.79.1">
Packit 0652a1
<link rel="home" href="index.html" title="GStreamer Base Plugins 1.0 Library Reference Manual">
Packit 0652a1
<link rel="up" href="gstreamer-audio.html" title="Audio Library">
Packit 0652a1
<link rel="prev" href="GstAudioBaseSink.html" title="GstAudioBaseSink">
Packit 0652a1
<link rel="next" href="gst-plugins-base-libs-Audio-channels.html" title="Audio-channels">
Packit 0652a1
<meta name="generator" content="GTK-Doc V1.28 (XML mode)">
Packit 0652a1
<link rel="stylesheet" href="style.css" type="text/css">
Packit 0652a1
</head>
Packit 0652a1
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
Packit 0652a1
Packit 0652a1
Packit 0652a1
Top  | 
Packit 0652a1
                  Description  | 
Packit 0652a1
                  Object Hierarchy  | 
Packit 0652a1
                  Properties
Packit 0652a1
Packit 0652a1
Home
Packit 0652a1
Up
Packit 0652a1
Prev
Packit 0652a1
Next
Packit 0652a1
Packit 0652a1
Packit 0652a1
Packit 0652a1
Packit 0652a1
Packit 0652a1

GstAudioBaseSrc

Packit 0652a1

GstAudioBaseSrc — Base class for audio sources

Packit 0652a1
Packit 0652a1
Packit 0652a1
Packit 0652a1
Packit 0652a1

Functions

Packit 0652a1
Packit 0652a1
Packit 0652a1
Packit 0652a1
Packit 0652a1
Packit 0652a1
Packit 0652a1
Packit 0652a1
#define
Packit 0652a1
Packit 0652a1
GST_AUDIO_BASE_SRC_CLOCK()
Packit 0652a1
Packit 0652a1
Packit 0652a1
Packit 0652a1
#define
Packit 0652a1
Packit 0652a1
GST_AUDIO_BASE_SRC_PAD()
Packit 0652a1
Packit 0652a1
Packit 0652a1
Packit 0652a1
Packit 0652a1
GstAudioRingBuffer *
Packit 0652a1
Packit 0652a1
Packit 0652a1
gst_audio_base_src_create_ringbuffer ()
Packit 0652a1
Packit 0652a1
Packit 0652a1
Packit 0652a1
Packit 0652a1
void
Packit 0652a1
Packit 0652a1
Packit 0652a1
gst_audio_base_src_set_provide_clock ()
Packit 0652a1
Packit 0652a1
Packit 0652a1
Packit 0652a1
Packit 0652a1
gboolean
Packit 0652a1
Packit 0652a1
Packit 0652a1
gst_audio_base_src_get_provide_clock ()
Packit 0652a1
Packit 0652a1
Packit 0652a1
Packit 0652a1
Packit 0652a1
GstAudioBaseSrcSlaveMethod
Packit 0652a1
Packit 0652a1
Packit 0652a1
gst_audio_base_src_get_slave_method ()
Packit 0652a1
Packit 0652a1
Packit 0652a1
Packit 0652a1
Packit 0652a1
void
Packit 0652a1
Packit 0652a1
Packit 0652a1
gst_audio_base_src_set_slave_method ()
Packit 0652a1
Packit 0652a1
Packit 0652a1
Packit 0652a1
Packit 0652a1
Packit 0652a1
Packit 0652a1

Properties

Packit 0652a1
Packit 0652a1
Packit 0652a1
Packit 0652a1
Packit 0652a1
Packit 0652a1
Packit 0652a1
Packit 0652a1
Packit 0652a1
gint64
Packit 0652a1
actual-buffer-time
Packit 0652a1
Read
Packit 0652a1
Packit 0652a1
Packit 0652a1
gint64
Packit 0652a1
actual-latency-time
Packit 0652a1
Read
Packit 0652a1
Packit 0652a1
Packit 0652a1
gint64
Packit 0652a1
buffer-time
Packit 0652a1
Read / Write
Packit 0652a1
Packit 0652a1
Packit 0652a1
gint64
Packit 0652a1
latency-time
Packit 0652a1
Read / Write
Packit 0652a1
Packit 0652a1
Packit 0652a1
gboolean
Packit 0652a1
provide-clock
Packit 0652a1
Read / Write
Packit 0652a1
Packit 0652a1
Packit 0652a1
GstAudioBaseSrcSlaveMethod
Packit 0652a1
slave-method
Packit 0652a1
Read / Write
Packit 0652a1
Packit 0652a1
Packit 0652a1
Packit 0652a1
Packit 0652a1
Packit 0652a1

Types and Values

Packit 0652a1
Packit 0652a1
Packit 0652a1
Packit 0652a1
Packit 0652a1
Packit 0652a1
Packit 0652a1
Packit 0652a1
struct
Packit 0652a1
GstAudioBaseSrc
Packit 0652a1
Packit 0652a1
Packit 0652a1
struct
Packit 0652a1
GstAudioBaseSrcClass
Packit 0652a1
Packit 0652a1
Packit 0652a1
enum
Packit 0652a1
GstAudioBaseSrcSlaveMethod
Packit 0652a1
Packit 0652a1
Packit 0652a1
Packit 0652a1
Packit 0652a1
Packit 0652a1

Object Hierarchy

Packit 0652a1
    GEnum
Packit 0652a1
    ╰── GstAudioBaseSrcSlaveMethod
Packit 0652a1
    GObject
Packit 0652a1
    ╰── GInitiallyUnowned
Packit 0652a1
        ╰── GstObject
Packit 0652a1
            ╰── GstElement
Packit 0652a1
                ╰── GstBaseSrc
Packit 0652a1
                    ╰── GstPushSrc
Packit 0652a1
                        ╰── GstAudioBaseSrc
Packit 0652a1
                            ╰── GstAudioSrc
Packit 0652a1
Packit 0652a1
Packit 0652a1
Packit 0652a1

Includes

Packit 0652a1
#include <gst/audio/audio.h>
Packit 0652a1
Packit 0652a1
Packit 0652a1
Packit 0652a1

Description

Packit 0652a1

This is the base class for audio sources. Subclasses need to implement the

Packit 0652a1
::create_ringbuffer vmethod. This base class will then take care of
Packit 0652a1
reading samples from the ringbuffer, synchronisation and flushing.

Packit 0652a1
Packit 0652a1
Packit 0652a1

Functions

Packit 0652a1
Packit 0652a1

GST_AUDIO_BASE_SRC_CLOCK()

Packit 0652a1
#define GST_AUDIO_BASE_SRC_CLOCK(obj)    (GST_AUDIO_BASE_SRC (obj)->clock)
Packit 0652a1
Packit 0652a1

Get the GstClock of obj

Packit 0652a1
.

Packit 0652a1
Packit 0652a1

Parameters

Packit 0652a1
Packit 0652a1
Packit 0652a1
Packit 0652a1
Packit 0652a1
Packit 0652a1
Packit 0652a1
Packit 0652a1

obj

Packit 0652a1

a GstAudioBaseSrc

Packit 0652a1
 
Packit 0652a1
Packit 0652a1
Packit 0652a1
Packit 0652a1
Packit 0652a1

Packit 0652a1
Packit 0652a1

GST_AUDIO_BASE_SRC_PAD()

Packit 0652a1
#define GST_AUDIO_BASE_SRC_PAD(obj)      (GST_BASE_SRC (obj)->srcpad)
Packit 0652a1
Packit 0652a1

Get the source GstPad of obj

Packit 0652a1
.

Packit 0652a1
Packit 0652a1

Parameters

Packit 0652a1
Packit 0652a1
Packit 0652a1
Packit 0652a1
Packit 0652a1
Packit 0652a1
Packit 0652a1
Packit 0652a1

obj

Packit 0652a1

a GstAudioBaseSrc

Packit 0652a1
 
Packit 0652a1
Packit 0652a1
Packit 0652a1
Packit 0652a1
Packit 0652a1

Packit 0652a1
Packit 0652a1

gst_audio_base_src_create_ringbuffer ()

Packit 0652a1
GstAudioRingBuffer *
Packit 0652a1
gst_audio_base_src_create_ringbuffer (GstAudioBaseSrc *src);
Packit 0652a1

Create and return the GstAudioRingBuffer for src

Packit 0652a1
. This function will call
Packit 0652a1
the ::create_ringbuffer vmethod and will set src
Packit 0652a1
 as the parent of the
Packit 0652a1
returned buffer (see gst_object_set_parent()).

Packit 0652a1
Packit 0652a1

Parameters

Packit 0652a1
Packit 0652a1
Packit 0652a1
Packit 0652a1
Packit 0652a1
Packit 0652a1
Packit 0652a1
Packit 0652a1

src

Packit 0652a1

a GstAudioBaseSrc.

Packit 0652a1
 
Packit 0652a1
Packit 0652a1
Packit 0652a1
Packit 0652a1
Packit 0652a1

Returns

Packit 0652a1

The new ringbuffer of src

Packit 0652a1
. 

Packit 0652a1

[transfer none]

Packit 0652a1
Packit 0652a1
Packit 0652a1

Packit 0652a1
Packit 0652a1

gst_audio_base_src_set_provide_clock ()

Packit 0652a1
void
Packit 0652a1
gst_audio_base_src_set_provide_clock (GstAudioBaseSrc *src,
Packit 0652a1
                                      gboolean provide);
Packit 0652a1

Controls whether src

Packit 0652a1
 will provide a clock or not. If provide
Packit 0652a1
 is TRUE,
Packit 0652a1
gst_element_provide_clock() will return a clock that reflects the datarate
Packit 0652a1
of src
Packit 0652a1
. If provide
Packit 0652a1
 is FALSE, gst_element_provide_clock() will return NULL.

Packit 0652a1
Packit 0652a1

Parameters

Packit 0652a1
Packit 0652a1
Packit 0652a1
Packit 0652a1
Packit 0652a1
Packit 0652a1
Packit 0652a1
Packit 0652a1
Packit 0652a1

src

Packit 0652a1

a GstAudioBaseSrc

Packit 0652a1
 
Packit 0652a1
Packit 0652a1
Packit 0652a1

provide

Packit 0652a1

new state

Packit 0652a1
 
Packit 0652a1
Packit 0652a1
Packit 0652a1
Packit 0652a1
Packit 0652a1
Packit 0652a1

Packit 0652a1
Packit 0652a1

gst_audio_base_src_get_provide_clock ()

Packit 0652a1
gboolean
Packit 0652a1
gst_audio_base_src_get_provide_clock (GstAudioBaseSrc *src);
Packit 0652a1

Queries whether src

Packit 0652a1
 will provide a clock or not. See also
Packit 0652a1
gst_audio_base_src_set_provide_clock.

Packit 0652a1
Packit 0652a1

Parameters

Packit 0652a1
Packit 0652a1
Packit 0652a1
Packit 0652a1
Packit 0652a1
Packit 0652a1
Packit 0652a1
Packit 0652a1

src

Packit 0652a1

a GstAudioBaseSrc

Packit 0652a1
 
Packit 0652a1
Packit 0652a1
Packit 0652a1
Packit 0652a1
Packit 0652a1

Returns

Packit 0652a1

TRUE if src

Packit 0652a1
will provide a clock.

Packit 0652a1
Packit 0652a1
Packit 0652a1

Packit 0652a1
Packit 0652a1

gst_audio_base_src_get_slave_method ()

Packit 0652a1
GstAudioBaseSrcSlaveMethod
Packit 0652a1
gst_audio_base_src_get_slave_method (GstAudioBaseSrc *src);
Packit 0652a1

Get the current slave method used by src

Packit 0652a1
.

Packit 0652a1
Packit 0652a1

Parameters

Packit 0652a1
Packit 0652a1
Packit 0652a1
Packit 0652a1
Packit 0652a1
Packit 0652a1
Packit 0652a1
Packit 0652a1

src

Packit 0652a1

a GstAudioBaseSrc

Packit 0652a1
 
Packit 0652a1
Packit 0652a1
Packit 0652a1
Packit 0652a1
Packit 0652a1

Returns

Packit 0652a1

The current slave method used by src

Packit 0652a1
.

Packit 0652a1
Packit 0652a1
Packit 0652a1

Packit 0652a1
Packit 0652a1

gst_audio_base_src_set_slave_method ()

Packit 0652a1
void
Packit 0652a1
gst_audio_base_src_set_slave_method (GstAudioBaseSrc *src,
Packit 0652a1
                                     GstAudioBaseSrcSlaveMethod method);
Packit 0652a1

Controls how clock slaving will be performed in src

Packit 0652a1
.

Packit 0652a1
Packit 0652a1

Parameters

Packit 0652a1
Packit 0652a1
Packit 0652a1
Packit 0652a1
Packit 0652a1
Packit 0652a1
Packit 0652a1
Packit 0652a1
Packit 0652a1

src

Packit 0652a1

a GstAudioBaseSrc

Packit 0652a1
 
Packit 0652a1
Packit 0652a1
Packit 0652a1

method

Packit 0652a1

the new slave method

Packit 0652a1
 
Packit 0652a1
Packit 0652a1
Packit 0652a1
Packit 0652a1
Packit 0652a1
Packit 0652a1
Packit 0652a1
Packit 0652a1

Types and Values

Packit 0652a1
Packit 0652a1

struct GstAudioBaseSrc

Packit 0652a1
struct GstAudioBaseSrc;
Packit 0652a1

Opaque GstAudioBaseSrc.

Packit 0652a1
Packit 0652a1

Packit 0652a1
Packit 0652a1

struct GstAudioBaseSrcClass

Packit 0652a1
struct GstAudioBaseSrcClass {
Packit 0652a1
  GstPushSrcClass      parent_class;
Packit 0652a1
Packit 0652a1
  /* subclass ringbuffer allocation */
Packit 0652a1
  GstAudioRingBuffer* (*create_ringbuffer)  (GstAudioBaseSrc *src);
Packit 0652a1
};
Packit 0652a1
Packit 0652a1

GstAudioBaseSrc class. Override the vmethod to implement

Packit 0652a1
functionality.

Packit 0652a1
Packit 0652a1

Members

Packit 0652a1
Packit 0652a1
Packit 0652a1
Packit 0652a1
Packit 0652a1
Packit 0652a1
Packit 0652a1
Packit 0652a1

create_ringbuffer ()

Packit 0652a1

create and return a GstAudioRingBuffer to read from.

Packit 0652a1
 
Packit 0652a1
Packit 0652a1
Packit 0652a1
Packit 0652a1
Packit 0652a1

Packit 0652a1
Packit 0652a1

enum GstAudioBaseSrcSlaveMethod

Packit 0652a1

Different possible clock slaving algorithms when the internal audio clock was

Packit 0652a1
not selected as the pipeline clock.

Packit 0652a1
Packit 0652a1

Members

Packit 0652a1
Packit 0652a1
Packit 0652a1
Packit 0652a1
Packit 0652a1
Packit 0652a1
Packit 0652a1
Packit 0652a1
Packit 0652a1

GST_AUDIO_BASE_SRC_SLAVE_RESAMPLE

Packit 0652a1
Packit 0652a1

Resample to match the master clock.

Packit 0652a1
Packit 0652a1
 
Packit 0652a1
Packit 0652a1
Packit 0652a1

GST_AUDIO_BASE_SRC_SLAVE_RE_TIMESTAMP

Packit 0652a1
Packit 0652a1

Retimestamp output buffers with master

Packit 0652a1
clock time.

Packit 0652a1
Packit 0652a1
 
Packit 0652a1
Packit 0652a1
Packit 0652a1

GST_AUDIO_BASE_SRC_SLAVE_SKEW

Packit 0652a1
Packit 0652a1

Adjust capture pointer when master clock

Packit 0652a1
drifts too much.

Packit 0652a1
Packit 0652a1
 
Packit 0652a1
Packit 0652a1
Packit 0652a1

GST_AUDIO_BASE_SRC_SLAVE_NONE

Packit 0652a1
Packit 0652a1

No adjustment is done.

Packit 0652a1
Packit 0652a1
 
Packit 0652a1
Packit 0652a1
Packit 0652a1
Packit 0652a1
Packit 0652a1
Packit 0652a1
Packit 0652a1
Packit 0652a1

Property Details

Packit 0652a1
Packit 0652a1

The “actual-buffer-time” property

Packit 0652a1
  “actual-buffer-time”       gint64
Packit 0652a1

Actual configured size of audio buffer in microseconds.

Packit 0652a1

Flags: Read

Packit 0652a1

Allowed values: >= -1

Packit 0652a1

Default value: -1

Packit 0652a1
Packit 0652a1

Packit 0652a1
Packit 0652a1

The “actual-latency-time” property

Packit 0652a1
  “actual-latency-time”      gint64
Packit 0652a1

Actual configured audio latency in microseconds.

Packit 0652a1

Flags: Read

Packit 0652a1

Allowed values: >= -1

Packit 0652a1

Default value: -1

Packit 0652a1
Packit 0652a1

Packit 0652a1
Packit 0652a1

The “buffer-time” property

Packit 0652a1
  “buffer-time”              gint64
Packit 0652a1

Size of audio buffer in microseconds. This is the maximum amount of data that is buffered in the device and the maximum latency that the source reports. This value might be ignored by the element if necessary; see "actual-buffer-time".

Packit 0652a1

Flags: Read / Write

Packit 0652a1

Allowed values: >= 1

Packit 0652a1

Default value: 200000

Packit 0652a1
Packit 0652a1

Packit 0652a1
Packit 0652a1

The “latency-time” property

Packit 0652a1
  “latency-time”             gint64
Packit 0652a1

The minimum amount of data to read in each iteration in microseconds. This is the minimum latency that the source reports. This value might be ignored by the element if necessary; see "actual-latency-time".

Packit 0652a1

Flags: Read / Write

Packit 0652a1

Allowed values: >= 1

Packit 0652a1

Default value: 10000

Packit 0652a1
Packit 0652a1

Packit 0652a1
Packit 0652a1

The “provide-clock” property

Packit 0652a1
  “provide-clock”            gboolean
Packit 0652a1

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

Packit 0652a1

Flags: Read / Write

Packit 0652a1

Default value: TRUE

Packit 0652a1
Packit 0652a1

Packit 0652a1
Packit 0652a1

The “slave-method” property

Packit 0652a1
  “slave-method”             GstAudioBaseSrcSlaveMethod
Packit 0652a1

Algorithm used to match the rate of the masterclock.

Packit 0652a1

Flags: Read / Write

Packit 0652a1

Default value: GST_AUDIO_BASE_SRC_SLAVE_SKEW

Packit 0652a1
Packit 0652a1
Packit 0652a1
Packit 0652a1

See Also

Packit 0652a1

GstAudioSrc, GstAudioRingBuffer.

Packit 0652a1
Packit 0652a1
Packit 0652a1
Packit 0652a1

Generated by GTK-Doc V1.28
Packit 0652a1
</body>
Packit 0652a1
</html>