## AgsTimeStretchUtil

AgsTimeStretchUtil — time stretch util

## Stability Level

Stable, unless otherwise indicated

## Functions

AgsTimeStretchUtil * | ags_time_stretch_util_alloc ()
gpointer | ags_time_stretch_util_copy ()
void | ags_time_stretch_util_free ()
gpointer | ags_time_stretch_util_get_source ()
void | ags_time_stretch_util_set_source ()
guint | ags_time_stretch_util_get_source_stride ()
void | ags_time_stretch_util_set_source_stride ()
guint | ags_time_stretch_util_get_source_buffer_length ()
void | ags_time_stretch_util_set_source_buffer_length ()
gpointer | ags_time_stretch_util_get_destination ()
void | ags_time_stretch_util_set_destination ()
guint | ags_time_stretch_util_get_destination_stride ()
void | ags_time_stretch_util_set_destination_stride ()
guint | ags_time_stretch_util_get_destination_buffer_length ()
void | ags_time_stretch_util_set_destination_buffer_length ()
guint | ags_time_stretch_util_get_buffer_length ()
void | ags_time_stretch_util_set_buffer_length ()
AgsSoundcardFormat | ags_time_stretch_util_get_format ()
void | ags_time_stretch_util_set_format ()
guint | ags_time_stretch_util_get_samplerate ()
void | ags_time_stretch_util_set_samplerate ()
gdouble | ags_time_stretch_util_get_frequency ()
void | ags_time_stretch_util_set_frequency ()
gdouble | ags_time_stretch_util_get_orig_bpm ()
void | ags_time_stretch_util_set_orig_bpm ()
gdouble | ags_time_stretch_util_get_new_bpm ()
void | ags_time_stretch_util_set_new_bpm ()
void | ags_time_stretch_util_stretch_s8 ()
void | ags_time_stretch_util_stretch_s16 ()
void | ags_time_stretch_util_stretch_s24 ()
void | ags_time_stretch_util_stretch_s32 ()
void | ags_time_stretch_util_stretch_s64 ()
void | ags_time_stretch_util_stretch_float ()
void | ags_time_stretch_util_stretch_double ()
void | ags_time_stretch_util_stretch_complex ()
void | ags_time_stretch_util_stretch ()

## Types and Values

#define | AGS_TIME_STRETCH_UTIL_DEFAULT_FREQUENCY
#define | AGS_TIME_STRETCH_UTIL_INITIALIZER

## Object Hierarchy

        GBoxed
        ╰── AgsTimeStretchUtil

## Includes

    #include <ags/audio/ags_time_stretch_util.h>

## Description

Utility functions to stretch time.

## Functions

### ags_time_stretch_util_alloc ()

    AgsTimeStretchUtil *
    ags_time_stretch_util_alloc ();

Allocate AgsTimeStretchUtil.

#### Returns

the newly allocated AgsTimeStretchUtil

Since: 3.13.0

### ags_time_stretch_util_copy ()

    gpointer
    ags_time_stretch_util_copy (AgsTimeStretchUtil *ptr);

Create a copy of `ptr` .

#### Parameters

ptr | the original AgsTimeStretchUtil |

#### Returns

a pointer of the new AgsTimeStretchUtil

Since: 3.13.0

### ags_time_stretch_util_free ()

    void
    ags_time_stretch_util_free (AgsTimeStretchUtil *ptr);

Free the memory of `ptr` .

#### Parameters

ptr | the AgsTimeStretchUtil |

Since: 3.13.0

### ags_time_stretch_util_get_source ()

    gpointer
    ags_time_stretch_util_get_source (AgsTimeStretchUtil *time_stretch_util);

Get source buffer of `time_stretch_util` .

#### Parameters

time_stretch_util | the AgsTimeStretchUtil |

#### Returns

the source buffer

Since: 3.13.0

