## AgsFxSynthAudio

AgsFxSynthAudio — fx synth audio

## Stability Level

Stable, unless otherwise indicated

## Functions

AgsFxSynthAudioScopeData * | ags_fx_synth_audio_scope_data_alloc ()
void | ags_fx_synth_audio_scope_data_free ()
AgsFxSynthAudioChannelData * | ags_fx_synth_audio_channel_data_alloc ()
void | ags_fx_synth_audio_channel_data_free ()
AgsFxSynthAudioInputData * | ags_fx_synth_audio_input_data_alloc ()
void | ags_fx_synth_audio_input_data_free ()
AgsFxSynthAudio * | ags_fx_synth_audio_new ()

## Properties

AgsPort * | chorus-delay | Read / Write
AgsPort * | chorus-depth | Read / Write
AgsPort * | chorus-enabled | Read / Write
AgsPort * | chorus-input-volume | Read / Write
AgsPort * | chorus-lfo-frequency | Read / Write
AgsPort * | chorus-lfo-oscillator | Read / Write
AgsPort * | chorus-mix | Read / Write
AgsPort * | chorus-output-volume | Read / Write
AgsPort * | chorus-pitch-type | Read / Write
AgsPort * | high-pass-enabled | Read / Write
AgsPort * | high-pass-filter-gain | Read / Write
AgsPort * | high-pass-q-lin | Read / Write
AgsPort * | low-pass-enabled | Read / Write
AgsPort * | low-pass-filter-gain | Read / Write
AgsPort * | low-pass-q-lin | Read / Write
AgsPort * | noise-gain | Read / Write
AgsPort * | pitch-tuning | Read / Write
AgsPort * | pitch-type | Read / Write
AgsPort * | sequencer-enabled | Read / Write
AgsPort * | sequencer-sign | Read / Write
AgsPort * | synth-0-key | Read / Write
AgsPort * | synth-0-octave | Read / Write
AgsPort * | synth-0-oscillator | Read / Write
AgsPort * | synth-0-phase | Read / Write
AgsPort * | synth-0-sync-attack-0 | Read / Write
AgsPort * | synth-0-sync-attack-1 | Read / Write
AgsPort * | synth-0-sync-attack-2 | Read / Write
AgsPort * | synth-0-sync-enabled | Read / Write
AgsPort * | synth-0-sync-lfo-frequency | Read / Write
AgsPort * | synth-0-sync-lfo-oscillator | Read / Write
AgsPort * | synth-0-sync-phase-0 | Read / Write
AgsPort * | synth-0-sync-phase-1 | Read / Write
AgsPort * | synth-0-sync-phase-2 | Read / Write
AgsPort * | synth-0-sync-relative-attack-factor | Read / Write
AgsPort * | synth-0-volume | Read / Write
AgsPort * | synth-1-key | Read / Write
AgsPort * | synth-1-octave | Read / Write
AgsPort * | synth-1-oscillator | Read / Write
AgsPort * | synth-1-phase | Read / Write
AgsPort * | synth-1-sync-attack-0 | Read / Write
AgsPort * | synth-1-sync-attack-1 | Read / Write
AgsPort * | synth-1-sync-attack-2 | Read / Write
AgsPort * | synth-1-sync-enabled | Read / Write
AgsPort * | synth-1-sync-lfo-frequency | Read / Write
AgsPort * | synth-1-sync-lfo-oscillator | Read / Write
AgsPort * | synth-1-sync-phase-0 | Read / Write
AgsPort * | synth-1-sync-phase-1 | Read / Write
AgsPort * | synth-1-sync-phase-2 | Read / Write
AgsPort * | synth-1-sync-relative-attack-factor | Read / Write
AgsPort * | synth-1-volume | Read / Write

## Types and Values

#define | AGS_FX_SYNTH_AUDIO_DEFAULT_BUFFER_SIZE
struct | AgsFxSynthAudioScopeData
struct | AgsFxSynthAudioChannelData
struct | AgsFxSynthAudioInputData

## Object Hierarchy

        GObject
        ╰── AgsRecall
            ╰── AgsRecallAudio
                ╰── AgsFxNotationAudio
                    ╰── AgsFxSynthAudio

## Includes

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

## Description

The AgsFxSynthAudio class provides ports to the effect processor.

## Functions

### ags_fx_synth_audio_scope_data_alloc ()

    AgsFxSynthAudioScopeData *
    ags_fx_synth_audio_scope_data_alloc ();

Allocate AgsFxSynthAudioScopeData

#### Returns

the new AgsFxSynthAudioScopeData

Since: 3.14.0

