AgsAudioContainer

AgsAudioContainer — Audio container input/output

Functions

Properties

gint audio-channel Read / Write
gpointer audio-signal Read / Write
guint buffer-size Read / Write
guint file-audio-channels Read / Write
guint file-frame-count Read / Write
guint file-samplerate Read / Write
gchar * filename Read / Write
guint format Read / Write
gchar * instrument Read / Write
gchar * preset Read / Write
gchar * sample Read / Write
guint samplerate Read / Write
GObject * soundcard Read / Write
gpointer wave Read / Write

Types and Values

Object Hierarchy

    GObject
    ╰── AgsAudioContainer

Implemented Interfaces

AgsAudioContainer implements AgsConnectable.

Includes

#include <ags/audio/file/ags_audio_container.h>

Description

AgsAudioContainer is the base object to read/write audio data.

Functions

ags_audio_container_get_class_mutex ()

pthread_mutex_t *
ags_audio_container_get_class_mutex ();

Use this function's returned mutex to access mutex fields.

Returns

the class mutex

Since: 2.0.36


ags_audio_container_test_flags ()

gboolean
ags_audio_container_test_flags (AgsAudioContainer *audio_container,
                                guint flags);

Test flags to be set on audio_container .

Parameters

audio_container

the AgsAudioContainer

 

flags

the flags

 

Returns

TRUE if flags are set, else FALSE

Since: 2.0.36


ags_audio_container_set_flags ()

void
ags_audio_container_set_flags (AgsAudioContainer *audio_container,
                               guint flags);

Enable a feature of audio_container .

Parameters

audio_container

the AgsAudioContainer

 

flags

see AgsAudioContainerFlags

 

Since: 2.0.36


ags_audio_container_unset_flags ()

void
ags_audio_container_unset_flags (AgsAudioContainer *audio_container,
                                 guint flags);

Disable a feature of audio_container .

Parameters

audio_container

the AgsAudioContainer

 

flags

see AgsAudioContainerFlags

 

Since: 2.0.36


ags_audio_container_check_suffix ()

gboolean
ags_audio_container_check_suffix (gchar *filename);

Check suffix.

Parameters

filename

the filename

 

Returns

TRUE if suffix supported, else FALSE

Since: 2.0.0


ags_audio_container_add_audio_signal ()

void
ags_audio_container_add_audio_signal (AgsAudioContainer *audio_container,
                                      GObject *audio_signal);

Add audio_signal to audio_container .

Parameters

audio_container

the AgsAudioContainer

 

audio_signal

the AgsAudioSignal

 

Since: 2.0.0


ags_audio_container_remove_audio_signal ()

void
ags_audio_container_remove_audio_signal
                               (AgsAudioContainer *audio_container,
                                GObject *audio_signal);

Remove audio_signal from audio_container .

Parameters

audio_container

the AgsAudioContainer

 

audio_signal

the AgsAudioSignal

 

Since: 2.0.0


ags_audio_container_add_wave ()

void
ags_audio_container_add_wave (AgsAudioContainer *audio_container,
                              GObject *wave);

Add wave to audio_container .

Parameters

audio_container

the AgsAudioContainer

 

wave

the AgsWave

 

Since: 2.0.0


ags_audio_container_remove_wave ()

void
ags_audio_container_remove_wave (AgsAudioContainer *audio_container,
                                 GObject *wave);

Remove wave from audio_container .

Parameters

audio_container

the AgsAudioContainer

 

wave

the AgsWave

 

Since: 2.0.0


ags_audio_container_open ()

gboolean
ags_audio_container_open (AgsAudioContainer *audio_container);

Open the AgsAudioContainer in read mode.

Parameters

audio_container

the AgsAudioContainer

 

Returns

TRUE on success, otherwise FALSE

Since: 2.0.0


ags_audio_container_open_from_data ()

gboolean
ags_audio_container_open_from_data (AgsAudioContainer *audio_container,
                                    gchar *data);

ags_audio_container_rw_open ()

gboolean
ags_audio_container_rw_open (AgsAudioContainer *audio_container,
                             gboolean create);

ags_audio_container_close ()

void
ags_audio_container_close (AgsAudioContainer *audio_container);

Close the AgsAudioContainer.

Parameters

audio_container

the AgsAudioContainer

 

Since: 2.0.0


ags_audio_container_read ()

void *
ags_audio_container_read (AgsAudioContainer *audio_container,
                          guint audio_channel,
                          guint format,
                          GError **error);

Read audio buffer.

Parameters

audio_container

the AgsAudioContainer

 

audio_channel

nth channel

 

format

the format

 

error

returned error

 

Since: 2.0.0


ags_audio_container_read_audio_signal ()

GList *
ags_audio_container_read_audio_signal (AgsAudioContainer *audio_container);

Convert the AgsAudioContainer to a GList of AgsAudioSignal.

Parameters

audio_container

the AgsAudioContainer

 

Since: 2.0.0


ags_audio_container_read_wave ()