### ags_time_stretch_util_set_source ()

    void
    ags_time_stretch_util_set_source (AgsTimeStretchUtil *time_stretch_util,
                                      gpointer source);

Set `source` buffer of `time_stretch_util` .

#### Parameters

time_stretch_util | the AgsTimeStretchUtil |
source | the source buffer |

Since: 3.13.0

### ags_time_stretch_util_get_source_stride ()

    guint
    ags_time_stretch_util_get_source_stride
                                   (AgsTimeStretchUtil *time_stretch_util);

Get source stride of `time_stretch_util` .

#### Parameters

time_stretch_util | the AgsTimeStretchUtil |

#### Returns

the source buffer stride

Since: 3.13.0

### ags_time_stretch_util_set_source_stride ()

    void
    ags_time_stretch_util_set_source_stride
                                   (AgsTimeStretchUtil *time_stretch_util,
                                    guint source_stride);

Set `source` stride of `time_stretch_util` .

#### Parameters

time_stretch_util | the AgsTimeStretchUtil |
source_stride | the source buffer stride |

Since: 3.13.0

### ags_time_stretch_util_get_source_buffer_length ()

    guint
    ags_time_stretch_util_get_source_buffer_length
                                   (AgsTimeStretchUtil *time_stretch_util);

Get source buffer length of `time_stretch_util` .

#### Parameters

time_stretch_util | the AgsTimeStretchUtil |

#### Returns

the source buffer length

Since: 3.13.0

### ags_time_stretch_util_set_source_buffer_length ()

    void
    ags_time_stretch_util_set_source_buffer_length
                                   (AgsTimeStretchUtil *time_stretch_util,
                                    guint source_buffer_length);

Set `source_buffer_length` of `time_stretch_util` .

#### Parameters

time_stretch_util | the AgsTimeStretchUtil |
source_buffer_length | the buffer length |

Since: 3.13.0

### ags_time_stretch_util_get_destination ()

    gpointer
    ags_time_stretch_util_get_destination (AgsTimeStretchUtil *time_stretch_util);

Get destination buffer of `time_stretch_util` .

#### Parameters

time_stretch_util | the AgsTimeStretchUtil |

#### Returns

the destination buffer

Since: 3.13.0

### ags_time_stretch_util_set_destination ()

    void
    ags_time_stretch_util_set_destination (AgsTimeStretchUtil *time_stretch_util,
                                           gpointer destination);

Set `destination` buffer of `time_stretch_util` .

#### Parameters

time_stretch_util | the AgsTimeStretchUtil |
destination | the destination buffer |

Since: 3.13.0

### ags_time_stretch_util_get_destination_stride ()

    guint
    ags_time_stretch_util_get_destination_stride
                                   (AgsTimeStretchUtil *time_stretch_util);

Get destination stride of `time_stretch_util` .

#### Parameters

time_stretch_util | the AgsTimeStretchUtil |

#### Returns

the destination buffer stride

Since: 3.13.0

### ags_time_stretch_util_set_destination_stride ()

    void
    ags_time_stretch_util_set_destination_stride
                                   (AgsTimeStretchUtil *time_stretch_util,
                                    guint destination_stride);

Set `destination` stride of `time_stretch_util` .

#### Parameters

time_stretch_util | the AgsTimeStretchUtil |
destination_stride | the destination buffer stride |

Since: 3.13.0

### ags_time_stretch_util_get_destination_buffer_length ()

    guint
    ags_time_stretch_util_get_destination_buffer_length
                                   (AgsTimeStretchUtil *time_stretch_util);

Get destination buffer length of `time_stretch_util` .

#### Parameters

time_stretch_util | the AgsTimeStretchUtil |

#### Returns

the destination buffer length

Since: 3.13.0

### ags_time_stretch_util_set_destination_buffer_length ()

    void
    ags_time_stretch_util_set_destination_buffer_length
                                   (AgsTimeStretchUtil *time_stretch_util,
                                    guint destination_buffer_length);