### ags_fx_synth_audio_scope_data_free ()

    void
    ags_fx_synth_audio_scope_data_free (AgsFxSynthAudioScopeData *scope_data);

Free `scope_data` .

#### Parameters

scope_data | the AgsFxSynthAudioScopeData |

Since: 3.14.0

### ags_fx_synth_audio_channel_data_alloc ()

    AgsFxSynthAudioChannelData *
    ags_fx_synth_audio_channel_data_alloc ();

Allocate AgsFxSynthAudioChannelData

#### Returns

the new AgsFxSynthAudioChannelData

Since: 3.14.0

### ags_fx_synth_audio_channel_data_free ()

    void
    ags_fx_synth_audio_channel_data_free (AgsFxSynthAudioChannelData *channel_data);

Free `channel_data` .

#### Parameters

channel_data | the AgsFxSynthAudioChannelData |

Since: 3.14.0

### ags_fx_synth_audio_input_data_alloc ()

    AgsFxSynthAudioInputData *
    ags_fx_synth_audio_input_data_alloc ();

Allocate AgsFxSynthAudioInputData

#### Returns

the new AgsFxSynthAudioInputData

Since: 3.14.0

### ags_fx_synth_audio_input_data_free ()

    void
    ags_fx_synth_audio_input_data_free (AgsFxSynthAudioInputData *input_data);

Free `input_data` .

#### Parameters

input_data | the AgsFxSynthAudioInputData |

Since: 3.14.0

### ags_fx_synth_audio_new ()

    AgsFxSynthAudio *
    ags_fx_synth_audio_new (AgsAudio *audio);

Create a new instance of AgsFxSynthAudio

#### Parameters

audio | the AgsAudio |

#### Returns

the new AgsFxSynthAudio

Since: 3.14.0

## Types and Values

### AGS_FX_SYNTH_AUDIO_DEFAULT_BUFFER_SIZE

    #define AGS_FX_SYNTH_AUDIO_DEFAULT_BUFFER_SIZE (65536)

### struct AgsFxSynthAudioScopeData

    struct AgsFxSynthAudioScopeData {
      GRecMutex strct_mutex;

      gpointer parent;

      guint audio_channels;

      AgsFxSynthAudioChannelData **channel_data;
    };

### struct AgsFxSynthAudioChannelData

    struct AgsFxSynthAudioChannelData {
      GRecMutex strct_mutex;

      gpointer parent;

      AgsSynthUtil *synth_0;
      AgsSynthUtil *synth_1;

      AgsNoiseUtil *noise_util;

      GType pitch_type;
      gpointer pitch_util;

      AgsChorusUtil *chorus_util;

      AgsFluidIIRFilterUtil *low_pass_filter;
      AgsFluidIIRFilterUtil *high_pass_filter;

      AgsFxSynthAudioInputData* input_data[AGS_SEQUENCER_MAX_MIDI_KEYS];
    };

### struct AgsFxSynthAudioInputData

    struct AgsFxSynthAudioInputData {
      GRecMutex strct_mutex;

      gpointer parent;

      guint key_on;
    };

## Property Details

### The `“chorus-delay”` property

      “chorus-delay”             AgsPort *

The chorus delay.

Owner: AgsFxSynthAudio

Flags: Read / Write

Since: 3.14.0

### The `“chorus-depth”` property

      “chorus-depth”             AgsPort *

The chorus depth.

Owner: AgsFxSynthAudio

Flags: Read / Write

Since: 3.14.0

### The `“chorus-enabled”` property

      “chorus-enabled”           AgsPort *

The chorus enabled.

Owner: AgsFxSynthAudio

Flags: Read / Write

Since: 3.14.0

### The `“chorus-input-volume”` property

      “chorus-input-volume”      AgsPort *

The chorus input volume.

Owner: AgsFxSynthAudio

Flags: Read / Write

Since: 3.14.0

### The `“chorus-lfo-frequency”` property

      “chorus-lfo-frequency”     AgsPort *

The chorus lfo frequency.

Owner: AgsFxSynthAudio

Flags: Read / Write

Since: 3.14.0

### The `“chorus-lfo-oscillator”` property

      “chorus-lfo-oscillator”    AgsPort *

The chorus lfo oscillator.

Owner: AgsFxSynthAudio

Flags: Read / Write

Since: 3.14.0

### The `“chorus-mix”` property

      “chorus-mix”               AgsPort *

The chorus mix.

Owner: AgsFxSynthAudio

Flags: Read / Write

Since: 3.14.0

### The `“chorus-output-volume”` property

      “chorus-output-volume”     AgsPort *

The chorus output volume.

Owner: AgsFxSynthAudio

