| Top |
| guint | attack | Read / Write |
| guint | buffer-size | Read / Write |
| AgsComplex * | damping | Read / Write |
| AgsAudioSignal * | default-template | Read / Write |
| double | delay | Read / Write |
| guint | first-frame | Read / Write |
| guint | format | Read / Write |
| guint | frame-count | Read / Write |
| GObject * | input-soundcard | Read / Write |
| int | input-soundcard-channel | Read / Write |
| guint | last-frame | Read / Write |
| guint | length | Read / Write |
| guint | loop-end | Read / Write |
| guint | loop-start | Read / Write |
| gpointer | note | Read / Write |
| guint | note-256th-attack | Read / Write |
| GObject * | output-soundcard | Read / Write |
| int | output-soundcard-channel | Read / Write |
| AgsRecallID * | recall-id | Read / Write |
| AgsRecycling * | recycling | Read / Write |
| AgsAudioSignal * | rt-template | Read / Write |
| guint | samplerate | Read / Write |
| gpointer | stream | Read |
| gpointer | stream-current | Read |
| gpointer | stream-end | Read |
| guint | timbre-end | Read / Write |
| guint | timbre-start | Read / Write |
| AgsComplex * | vibration | Read / Write |
| guint | word-size | Read |
AgsAudioSignal organizes audio data within a GList whereby data pointing to the buffer.
It has output-soundcard and input-soundcard properties AgsRecall implementations
should default to.
The stream property contains the processing audio data. You may set loop-start and loop-end
to loop over samples until desired audio buffer length is achieved.
As accessing the audio data you should lock it with ags_audio_signal_stream_lock() and as
completed your work you release the lock with ags_audio_signal_stream_unlock().
The note property contains information about assigned AgsNote objects coming from AgsNotation
residing in AgsAudio.
As you might see multiple key presses may apply to one AgsAudioSignal.
#define AGS_AUDIO_SIGNAL_GET_OBJ_MUTEX(obj) (&(((AgsAudioSignal *) obj)->obj_mutex))
#define AGS_AUDIO_SIGNAL_GET_STREAM_MUTEX(obj) (&(((AgsAudioSignal *) obj)->stream_mutex))
#define AGS_AUDIO_SIGNAL_GET_BACKLOG_MUTEX(obj) (&(((AgsAudioSignal *) obj)->backlog_mutex))
GRecMutex *
ags_audio_signal_get_obj_mutex (AgsAudioSignal *audio_signal);
Get object mutex.
Since: 3.1.0
void
ags_audio_signal_stream_lock (AgsAudioSignal *audio_signal);
Lock stream mutex.
Since: 3.1.0
void
ags_audio_signal_stream_unlock (AgsAudioSignal *audio_signal);
Unlock stream mutex.
Since: 3.1.0
gboolean ags_audio_signal_test_flags (AgsAudioSignal *audio_signal,AgsAudioSignalFlags flags);
Test flags
to be set on audio_signal
.
Since: 3.0.0
void ags_audio_signal_set_flags (AgsAudioSignal *audio_signal,AgsAudioSignalFlags flags);
Enable a feature of audio_signal
.
Since: 3.0.0
void ags_audio_signal_unset_flags (AgsAudioSignal *audio_signal,AgsAudioSignalFlags flags);
Disable a feature of audio_signal
.
Since: 3.0.0
gboolean ags_audio_signal_test_key_format (AgsAudioSignal *audio_signal,AgsSoundKeyFormat key_format);
Test key_format
to be set on audio_signal
.
Since: 6.2.0
void ags_audio_signal_set_key_format (AgsAudioSignal *audio_signal,AgsSoundKeyFormat key_format);
Set key_format
on audio_signal
.
Since: 6.2.0
void * ags_stream_alloc (guint buffer_size,AgsSoundcardFormat format);
Allocs an audio buffer.
Since: 3.0.0
void * ags_stream_slice_alloc (guint buffer_size,AgsSoundcardFormat format);
Allocs an audio buffer.
Since: 3.3.0
void ags_stream_slice_free (guint buffer_size,AgsSoundcardFormat format,void *buffer);
Frees an audio buffer.
Since: 3.3.0
GObject *
ags_audio_signal_get_recycling (AgsAudioSignal *audio_signal);
Get recycling.
Since: 3.1.0
void ags_audio_signal_set_recycling (AgsAudioSignal *audio_signal,GObject *recycling);
Set recycling.
Since: 3.1.0
GObject *
ags_audio_signal_get_output_soundcard (AgsAudioSignal *audio_signal);
Get the output soundcard object of audio_signal
.
Since: 3.1.0
void ags_audio_signal_set_output_soundcard (AgsAudioSignal *audio_signal,GObject *output_soundcard);
Set the output soundcard object of audio_signal
.
Since: 3.0.0
GObject *
ags_audio_signal_get_input_soundcard (AgsAudioSignal *audio_signal);
Get the input soundcard object of audio_signal
.
Since: 3.1.0
void ags_audio_signal_set_input_soundcard (AgsAudioSignal *audio_signal,GObject *input_soundcard);
Set the input soundcard object of audio_signal
.
Since: 3.0.0
guint
ags_audio_signal_get_samplerate (AgsAudioSignal *audio_signal);
Gets samplerate.
Since: 3.1.0
void ags_audio_signal_set_samplerate (AgsAudioSignal *audio_signal,guint samplerate);
Set samplerate.
Since: 3.0.0
guint
ags_audio_signal_get_buffer_size (AgsAudioSignal *audio_signal);
Gets buffer size.
Since: 3.1.0
void ags_audio_signal_set_buffer_size (AgsAudioSignal *audio_signal,guint buffer_size);
Set buffer size.
Since: 3.0.0
AgsSoundcardFormat
ags_audio_signal_get_format (AgsAudioSignal *audio_signal);
Gets format.
Since: 3.1.0
void ags_audio_signal_set_format (AgsAudioSignal *audio_signal,AgsSoundcardFormat format);
Set format.
Since: 3.0.0
guint
ags_audio_signal_get_attack (AgsAudioSignal *audio_signal);
Get attack of audio_signal
.
Since: 6.2.0
void ags_audio_signal_set_attack (AgsAudioSignal *audio_signal,guint attack);
Set attack
of audio_signal
.
Since: 6.2.0
GList *
ags_audio_signal_get_note (AgsAudioSignal *audio_signal);
Get note.
Since: 3.1.0
void ags_audio_signal_set_note (AgsAudioSignal *audio_signal,GList *note);
Set note by replacing existing.
audio_signal |
the AgsAudioSignal |
|
note |
the GList containing AgsNote. |
[element-type AgsAudio.Note][transfer full] |
Since: 3.1.0
void ags_audio_signal_add_note (AgsAudioSignal *audio_signal,GObject *note);
Add note to audio_signal
.
Since: 3.0.0
void ags_audio_signal_remove_note (AgsAudioSignal *audio_signal,GObject *note);
Remove note from audio_signal
.
Since: 3.0.0
GList *
ags_audio_signal_get_stream (AgsAudioSignal *audio_signal);
Get stream.
Since: 3.8.11
void ags_audio_signal_set_stream (AgsAudioSignal *audio_signal,GList *stream);
Set stream by replacing existing.
audio_signal |
the AgsAudioSignal |
|
stream |
the GList containing audio data. |
[element-type guint8][transfer full] |
Since: 3.8.11
gboolean ags_audio_signal_test_stream_mode (AgsAudioSignal *audio_signal,AgsAudioSignalStreamMode stream_mode);
Test stream_mode
to be set on audio_signal
.
Since: 6.2.0
void ags_audio_signal_set_stream_mode (AgsAudioSignal *audio_signal,AgsAudioSignalStreamMode stream_mode);
Set stream mode of audio_signal
.
Since: 6.2.0
guint
ags_audio_signal_get_note_256th_attack
(AgsAudioSignal *audio_signal);
Get note 256th attack of audio_signal
.
Since: 6.2.0
void ags_audio_signal_set_note_256th_attack (AgsAudioSignal *audio_signal,guint note_256th_attack);
Set note_256th_attack
of audio_signal
.
Since: 6.2.0
void
ags_audio_signal_add_stream (AgsAudioSignal *audio_signal);
Adds a buffer at the end of the stream.
Since: 3.0.0
void ags_audio_signal_stream_resize (AgsAudioSignal *audio_signal,guint length);
Resize stream of audio_signal
to length
number of buffers.
Since: 3.0.0
void ags_audio_signal_stream_safe_resize (AgsAudioSignal *audio_signal,guint length);
Resize stream of audio_signal
to length
number of buffers. But doesn't shrink
more than the current stream position.
Since: 3.0.0
void
ags_audio_signal_clear (AgsAudioSignal *audio_signal);
Clear audio_signal
.
Since: 3.4.1
void ags_audio_signal_duplicate_stream (AgsAudioSignal *audio_signal,AgsAudioSignal *default_template);
Apply default_template
audio data to audio_signal
. Note should only be invoked
by proper recall context because only the stream of default_template
is locked.
Since: 3.0.0
void ags_audio_signal_feed (AgsAudioSignal *audio_signal,AgsAudioSignal *default_template,guint frame_count);
Feed audio signal to grow upto frame count.
audio_signal |
the AgsAudioSignal |
|
default_template |
the default template AgsAudioSignal |
|
frame_count |
the new frame count |
Since: 3.0.0
void ags_audio_signal_feed_extended (AgsAudioSignal *audio_signal,AgsAudioSignal *default_template,guint frame_count,guint old_frame_count,gboolean do_open,gboolean do_close);
Feed audio signal to grow upto frame count.
audio_signal |
the AgsAudioSignal |
|
default_template |
the default template AgsAudioSignal |
|
frame_count |
the new frame count |
|
old_frame_count |
the old frame count |
|
do_open |
open feed |
|
do_close |
close feed |
Since: 3.3.0
void ags_audio_signal_open_feed (AgsAudioSignal *audio_signal,AgsAudioSignal *default_template,guint frame_count,guint old_frame_count);
Feed audio signal to grow upto frame count.
audio_signal |
the AgsAudioSignal |
|
default_template |
the default template AgsAudioSignal |
|
frame_count |
the new frame count |
|
old_frame_count |
the old frame count |
Since: 3.3.0
void ags_audio_signal_continue_feed (AgsAudioSignal *audio_signal,AgsAudioSignal *default_template,guint frame_count,guint old_frame_count);
Feed audio signal to grow upto frame count.
audio_signal |
the AgsAudioSignal |
|
default_template |
the default template AgsAudioSignal |
|
frame_count |
the new frame count |
|
old_frame_count |
the old frame count |
Since: 3.3.0
void ags_audio_signal_close_feed (AgsAudioSignal *audio_signal,AgsAudioSignal *default_template,guint frame_count,guint old_frame_count);
Feed audio signal to grow upto frame count.
audio_signal |
the AgsAudioSignal |
|
default_template |
the default template AgsAudioSignal |
|
frame_count |
the new frame count |
|
old_frame_count |
the old frame count |
Since: 3.3.0
guint
ags_audio_signal_get_length_till_current
(AgsAudioSignal *audio_signal);
Counts the buffers from :stream upto :stream-current.
Since: 3.0.0
gboolean ags_audio_signal_contains_note (AgsAudioSignal *audio_signal,AgsNote *note);
Check if audio_signal
contains note
.
Since: 3.3.0
AgsAudioSignal *
ags_audio_signal_get_default_template (GList *audio_signal);
Retrieve the default template audio signal.
audio_signal |
the GList containing AgsAudioSignal. |
[element-type AgsAudio.AudioSignal][transfer none] |
Since: 5.0.0
GList *
ags_audio_signal_get_rt_default_template
(GList *audio_signal);
GList *
ags_audio_signal_get_rt_template (GList *audio_signal);
Retrieve the realtime template audio signal.
audio_signal |
a GList containing AgsAudioSignal. |
[element-type AgsAudio.AudioSignal][transfer none] |
the rt-templates as GList containing AgsAudioSignal.
[element-type AgsAudio.AudioSignal][transfer full]
Since: 3.0.0
GList * ags_audio_signal_find_stream_current (GList *audio_signal,GObject *recall_id);
Retrieve next current stream of AgsAudioSignal list. Warning this function does not lock the stream mutex.
audio_signal |
the GList containing AgsAudioSignal. |
[element-type AgsAudio.AudioSignal][transfer none] |
recall_id |
the matching AgsRecallID |
Since: 3.0.0
GList * ags_audio_signal_find_by_recall_id (GList *audio_signal,GObject *recall_id);
Retrieve next audio signal refering to recall_id
audio_signal |
a GList containing AgsAudioSignal. |
[element-type AgsAudio.AudioSignal][transfer none] |
recall_id |
matching AgsRecallID |
matching GList containing AgsAudioSignal.
[element-type AgsAudio.AudioSignal][transfer none]
Since: 3.0.0
gboolean ags_audio_signal_is_active (GList *audio_signal,GObject *recall_id);
Check if is active.
audio_signal |
the GList containing AgsAudioSignal. |
[element-type AgsAudio.AudioSignal][transfer none] |
recall_id |
the AgsRecallID |
Since: 3.0.0
AgsAudioSignal * ags_audio_signal_new (GObject *output_soundcard,GObject *recycling,GObject *recall_id);
Creates a AgsAudioSignal, with defaults of output_soundcard
, linking recycling
tree
and refering to recall_id
.
output_soundcard |
the assigned output AgsSoundcard |
|
recycling |
the AgsRecycling |
|
recall_id |
the AgsRecallID, it can be NULL if |
Since: 3.0.0
AgsAudioSignal * ags_audio_signal_new_with_length (GObject *output_soundcard,GObject *recycling,GObject *recall_id,guint length);
Creates a AgsAudioSignal, with defaults of soundcard
, linking recycling
tree
and refering to recall_id
.
The audio data is tiled to length
frame count.
output_soundcard |
the assigned output AgsSoundcard |
|
recycling |
the AgsRecycling |
|
recall_id |
the AgsRecallID, it can be NULL if |
|
length |
audio data frame count |
Since: 3.0.0
Enum values to control the behavior or indicate internal state of AgsAudioSignal by enable/disable as flags.
Enum values to set the mode of AgsAudioSignal stream behaviour by enable/disable setting mode.
“attack” property “attack” guint
The attack to be used.
Owner: AgsAudioSignal
Flags: Read / Write
Default value: 0
Since: 3.0.0
“buffer-size” property “buffer-size” guint
The buffer size to be used.
Owner: AgsAudioSignal
Flags: Read / Write
Default value: 0
Since: 3.0.0
“damping” property “damping” AgsComplex *
Damping of timbre.
Owner: AgsAudioSignal
Flags: Read / Write
Since: 3.0.0
“default-template” property“default-template” AgsAudioSignal *
The assigned AgsAudioSignal default template.
Owner: AgsAudioSignal
Flags: Read / Write
Since: 5.0.0
“delay” property “delay” double
The delay to be used.
Owner: AgsAudioSignal
Flags: Read / Write
Allowed values: >= 0
Default value: 0
Since: 3.0.0
“first-frame” property “first-frame” guint
The first frame of stream.
Owner: AgsAudioSignal
Flags: Read / Write
Default value: 0
Since: 3.0.0
“format” property “format” guint
The format to be used.
Owner: AgsAudioSignal
Flags: Read / Write
Default value: 0
Since: 3.0.0
“frame-count” property “frame-count” guint
The initial size of audio data.
Owner: AgsAudioSignal
Flags: Read / Write
Default value: 0
Since: 3.0.0
“input-soundcard” property “input-soundcard” GObject *
The assigned input AgsSoundcard.
Owner: AgsAudioSignal
Flags: Read / Write
Since: 3.0.0
“input-soundcard-channel” property “input-soundcard-channel” int
The input soundcard channel.
Owner: AgsAudioSignal
Flags: Read / Write
Allowed values: >= -1
Default value: 0
Since: 3.0.0
“last-frame” property “last-frame” guint
The last frame of stream.
Owner: AgsAudioSignal
Flags: Read / Write
Default value: 0
Since: 3.0.0
“length” property “length” guint
The length of the stream.
Owner: AgsAudioSignal
Flags: Read / Write
Default value: 0
Since: 3.0.0
“loop-end” property “loop-end” guint
The loop end of stream.
Owner: AgsAudioSignal
Flags: Read / Write
Default value: 0
Since: 3.0.0
“loop-start” property “loop-start” guint
The loop start of stream.
Owner: AgsAudioSignal
Flags: Read / Write
Default value: 0
Since: 3.0.0
“note” property “note” gpointer
The assigned AgsNote providing default settings.
[transfer full]
Owner: AgsAudioSignal
Flags: Read / Write
Since: 3.0.0
“note-256th-attack” property “note-256th-attack” guint
The note 256th attack to be used.
Owner: AgsAudioSignal
Flags: Read / Write
Default value: 0
Since: 6.2.0
“output-soundcard” property “output-soundcard” GObject *
The assigned output AgsSoundcard providing default settings.
Owner: AgsAudioSignal
Flags: Read / Write
Since: 3.0.0
“output-soundcard-channel” property “output-soundcard-channel” int
The output soundcard channel.
Owner: AgsAudioSignal
Flags: Read / Write
Allowed values: >= -1
Default value: 0
Since: 3.0.0
“recall-id” property“recall-id” AgsRecallID *
The assigned AgsRecallID providing context.
Owner: AgsAudioSignal
Flags: Read / Write
Since: 3.0.0
“recycling” property“recycling” AgsRecycling *
The assigned AgsRecycling linking tree.
Owner: AgsAudioSignal
Flags: Read / Write
Since: 3.0.0
“rt-template” property“rt-template” AgsAudioSignal *
The assigned AgsAudioSignal realtime template.
Owner: AgsAudioSignal
Flags: Read / Write
Since: 3.0.0
“samplerate” property “samplerate” guint
The samplerate to be used.
Owner: AgsAudioSignal
Flags: Read / Write
Default value: 0
Since: 3.0.0
“stream” property “stream” gpointer
The stream it contains.
Owner: AgsAudioSignal
Flags: Read
Since: 3.0.0
“stream-current” property “stream-current” gpointer
The current stream.
Owner: AgsAudioSignal
Flags: Read
Since: 3.0.0
“stream-end” property “stream-end” gpointer
The end of stream.
Owner: AgsAudioSignal
Flags: Read
Since: 3.0.0
“timbre-end” property “timbre-end” guint
The timbre's end frame.
Owner: AgsAudioSignal
Flags: Read / Write
Default value: 0
Since: 3.0.0
“timbre-start” property “timbre-start” guint
The timbre's start frame.
Owner: AgsAudioSignal
Flags: Read / Write
Default value: 0
Since: 3.0.0
“vibration” property “vibration” AgsComplex *
Vibration of timbre.
Owner: AgsAudioSignal
Flags: Read / Write
Since: 3.0.0
“add-note” signalvoid user_function (AgsAudioSignal *audio_signal, GObject *note, gpointer user_data)
The ::add-note signal notifies about adding note
.
audio_signal |
the AgsAudioSignal |
|
note |
the AgsNote |
|
user_data |
user data set when the signal handler was connected. |
Flags: Run Last
Since: 3.0.0
“refresh-data” signalvoid user_function (AgsAudioSignal *audio_signal, gpointer user_data)
The ::refresh-data signal notifies about requesting to refresh data.
audio_signal |
the AgsAudioSignal |
|
user_data |
user data set when the signal handler was connected. |
Flags: Run Last
Since: 3.0.0
“remove-note” signalvoid user_function (AgsAudioSignal *audio_signal, GObject *note, gpointer user_data)
The ::remove-note signal notifies about removing note
.
audio_signal |
the AgsAudioSignal |
|
note |
the AgsNote |
|
user_data |
user data set when the signal handler was connected. |
Flags: Run Last
Since: 3.0.0