Top |
gpointer | audio-signal | Read / Write |
guint | buffer-size | Read / Write |
AgsChannel * | channel | Read / Write |
guint | format | Read / Write |
GObject * | input-soundcard | Read / Write |
int | input-soundcard-channel | Read / Write |
AgsRecycling * | next | Read / Write |
GObject * | output-soundcard | Read / Write |
int | output-soundcard-channel | Read / Write |
AgsRecycling * | parent | Read / Write |
AgsRecycling * | prev | Read / Write |
guint | samplerate | Read / Write |
AgsRecycling forms the nested tree of AgsAudio and AgsChannel. The recycling tree is the actual audio processing tree, because it hosts AgsAudioSignal.
Every recycling node introduces a new AgsAudioSignal for specific AgsSoundScope specified by assigned AgsRecallID.
All audio processing happens on AgsAudioSignal and is added to AgsRecycling by
ags_recycling_add_audio_signal()
. While you call it, the function takes the audio signal
with AGS_AUDIO_SIGNAL_TEMPLATE flag set and creates a copy AgsAudioSignal with the very
same audio data of stream
property.
The actual audio processing functionality is provided by AgsRecall implementations. Its entry point is AgsAudio or AgsChannel.
AgsRecall objectss except templates are assigned with a AgsRecallID with a relation to AgsRecyclingContext.
#define AGS_RECYCLING_GET_OBJ_MUTEX(obj) (&(((AgsRecycling *) obj)->obj_mutex))
GRecMutex *
ags_recycling_get_obj_mutex (AgsRecycling *recycling
);
Get object mutex.
Since: 3.1.0
gboolean ags_recycling_test_flags (AgsRecycling *recycling
,guint flags
);
Test flags
to be set on recycling
.
Since: 3.0.0
void ags_recycling_set_flags (AgsRecycling *recycling
,guint flags
);
Enable a feature of recycling
.
Since: 3.0.0
void ags_recycling_unset_flags (AgsRecycling *recycling
,guint flags
);
Disable a feature of recycling
.
Since: 3.0.0
GObject *
ags_recycling_get_channel (AgsRecycling *recycling
);
Get channel.
Since: 3.1.0
void ags_recycling_set_channel (AgsRecycling *recycling
,GObject *channel
);
Set channel.
Since: 3.1.0
AgsRecycling *
ags_recycling_next (AgsRecycling *recycling
);
Iterate recycling
.
Since: 3.0.0
AgsRecycling *
ags_recycling_prev (AgsRecycling *recycling
);
Iterate recycling
.
Since: 3.0.0
GObject *
ags_recycling_get_output_soundcard (AgsRecycling *recycling
);
Get the output soundcard object of recycling
.
Since: 3.1.0
void ags_recycling_set_output_soundcard (AgsRecycling *recycling
,GObject *output_soundcard
);
Set the output soundcard object of recycling
.
Since: 3.0.0
GObject *
ags_recycling_get_input_soundcard (AgsRecycling *recycling
);
Get the input soundcard object of recycling
.
Since: 3.1.0
void ags_recycling_set_input_soundcard (AgsRecycling *recycling
,GObject *input_soundcard
);
Set the input soundcard object of recycling
.
Since: 3.0.0
guint
ags_recycling_get_samplerate (AgsRecycling *recycling
);
Gets samplerate.
Since: 3.1.0
void ags_recycling_set_samplerate (AgsRecycling *recycling
,guint samplerate
);
Sets samplerate.
Since: 3.0.0
guint
ags_recycling_get_buffer_size (AgsRecycling *recycling
);
Gets buffer size.
Since: 3.1.0
void ags_recycling_set_buffer_size (AgsRecycling *recycling
,guint buffer_size
);
Set buffer size.
Since: 3.0.0
guint
ags_recycling_get_format (AgsRecycling *recycling
);
Gets format.
Since: 3.1.0
void ags_recycling_set_format (AgsRecycling *recycling
,guint format
);
Set format.
Since: 3.0.0
GList *
ags_recycling_get_audio_signal (AgsRecycling *recycling
);
Get recall id.
Since: 3.1.0
void ags_recycling_set_audio_signal (AgsRecycling *recycling
,GList *audio_signal
);
Set recall id by replacing existing.
recycling |
the AgsRecycling |
|
audio_signal |
the GList containing AgsAudioSignal. |
[element-type AgsAudio.AudioSignal][transfer full] |
Since: 3.1.0
void ags_recycling_add_audio_signal (AgsRecycling *recycling
,AgsAudioSignal *audio_signal
);
Add audio_signal
to recycling
.
Since: 3.0.0
void ags_recycling_remove_audio_signal (AgsRecycling *recycling
,AgsAudioSignal *audio_signal
);
Remove audio_signal
of recycling
.
Since: 3.0.0
void ags_recycling_data_request (AgsRecycling *recycling
,AgsAudioSignal *audio_signal
);
Request data of audio_signal
.
Since: 3.0.0
gint ags_recycling_position (AgsRecycling *start_region
,AgsRecycling *end_region
,AgsRecycling *recycling
);
Retrieve position of recycling.
Since: 3.0.0
AgsRecycling * ags_recycling_find_next_channel (AgsRecycling *start_region
,AgsRecycling *end_region
,GObject *prev_channel
);
Retrieve next recycling with different channel.
Since: 3.0.0
gboolean ags_recycling_is_active (AgsRecycling *start_region
,AgsRecycling *end_region
,GObject *recall_id
);
Check if is active.
Since: 3.0.0
void ags_recycling_create_audio_signal_with_defaults (AgsRecycling *recycling
,AgsAudioSignal *audio_signal
,gdouble delay
,guint attack
);
Create audio signal with defaults.
recycling |
the AgsRecycling |
|
audio_signal |
the AgsAudioSignal to apply defaults |
|
delay |
the delay |
|
attack |
the attack |
Since: 3.0.0
void ags_recycling_create_audio_signal_with_frame_count (AgsRecycling *recycling
,AgsAudioSignal *audio_signal
,guint frame_count
,gdouble delay
,guint attack
);
Create audio signal with frame count.
recycling |
the AgsRecycling |
|
audio_signal |
the AgsAudioSignal to apply defaults |
|
frame_count |
the audio data size |
|
delay |
the delay |
|
attack |
the attack |
Since: 3.0.0
AgsRecycling *
ags_recycling_new (GObject *output_soundcard
);
Creates a AgsRecycling, with defaults of soundcard
.
Since: 3.0.0
Enum values to control the behavior or indicate internal state of AgsRecycling by enable/disable as flags.
“audio-signal”
property “audio-signal” gpointer
The containing AgsAudioSignal.
[transfer full]
Owner: AgsRecycling
Flags: Read / Write
Since: 3.0.0
“buffer-size”
property “buffer-size” guint
The buffer size.
Owner: AgsRecycling
Flags: Read / Write
Default value: 0
Since: 3.0.0
“channel”
property“channel” AgsChannel *
The assigned AgsChannel.
Owner: AgsRecycling
Flags: Read / Write
Since: 3.0.0
“format”
property “format” guint
The format.
Owner: AgsRecycling
Flags: Read / Write
Default value: 0
Since: 3.0.0
“input-soundcard”
property “input-soundcard” GObject *
The assigned input soundcard.
Owner: AgsRecycling
Flags: Read / Write
Since: 3.0.0
“input-soundcard-channel”
property “input-soundcard-channel” int
The input soundcard channel.
Owner: AgsRecycling
Flags: Read / Write
Allowed values: >= -1
Default value: 0
Since: 3.0.0
“next”
property“next” AgsRecycling *
The assigned next AgsRecycling.
Owner: AgsRecycling
Flags: Read / Write
Since: 3.0.0
“output-soundcard”
property “output-soundcard” GObject *
The assigned output soundcard acting as default sink.
Owner: AgsRecycling
Flags: Read / Write
Since: 3.0.0
“output-soundcard-channel”
property “output-soundcard-channel” int
The output soundcard channel.
Owner: AgsRecycling
Flags: Read / Write
Allowed values: >= -1
Default value: 0
Since: 3.0.0
“parent”
property“parent” AgsRecycling *
The assigned parent AgsRecycling.
Owner: AgsRecycling
Flags: Read / Write
Since: 3.0.0
“prev”
property“prev” AgsRecycling *
The assigned prev AgsRecycling.
Owner: AgsRecycling
Flags: Read / Write
Since: 3.0.0
“add-audio-signal”
signalvoid user_function (AgsRecycling *recycling, GObject *audio_signal, gpointer user_data)
The ::add-audio-signal signal is emited as adding AgsAudioSignal.
recycling |
an AgsRecycling |
|
audio_signal |
the AgsAudioSignal to add |
|
user_data |
user data set when the signal handler was connected. |
Flags: Run Last
Since: 3.0.0
“data-request”
signalvoid user_function (AgsRecycling *recycling, GObject *audio_signal, gpointer user_data)
The ::data-request signal is emited as requesting data for audio_signal
.
recycling |
an AgsRecycling |
|
audio_signal |
the AgsAudioSignal to request |
|
user_data |
user data set when the signal handler was connected. |
Flags: Run Last
Since: 3.0.0
“remove-audio-signal”
signalvoid user_function (AgsRecycling *recycling, GObject *audio_signal, gpointer user_data)
The ::remove-audio-signal signal is emited as removing AgsAudioSignal.
recycling |
an AgsRecycling |
|
audio_signal |
the AgsAudioSignal to remove |
|
user_data |
user data set when the signal handler was connected. |
Flags: Run Last
Since: 3.0.0