## GstBtDelay

GstBtDelay — delay line class

## Functions

GstBtDelay * | gstbt_delay_new ()
void | gstbt_delay_start ()
void | gstbt_delay_flush ()
void | gstbt_delay_stop ()
#define | GSTBT_DELAY_BEFORE()
#define | GSTBT_DELAY_AFTER()
#define | GSTBT_DELAY_READ()
#define | GSTBT_DELAY_WRITE()

## Properties

guint | delaytime | Read / Write

## Types and Values

struct | GstBtDelay

## Object Hierarchy

        GObject
        ╰── GstBtDelay

## Includes

    #include <libgstbuzztrax/delay.h>

## Description

A delay line.

## Functions

### gstbt_delay_new ()

    GstBtDelay *
    gstbt_delay_new (void);

Create a new instance.

#### Returns

the new instance or `NULL` in case of an error

### gstbt_delay_start ()

    void
    gstbt_delay_start (GstBtDelay *self,
                       gint samplerate);

Initialize the delay line.

#### Parameters

self | the delay |
samplerate | the new sampling rate |

### gstbt_delay_flush ()

    void
    gstbt_delay_flush (GstBtDelay *self);

Zero pending data in the delay.

#### Parameters

self | the delay |

### gstbt_delay_stop ()

    void
    gstbt_delay_stop (GstBtDelay *self);

Stop and release the delay line.

#### Parameters

self | the delay |

### GSTBT_DELAY_BEFORE()

    #define             GSTBT_DELAY_BEFORE(self,rb_in,rb_out)

Initialize read/write pointers.

#### Parameters

self | the delay |
rb_in | the write position of the ring-buffer |
rb_out | the read position of the ring-buffer |

### GSTBT_DELAY_AFTER()

    #define             GSTBT_DELAY_AFTER(self,rb_in,rb_out)

Store read/write pointers.

#### Parameters

self | the delay |
rb_in | the write position of the ring-buffer |
rb_out | the read position of the ring-buffer |

### GSTBT_DELAY_READ()

    #define             GSTBT_DELAY_READ(self,rb_out,v)

Read from ring-buffer and advance the position.

#### Parameters

self | the delay |
rb_out | the read position of the ring-buffer |
v | the value from the ring-buffer |

### GSTBT_DELAY_WRITE()

    #define             GSTBT_DELAY_WRITE(self,rb_in,v)

Write to `v` the ring-buffer and advance the position.

#### Parameters

self | the delay |
rb_in | the write position of the ring-buffer |
v | the value to write to the ring-buffer |

## Types and Values

### struct GstBtDelay

    struct GstBtDelay;

Class instance data.

## Property Details

### The `“delaytime”` property

      “delaytime”                guint

Time difference between two echos as milliseconds.

Flags: Read / Write

Allowed values: [1,1000]

Default value: 100