Set `destination_buffer_length` of `time_stretch_util` .

#### Parameters

time_stretch_util | the AgsTimeStretchUtil |
destination_buffer_length | the buffer length |

Since: 3.13.0

### ags_time_stretch_util_get_buffer_length ()

    guint
    ags_time_stretch_util_get_buffer_length
                                   (AgsTimeStretchUtil *time_stretch_util);

Get buffer size of `time_stretch_util` .

#### Parameters

time_stretch_util | the AgsTimeStretchUtil |

#### Returns

the buffer size

Since: 3.13.0

### ags_time_stretch_util_set_buffer_length ()

    void
    ags_time_stretch_util_set_buffer_length
                                   (AgsTimeStretchUtil *time_stretch_util,
                                    guint buffer_length);

Set `buffer_length` of `time_stretch_util` .

#### Parameters

time_stretch_util | the AgsTimeStretchUtil |
buffer_length | the buffer size |

Since: 3.13.0

### ags_time_stretch_util_get_format ()

    AgsSoundcardFormat
    ags_time_stretch_util_get_format (AgsTimeStretchUtil *time_stretch_util);

Get format of `time_stretch_util` .

#### Parameters

time_stretch_util | the AgsTimeStretchUtil |

#### Returns

the format

Since: 3.13.0

### ags_time_stretch_util_set_format ()

    void
    ags_time_stretch_util_set_format (AgsTimeStretchUtil *time_stretch_util,
                                      AgsSoundcardFormat format);

Set `format` of `time_stretch_util` .

#### Parameters

time_stretch_util | the AgsTimeStretchUtil |
format | the format |

Since: 3.13.0

### ags_time_stretch_util_get_samplerate ()

    guint
    ags_time_stretch_util_get_samplerate (AgsTimeStretchUtil *time_stretch_util);

Get samplerate of `time_stretch_util` .

#### Parameters

time_stretch_util | the AgsTimeStretchUtil |

#### Returns

the samplerate

Since: 3.13.0

### ags_time_stretch_util_set_samplerate ()

    void
    ags_time_stretch_util_set_samplerate (AgsTimeStretchUtil *time_stretch_util,
                                          guint samplerate);

Set `samplerate` of `time_stretch_util` .

#### Parameters

time_stretch_util | the AgsTimeStretchUtil |
samplerate | the samplerate |

Since: 3.13.0

### ags_time_stretch_util_get_frequency ()

    gdouble
    ags_time_stretch_util_get_frequency (AgsTimeStretchUtil *time_stretch_util);

Get frequency of `time_stretch_util` .

#### Parameters

time_stretch_util | the AgsTimeStretchUtil |

#### Returns

the frequency

Since: 3.13.0

### ags_time_stretch_util_set_frequency ()

    void
    ags_time_stretch_util_set_frequency (AgsTimeStretchUtil *time_stretch_util,
                                         gdouble frequency);

Set `frequency` of `time_stretch_util` .

#### Parameters

time_stretch_util | the AgsTimeStretchUtil |
frequency | the frequency |

Since: 3.13.0

### ags_time_stretch_util_get_orig_bpm ()

    gdouble
    ags_time_stretch_util_get_orig_bpm (AgsTimeStretchUtil *time_stretch_util);

Get original BPM of `time_stretch_util` .

#### Parameters

time_stretch_util | the AgsTimeStretchUtil |

#### Returns

the original BPM

Since: 3.13.0

### ags_time_stretch_util_set_orig_bpm ()

    void
    ags_time_stretch_util_set_orig_bpm (AgsTimeStretchUtil *time_stretch_util,
                                        gdouble orig_bpm);

Set `orig_bpm` of `time_stretch_util` .

#### Parameters

time_stretch_util | the AgsTimeStretchUtil |
orig_bpm | the original BPM |

Since: 3.13.0

