Top | ![]() |
![]() |
![]() |
![]() |
#define | AGS_WAVE_GET_OBJ_MUTEX() |
pthread_mutex_t * | ags_wave_get_class_mutex () |
gboolean | ags_wave_test_flags () |
void | ags_wave_set_flags () |
void | ags_wave_unset_flags () |
void | ags_wave_set_samplerate () |
void | ags_wave_set_buffer_size () |
void | ags_wave_set_format () |
GList * | ags_wave_find_near_timestamp () |
GList * | ags_wave_add () |
void | ags_wave_add_buffer () |
void | ags_wave_remove_buffer () |
GList * | ags_wave_get_selection () |
gboolean | ags_wave_is_buffer_selected () |
AgsBuffer * | ags_wave_find_point () |
GList * | ags_wave_find_region () |
void | ags_wave_free_selection () |
void | ags_wave_add_region_to_selection () |
void | ags_wave_remove_region_from_selection () |
void | ags_wave_add_all_to_selection () |
xmlNode * | ags_wave_copy_selection () |
xmlNode * | ags_wave_cut_selection () |
void | ags_wave_insert_from_clipboard () |
void | ags_wave_insert_from_clipboard_extended () |
AgsWave * | ags_wave_new () |
#define | AGS_IS_WAVE() |
#define | AGS_WAVE() |
#define | AGS_WAVE_CLASS() |
#define | AGS_WAVE_GET_CLASS() |
GType | ags_wave_get_type () |
AgsAudio * | audio | Read / Write |
gpointer | buffer | Read / Write |
guint | buffer-size | Read / Write |
guint | format | Read / Write |
guint | line | Read / Write |
guint | samplerate | Read / Write |
AgsTimestamp * | timestamp | Read / Write |
#define | AGS_WAVE_DEFAULT_BPM |
#define | AGS_WAVE_TICS_PER_BEAT |
#define | AGS_WAVE_MINIMUM_BUFFER_LENGTH |
#define | AGS_WAVE_DEFAULT_BUFFER_LENGTH |
#define | AGS_WAVE_DEFAULT_LENGTH |
#define | AGS_WAVE_DEFAULT_JIFFIE |
#define | AGS_WAVE_DEFAULT_DURATION |
#define | AGS_WAVE_DEFAULT_OFFSET |
#define | AGS_WAVE_CLIPBOARD_VERSION |
#define | AGS_WAVE_CLIPBOARD_TYPE |
#define | AGS_WAVE_CLIPBOARD_FORMAT |
enum | AgsWaveFlags |
#define | AGS_TYPE_WAVE |
struct | AgsWave |
struct | AgsWaveClass |
pthread_mutex_t *
ags_wave_get_class_mutex ();
Use this function's returned mutex to access mutex fields.
Since: 2.0.0
gboolean ags_wave_test_flags (AgsWave *wave
,guint flags
);
Test flags
to be set on wave
.
Since: 2.0.0
void ags_wave_set_flags (AgsWave *wave
,guint flags
);
Set flags
on wave
.
Since: 2.0.0
void ags_wave_unset_flags (AgsWave *wave
,guint flags
);
Unset flags
on wave
.
Since: 2.0.0
void ags_wave_set_samplerate (AgsWave *wave
,guint samplerate
);
Set samplerate.
Since: 2.0.0
void ags_wave_set_buffer_size (AgsWave *wave
,guint buffer_size
);
Set buffer size.
Since: 2.0.0
void ags_wave_set_format (AgsWave *wave
,guint format
);
Set format.
Since: 2.0.0
GList * ags_wave_find_near_timestamp (GList *wave
,guint line
,AgsTimestamp *timestamp
);
Retrieve appropriate wave for timestamp.
wave |
||
line |
the matching audio channel |
|
timestamp |
the matching AgsTimestamp, or |
Since: 2.0.0
GList * ags_wave_add (GList *wave
,AgsWave *new_wave
);
Add new_wave
sorted to wave
Since: 2.0.0
void ags_wave_add_buffer (AgsWave *wave
,AgsBuffer *buffer
,gboolean use_selection_list
);
Add buffer
to wave
.
Since: 2.0.0
void ags_wave_remove_buffer (AgsWave *wave
,AgsBuffer *buffer
,gboolean use_selection_list
);
Removes buffer
from wave
.
Since: 2.0.0
GList *
ags_wave_get_selection (AgsWave *wave
);
Retrieve selection.
Since: 2.0.0
gboolean ags_wave_is_buffer_selected (AgsWave *wave
,AgsBuffer *buffer
);
Check selection for buffer.
Since: 2.0.0
AgsBuffer * ags_wave_find_point (AgsWave *wave
,guint64 x
,gboolean use_selection_list
);
Find buffers by offset.
Since: 2.0.0
GList * ags_wave_find_region (AgsWave *wave
,guint64 x0
,guint64 x1
,gboolean use_selection_list
);
Find buffers by offset and region.
Since: 2.0.0
void
ags_wave_free_selection (AgsWave *wave
);
Clear selection.
Since: 2.0.0
void ags_wave_add_region_to_selection (AgsWave *wave
,guint64 x0
,guint64 x1
,gboolean replace_current_selection
);
Add buffer within region to selection.
Since: 2.0.0
void ags_wave_remove_region_from_selection (AgsWave *wave
,guint64 x0
,guint64 x1
);
Remove buffers within region of selection.
Since: 2.0.0
void
ags_wave_add_all_to_selection (AgsWave *wave
);
Select all buffer to selection.
Since: 2.0.0
xmlNode *
ags_wave_copy_selection (AgsWave *wave
);
Copy selection to clipboard.
Since: 2.0.0
xmlNode *
ags_wave_cut_selection (AgsWave *wave
);
Cut selection to clipboard.
Since: 2.0.0
void ags_wave_insert_from_clipboard (AgsWave *wave
,xmlNode *wave_node
,gboolean reset_x_offset
,guint64 x_offset
,gdouble delay
,guint attack
);
Paste previously copied buffers.
Since: 2.0.0
void ags_wave_insert_from_clipboard_extended (AgsWave *wave
,xmlNode *wave_node
,gboolean reset_x_offset
,guint64 x_offset
,gdouble delay
,guint attack
,gboolean match_line
,gboolean do_replace
);
Paste previously copied buffers.
wave |
the AgsWave |
|
wave_node |
the clipboard XML data |
|
reset_x_offset |
if |
|
x_offset |
region start cursor offset |
|
delay |
the delay to be used |
|
attack |
the attack to be used |
|
match_line |
only paste if channel matches |
|
do_replace |
if |
Since: 2.0.0
AgsWave * ags_wave_new (GObject *audio
,guint line
);
Creates a new instance of AgsWave.
Since: 2.0.0
#define AGS_WAVE_CLASS(class) (G_TYPE_CHECK_CLASS_CAST((class), AGS_TYPE_WAVE, AgsWaveClass))
#define AGS_WAVE_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS (obj, AGS_TYPE_WAVE, AgsWaveClass))
#define AGS_WAVE_DEFAULT_LENGTH (65535.0 / AGS_WAVE_TICS_PER_BEAT - AGS_WAVE_MINIMUM_BUFFER_LENGTH)
#define AGS_WAVE_DEFAULT_JIFFIE (60.0 / AGS_WAVE_DEFAULT_BPM / AGS_WAVE_TICS_PER_BEAT)
#define AGS_WAVE_DEFAULT_DURATION (AGS_WAVE_DEFAULT_LENGTH * AGS_WAVE_DEFAULT_JIFFIE * USEC_PER_SEC)
#define AGS_WAVE_DEFAULT_OFFSET (AGS_WAVE_DEFAULT_BUFFER_LENGTH * AGS_SOUNDCARD_DEFAULT_SAMPLERATE)
Enum values to control the behavior or indicate internal state of AgsWave by enable/disable as flags.
“buffer-size”
property“buffer-size” guint
The audio buffer's buffer size.
Flags: Read / Write
Default value: 1024
Since: 2.0.0
“format”
property“format” guint
The audio buffer's format.
Flags: Read / Write
Default value: 16
Since: 2.0.0
“samplerate”
property“samplerate” guint
The audio buffer's samplerate.
Flags: Read / Write
Default value: 48000
Since: 2.0.0