krähemann.com

AgsFxDssiAudio

AgsFxDssiAudio — fx dssi audio

Stability Level

Stable, unless otherwise indicated

Object Hierarchy

    GObject
    ╰── AgsRecall
        ╰── AgsRecallAudio
            ╰── AgsFxNotationAudio
                ╰── AgsFxDssiAudio

Implemented Interfaces

AgsFxDssiAudio implements AgsConnectable.

Includes

#include <ags/audio/fx/ags_fx_dssi_audio.h>

Description

The AgsFxDssiAudio class provides ports to the effect processor.

Functions

AGS_FX_DSSI_AUDIO_SCOPE_DATA()

#define AGS_FX_DSSI_AUDIO_SCOPE_DATA(ptr) ((AgsFxDssiAudioScopeData *) (ptr))

AGS_FX_DSSI_AUDIO_SCOPE_DATA_GET_STRCT_MUTEX()

#define AGS_FX_DSSI_AUDIO_SCOPE_DATA_GET_STRCT_MUTEX(ptr) (&(((AgsFxDssiAudioScopeData *)(ptr))->strct_mutex))

AGS_FX_DSSI_AUDIO_CHANNEL_DATA()

#define AGS_FX_DSSI_AUDIO_CHANNEL_DATA(ptr) ((AgsFxDssiAudioChannelData *) (ptr))

AGS_FX_DSSI_AUDIO_CHANNEL_DATA_GET_STRCT_MUTEX()

#define AGS_FX_DSSI_AUDIO_CHANNEL_DATA_GET_STRCT_MUTEX(ptr) (&(((AgsFxDssiAudioChannelData *)(ptr))->strct_mutex))

AGS_FX_DSSI_AUDIO_INPUT_DATA()

#define AGS_FX_DSSI_AUDIO_INPUT_DATA(ptr) ((AgsFxDssiAudioInputData *) (ptr))

AGS_FX_DSSI_AUDIO_INPUT_DATA_GET_STRCT_MUTEX()

#define AGS_FX_DSSI_AUDIO_INPUT_DATA_GET_STRCT_MUTEX(ptr) (&(((AgsFxDssiAudioInputData *)(ptr))->strct_mutex))

ags_fx_dssi_audio_scope_data_alloc ()

AgsFxDssiAudioScopeData *
ags_fx_dssi_audio_scope_data_alloc ();

Allocate AgsFxDssiAudioScopeData

Returns

the new AgsFxDssiAudioScopeData

Since: 3.3.0


ags_fx_dssi_audio_scope_data_free ()

void
ags_fx_dssi_audio_scope_data_free (AgsFxDssiAudioScopeData *scope_data);

Free scope_data .

Parameters

scope_data

the AgsFxDssiAudioScopeData

 

Since: 3.3.0


ags_fx_dssi_audio_channel_data_alloc ()

AgsFxDssiAudioChannelData *
ags_fx_dssi_audio_channel_data_alloc ();

Allocate AgsFxDssiAudioChannelData

Returns

the new AgsFxDssiAudioChannelData

Since: 3.3.0


ags_fx_dssi_audio_channel_data_free ()

void
ags_fx_dssi_audio_channel_data_free (AgsFxDssiAudioChannelData *channel_data);

Free channel_data .

Parameters

channel_data

the AgsFxDssiAudioChannelData

 

Since: 3.3.0


ags_fx_dssi_audio_input_data_alloc ()

AgsFxDssiAudioInputData *
ags_fx_dssi_audio_input_data_alloc ();

Allocate AgsFxDssiAudioInputData

Returns

the new AgsFxDssiAudioInputData

Since: 3.3.0


ags_fx_dssi_audio_input_data_free ()

void
ags_fx_dssi_audio_input_data_free (AgsFxDssiAudioInputData *input_data);

Free input_data .

Parameters

input_data

the AgsFxDssiAudioInputData

 

Since: 3.3.0


ags_fx_dssi_audio_test_flags ()

gboolean
ags_fx_dssi_audio_test_flags (AgsFxDssiAudio *fx_dssi_audio,
                              guint flags);

Test flags of fx_dssi_audio .

Parameters

fx_dssi_audio

the AgsFxDssiAudio

 

flags

the flags

 

Returns

TRUE on success, otherwise FALSE

Since: 3.3.0


ags_fx_dssi_audio_set_flags ()

void
ags_fx_dssi_audio_set_flags (AgsFxDssiAudio *fx_dssi_audio,
                             guint flags);

Set flags of fx_dssi_audio .

Parameters

fx_dssi_audio

the AgsFxDssiAudio

 

flags

the flags

 

Since: 3.3.0