Flags: Read / Write

Since: 3.14.0

### The `“chorus-pitch-type”` property

      “chorus-pitch-type”        AgsPort *

The chorus pitch type.

Owner: AgsFxSynthAudio

Flags: Read / Write

Since: 4.0.0

### The `“high-pass-enabled”` property

      “high-pass-enabled”        AgsPort *

The high pass enabled.

Owner: AgsFxSynthAudio

Flags: Read / Write

Since: 3.14.0

### The `“high-pass-filter-gain”` property

      “high-pass-filter-gain”    AgsPort *

The high pass filter gain.

Owner: AgsFxSynthAudio

Flags: Read / Write

Since: 3.14.0

### The `“high-pass-q-lin”` property

      “high-pass-q-lin”          AgsPort *

The high pass q-lin.

Owner: AgsFxSynthAudio

Flags: Read / Write

Since: 3.14.0

### The `“low-pass-enabled”` property

      “low-pass-enabled”         AgsPort *

The low pass enabled.

Owner: AgsFxSynthAudio

Flags: Read / Write

Since: 3.14.0

### The `“low-pass-filter-gain”` property

      “low-pass-filter-gain”     AgsPort *

The low pass filter gain.

Owner: AgsFxSynthAudio

Flags: Read / Write

Since: 3.14.0

### The `“low-pass-q-lin”` property

      “low-pass-q-lin”           AgsPort *

The low pass q-lin.

Owner: AgsFxSynthAudio

Flags: Read / Write

Since: 3.14.0

### The `“noise-gain”` property

      “noise-gain”               AgsPort *

The noise gain.

Owner: AgsFxSynthAudio

Flags: Read / Write

Since: 3.14.0

### The `“pitch-tuning”` property

      “pitch-tuning”             AgsPort *

The pitch tuning.

Owner: AgsFxSynthAudio

Flags: Read / Write

Since: 3.14.0

### The `“pitch-type”` property

      “pitch-type”               AgsPort *

The pitch type.

Owner: AgsFxSynthAudio

Flags: Read / Write

Since: 4.0.0

### The `“sequencer-enabled”` property

      “sequencer-enabled”        AgsPort *

The sequencer enabled.

Owner: AgsFxSynthAudio

Flags: Read / Write

Since: 3.14.0

### The `“sequencer-sign”` property

      “sequencer-sign”           AgsPort *

The sequencer sign.

Owner: AgsFxSynthAudio

Flags: Read / Write

Since: 3.14.0

### The `“synth-0-key”` property

      “synth-0-key”              AgsPort *

The synth-0 key.

Owner: AgsFxSynthAudio

Flags: Read / Write

Since: 3.14.0

### The `“synth-0-octave”` property

      “synth-0-octave”           AgsPort *

The synth-0 octave.

Owner: AgsFxSynthAudio

Flags: Read / Write

Since: 3.14.0

### The `“synth-0-oscillator”` property

      “synth-0-oscillator”       AgsPort *

The synth-0 oscillator.

Owner: AgsFxSynthAudio

Flags: Read / Write

Since: 3.14.0

### The `“synth-0-phase”` property

      “synth-0-phase”            AgsPort *

The synth-0 phase.

Owner: AgsFxSynthAudio

Flags: Read / Write

Since: 3.14.0

### The `“synth-0-sync-attack-0”` property

      “synth-0-sync-attack-0”    AgsPort *

The synth-0 sync attack-0.

Owner: AgsFxSynthAudio

Flags: Read / Write

Since: 3.14.0

### The `“synth-0-sync-attack-1”` property

      “synth-0-sync-attack-1”    AgsPort *

The synth-0 sync attack-1.

Owner: AgsFxSynthAudio

Flags: Read / Write

Since: 3.14.0

### The `“synth-0-sync-attack-2”` property

      “synth-0-sync-attack-2”    AgsPort *

The synth-0 sync attack-2.

Owner: AgsFxSynthAudio

Flags: Read / Write

Since: 3.14.0

### The `“synth-0-sync-enabled”` property

      “synth-0-sync-enabled”     AgsPort *

The synth-0 sync enabled.

Owner: AgsFxSynthAudio

Flags: Read / Write

Since: 3.14.0

### The `“synth-0-sync-lfo-frequency”` property

      “synth-0-sync-lfo-frequency” AgsPort *

The synth-0 sync LFO frequency.

Owner: AgsFxSynthAudio

Flags: Read / Write

Since: 3.14.0

### The `“synth-0-sync-lfo-oscillator”` property

      “synth-0-sync-lfo-oscillator” AgsPort *

The synth-0 sync LFO oscillator.