GList *
ags_audio_container_read_wave (AgsAudioContainer *audio_container,
                               guint64 x_offset,
                               gdouble delay,
                               guint attack);

ags_audio_container_seek ()

void
ags_audio_container_seek (AgsAudioContainer *audio_container,
                          guint frames,
                          gint whence);

ags_audio_container_write ()

void
ags_audio_container_write (AgsAudioContainer *audio_container,
                           void *buffer,
                           guint buffer_size,
                           guint format);

ags_audio_container_flush ()

void
ags_audio_container_flush (AgsAudioContainer *audio_container);

ags_audio_container_new ()

AgsAudioContainer *
ags_audio_container_new (gchar *filename,
                         gchar *preset,
                         gchar *instrument,
                         gchar *sample,
                         GObject *soundcard,
                         gint audio_channel);

Create a new instance of AgsAudioContainer.

Parameters

filename

the filename

 

preset

the preset

 

instrument

the instrument

 

sample

the sample

 

soundcard

defaults of AgsSoundcard

 

audio_channel

the audio channel to read

 

Returns

the new AgsAudioContainer.

Since: 2.0.0


AGS_AUDIO_CONTAINER()

#define AGS_AUDIO_CONTAINER(obj)                (G_TYPE_CHECK_INSTANCE_CAST((obj), AGS_TYPE_AUDIO_CONTAINER, AgsAudioContainer))

AGS_AUDIO_CONTAINER_CLASS()

#define AGS_AUDIO_CONTAINER_CLASS(class)        (G_TYPE_CHECK_CLASS_CAST((class), AGS_TYPE_AUDIO_CONTAINER, AgsAudioContainerClass))

AGS_AUDIO_CONTAINER_GET_CLASS()

#define AGS_AUDIO_CONTAINER_GET_CLASS(obj)      (G_TYPE_INSTANCE_GET_CLASS((obj), AGS_TYPE_AUDIO_CONTAINER, AgsAudioContainerClass))

AGS_IS_AUDIO_CONTAINER()

#define AGS_IS_AUDIO_CONTAINER(obj)             (G_TYPE_CHECK_INSTANCE_TYPE((obj), AGS_TYPE_AUDIO_CONTAINER))

ags_audio_container_get_type ()

GType
ags_audio_container_get_type ();

Types and Values

enum AgsAudioContainerFlags

Enum values to control the behavior or indicate internal state of AgsAudioContainer by enable/disable as flags.

Members

AGS_AUDIO_CONTAINER_ADDED_TO_REGISTRY

the audio container was added to registry, see AgsConnectable::add_to_registry()

 

AGS_AUDIO_CONTAINER_CONNECTED

indicates the audio container was connected by calling AgsConnectable::connect()

 

AGS_TYPE_AUDIO_CONTAINER

#define AGS_TYPE_AUDIO_CONTAINER                (ags_audio_container_get_type())

struct AgsAudioContainer

struct AgsAudioContainer;

struct AgsAudioContainerClass

struct AgsAudioContainerClass {
  GObjectClass object;
};

Property Details

The “audio-channel” property

  “audio-channel”            gint

The audio channel to be read.

Flags: Read / Write

Allowed values: >= -1

Default value: 0

Since: 2.0.0


The “audio-signal” property

  “audio-signal”             gpointer

The containing AgsAudioSignal.

Flags: Read / Write

Since: 2.0.0


The “buffer-size” property

  “buffer-size”              guint

The buffer size to be used.

Flags: Read / Write

Default value: 0

Since: 2.0.0


The “file-audio-channels” property

  “file-audio-channels”      guint

The audio channel count of this file.

Flags: Read / Write

Default value: 0

Since: 2.0.0


The “file-frame-count” property

  “file-frame-count”         guint

The frame count of the file.

Flags: Read / Write

Default value: 0


The “file-samplerate” property

  “file-samplerate”          guint

The samplerate of this file.

Flags: Read / Write

Default value: 0

Since: 2.0.0


The “filename” property

  “filename”                 gchar *

The assigned filename.

Flags: Read / Write

Default value: NULL

Since: 2.0.0


The “format” property

  “format”                   guint

The format to be used.

Flags: Read / Write

Default value: 0

Since: 2.0.0


The “instrument” property

  “instrument”               gchar *

The assigned instrument.

Flags: Read / Write

Default value: NULL

Since: 2.0.0


The “preset” property

  “preset”                   gchar *

The assigned preset.

Flags: Read / Write

Default value: NULL

Since: 2.0.0


The “sample” property

  “sample”                   gchar *

The assigned sample.

Flags: Read / Write

Default value: NULL

Since: 2.0.0


The “samplerate” property

  “samplerate”               guint

The samplerate to be used.

Flags: Read / Write

Default value: 0

Since: 2.0.0


The “soundcard” property

  “soundcard”                GObject *

The assigned soundcard.

Flags: Read / Write

Since: 2.0.0


The “wave” property

  “wave”                     gpointer

The containing AgsWave.

Flags: Read / Write

Since: 2.0.0