### ags_time_stretch_util_get_new_bpm ()

    gdouble
    ags_time_stretch_util_get_new_bpm (AgsTimeStretchUtil *time_stretch_util);

Get new BPM of `time_stretch_util` .

#### Parameters

time_stretch_util | the AgsTimeStretchUtil |

#### Returns

the new BPM

Since: 3.13.0

### ags_time_stretch_util_set_new_bpm ()

    void
    ags_time_stretch_util_set_new_bpm (AgsTimeStretchUtil *time_stretch_util,
                                       gdouble new_bpm);

Set `new_bpm` of `time_stretch_util` .

#### Parameters

time_stretch_util | the AgsTimeStretchUtil |
new_bpm | the new_bpm |

Since: 3.13.0

### ags_time_stretch_util_stretch_s8 ()

    void
    ags_time_stretch_util_stretch_s8 (AgsTimeStretchUtil *time_stretch_util);

Stretch `time_stretch_util` of signed 8 bit data.

#### Parameters

time_stretch_util | the AgsTimeStretchUtil |

Since: 3.13.0

### ags_time_stretch_util_stretch_s16 ()

    void
    ags_time_stretch_util_stretch_s16 (AgsTimeStretchUtil *time_stretch_util);

Stretch `time_stretch_util` of signed 16 bit data.

#### Parameters

time_stretch_util | the AgsTimeStretchUtil |

Since: 3.13.0

### ags_time_stretch_util_stretch_s24 ()

    void
    ags_time_stretch_util_stretch_s24 (AgsTimeStretchUtil *time_stretch_util);

Stretch `time_stretch_util` of signed 24 bit data.

#### Parameters

time_stretch_util | the AgsTimeStretchUtil |

Since: 3.13.0

### ags_time_stretch_util_stretch_s32 ()

    void
    ags_time_stretch_util_stretch_s32 (AgsTimeStretchUtil *time_stretch_util);

Stretch `time_stretch_util` of signed 32 bit data.

#### Parameters

time_stretch_util | the AgsTimeStretchUtil |

Since: 3.13.0

### ags_time_stretch_util_stretch_s64 ()

    void
    ags_time_stretch_util_stretch_s64 (AgsTimeStretchUtil *time_stretch_util);

Stretch `time_stretch_util` of signed 64 bit data.

#### Parameters

time_stretch_util | the AgsTimeStretchUtil |

Since: 3.13.0

### ags_time_stretch_util_stretch_float ()

    void
    ags_time_stretch_util_stretch_float (AgsTimeStretchUtil *time_stretch_util);

Stretch `time_stretch_util` of floating point data.

#### Parameters

time_stretch_util | the AgsTimeStretchUtil |

Since: 3.13.0

### ags_time_stretch_util_stretch_double ()

    void
    ags_time_stretch_util_stretch_double (AgsTimeStretchUtil *time_stretch_util);

Stretch `time_stretch_util` of double precision floating point data.

#### Parameters

time_stretch_util | the AgsTimeStretchUtil |

Since: 3.13.0

### ags_time_stretch_util_stretch_complex ()

    void
    ags_time_stretch_util_stretch_complex (AgsTimeStretchUtil *time_stretch_util);

Stretch `time_stretch_util` of complex data.

#### Parameters

time_stretch_util | the AgsTimeStretchUtil |

Since: 3.13.0

### ags_time_stretch_util_stretch ()

    void
    ags_time_stretch_util_stretch (AgsTimeStretchUtil *time_stretch_util);

Stretch `time_stretch_util` .

#### Parameters

time_stretch_util | the AgsTimeStretchUtil |

Since: 3.13.0

## Types and Values

### AGS_TIME_STRETCH_UTIL_DEFAULT_FREQUENCY

    #define AGS_TIME_STRETCH_UTIL_DEFAULT_FREQUENCY (440.0)

### AGS_TIME_STRETCH_UTIL_INITIALIZER

    #define             AGS_TIME_STRETCH_UTIL_INITIALIZER