Owner: AgsFxSynthAudio

Flags: Read / Write

Since: 3.14.0

### The `“synth-0-sync-phase-0”` property

      “synth-0-sync-phase-0”     AgsPort *

The synth-0 sync phase-0.

Owner: AgsFxSynthAudio

Flags: Read / Write

Since: 3.14.0

### The `“synth-0-sync-phase-1”` property

      “synth-0-sync-phase-1”     AgsPort *

The synth-0 sync phase-1.

Owner: AgsFxSynthAudio

Flags: Read / Write

Since: 3.14.0

### The `“synth-0-sync-phase-2”` property

      “synth-0-sync-phase-2”     AgsPort *

The synth-0 sync phase-2.

Owner: AgsFxSynthAudio

Flags: Read / Write

Since: 3.14.0

### The `“synth-0-sync-relative-attack-factor”` property

      “synth-0-sync-relative-attack-factor” AgsPort *

The synth-0 sync relative attack factor.

Owner: AgsFxSynthAudio

Flags: Read / Write

Since: 3.14.0

### The `“synth-0-volume”` property

      “synth-0-volume”           AgsPort *

The synth-0 volume.

Owner: AgsFxSynthAudio

Flags: Read / Write

Since: 3.14.0

### The `“synth-1-key”` property

      “synth-1-key”              AgsPort *

The synth-1 key.

Owner: AgsFxSynthAudio

Flags: Read / Write

Since: 3.14.0

### The `“synth-1-octave”` property

      “synth-1-octave”           AgsPort *

The synth-1 octave.

Owner: AgsFxSynthAudio

Flags: Read / Write

Since: 3.14.0

### The `“synth-1-oscillator”` property

      “synth-1-oscillator”       AgsPort *

The synth-1 oscillator.

Owner: AgsFxSynthAudio

Flags: Read / Write

Since: 3.14.0

### The `“synth-1-phase”` property

      “synth-1-phase”            AgsPort *

The synth-1 phase.

Owner: AgsFxSynthAudio

Flags: Read / Write

Since: 3.14.0

### The `“synth-1-sync-attack-0”` property

      “synth-1-sync-attack-0”    AgsPort *

The synth-1 sync attack-0.

Owner: AgsFxSynthAudio

Flags: Read / Write

Since: 3.14.0

### The `“synth-1-sync-attack-1”` property

      “synth-1-sync-attack-1”    AgsPort *

The synth-1 sync attack-1.

Owner: AgsFxSynthAudio

Flags: Read / Write

Since: 3.14.0

### The `“synth-1-sync-attack-2”` property

      “synth-1-sync-attack-2”    AgsPort *

The synth-1 sync attack-2.

Owner: AgsFxSynthAudio

Flags: Read / Write

Since: 3.14.0

### The `“synth-1-sync-enabled”` property

      “synth-1-sync-enabled”     AgsPort *

The synth-1 sync enabled.

Owner: AgsFxSynthAudio

Flags: Read / Write

Since: 3.14.0

### The `“synth-1-sync-lfo-frequency”` property

      “synth-1-sync-lfo-frequency” AgsPort *

The synth-1 sync LFO frequency.

Owner: AgsFxSynthAudio

Flags: Read / Write

Since: 3.14.0

### The `“synth-1-sync-lfo-oscillator”` property

      “synth-1-sync-lfo-oscillator” AgsPort *

The synth-1 sync LFO oscillator.

Owner: AgsFxSynthAudio

Flags: Read / Write

Since: 3.14.0

### The `“synth-1-sync-phase-0”` property

      “synth-1-sync-phase-0”     AgsPort *

The synth-1 sync phase-0.

Owner: AgsFxSynthAudio

Flags: Read / Write

Since: 3.14.0

### The `“synth-1-sync-phase-1”` property

      “synth-1-sync-phase-1”     AgsPort *

The synth-1 sync phase-1.

Owner: AgsFxSynthAudio

Flags: Read / Write

Since: 3.14.0

### The `“synth-1-sync-phase-2”` property

      “synth-1-sync-phase-2”     AgsPort *

The synth-1 sync phase-2.

Owner: AgsFxSynthAudio

Flags: Read / Write

Since: 3.14.0

### The `“synth-1-sync-relative-attack-factor”` property

      “synth-1-sync-relative-attack-factor” AgsPort *

The synth-1 sync relative attack factor.

Owner: AgsFxSynthAudio

Flags: Read / Write

Since: 3.14.0

### The `“synth-1-volume”` property

      “synth-1-volume”           AgsPort *

The synth-1 volume.

Owner: AgsFxSynthAudio

Flags: Read / Write

Since: 3.14.0