ags_fx_dssi_audio_unset_flags ()

void
ags_fx_dssi_audio_unset_flags (AgsFxDssiAudio *fx_dssi_audio,
                               guint flags);

Unset flags of fx_dssi_audio .

Parameters

fx_dssi_audio

the AgsFxDssiAudio

 

flags

the flags

 

Since: 3.3.0


ags_fx_dssi_audio_load_plugin ()

void
ags_fx_dssi_audio_load_plugin (AgsFxDssiAudio *fx_dssi_audio);

Load plugin of fx_dssi_audio .

Parameters

fx_dssi_audio

the AgsFxDssiAudio

 

Since: 3.3.0


ags_fx_dssi_audio_load_port ()

void
ags_fx_dssi_audio_load_port (AgsFxDssiAudio *fx_dssi_audio);

Load port of fx_dssi_audio .

Parameters

fx_dssi_audio

the AgsFxDssiAudio

 

Since: 3.3.0


ags_fx_dssi_audio_change_program ()

void
ags_fx_dssi_audio_change_program (AgsFxDssiAudio *fx_dssi_audio,
                                  guint bank_index,
                                  guint program_index);

Change program of fx_dssi_audio .

Parameters

fx_dssi_audio

the AgsFxDssiAudio

 

bank_index

the bank index

 

program_index

the program index

 

Since: 3.3.0


ags_fx_dssi_audio_new ()

AgsFxDssiAudio *
ags_fx_dssi_audio_new (AgsAudio *audio);

Create a new instance of AgsFxDssiAudio

Parameters

audio

the AgsAudio

 

Returns

the new AgsFxDssiAudio

Since: 3.3.0


AGS_FX_DSSI_AUDIO()

#define AGS_FX_DSSI_AUDIO(obj)                (G_TYPE_CHECK_INSTANCE_CAST((obj), AGS_TYPE_FX_DSSI_AUDIO, AgsFxDssiAudio))

AGS_FX_DSSI_AUDIO_CLASS()

#define AGS_FX_DSSI_AUDIO_CLASS(class)        (G_TYPE_CHECK_CLASS_CAST((class), AGS_TYPE_FX_DSSI_AUDIO, AgsFxDssiAudioClass))

AGS_FX_DSSI_AUDIO_GET_CLASS()

#define AGS_FX_DSSI_AUDIO_GET_CLASS(obj)      (G_TYPE_INSTANCE_GET_CLASS ((obj), AGS_TYPE_FX_DSSI_AUDIO, AgsFxDssiAudioClass))

AGS_IS_FX_DSSI_AUDIO()

#define AGS_IS_FX_DSSI_AUDIO(obj)             (G_TYPE_CHECK_INSTANCE_TYPE ((obj), AGS_TYPE_FX_DSSI_AUDIO))

AGS_IS_FX_DSSI_AUDIO_CLASS()

#define AGS_IS_FX_DSSI_AUDIO_CLASS(class)     (G_TYPE_CHECK_CLASS_TYPE ((class), AGS_TYPE_FX_DSSI_AUDIO))

ags_fx_dssi_audio_get_type ()

GType
ags_fx_dssi_audio_get_type ();

Types and Values

enum AgsFxDssiAudioFlags

Members

AGS_FX_DSSI_AUDIO_LIVE_INSTRUMENT

   

struct AgsFxDssiAudioScopeData

struct AgsFxDssiAudioScopeData {
  GRecMutex strct_mutex;

  gpointer parent;

  guint audio_channels;

  AgsFxDssiAudioChannelData **channel_data;
};

struct AgsFxDssiAudioChannelData

struct AgsFxDssiAudioChannelData {
  GRecMutex strct_mutex;

  gpointer parent;

  guint event_count;

  LADSPA_Data *output;
  LADSPA_Data *input;

  LADSPA_Handle ladspa_handle;

  AgsFxDssiAudioInputData* input_data[AGS_SEQUENCER_MAX_MIDI_KEYS];
};

struct AgsFxDssiAudioInputData

struct AgsFxDssiAudioInputData {
  GRecMutex strct_mutex;

  gpointer parent;

  LADSPA_Data *output;
  LADSPA_Data *input;

  LADSPA_Handle ladspa_handle;

  snd_seq_event_t *event_buffer;
  guint key_on;
};

AGS_TYPE_FX_DSSI_AUDIO

#define AGS_TYPE_FX_DSSI_AUDIO                (ags_fx_dssi_audio_get_type())

struct AgsFxDssiAudio

struct AgsFxDssiAudio;

struct AgsFxDssiAudioClass

struct AgsFxDssiAudioClass {
  AgsFxNotationAudioClass fx_notation_audio;
};