A modern Music Player Daemon based on Rockbox open source high quality audio player
libadwaita
audio
rust
zig
deno
mpris
rockbox
mpd
1
2#ifndef __DELAY_H__
3#define __DELAY_H__
4
5
6extern t_class *sigdelwrite_class;
7
8
9typedef struct delwritectl
10{
11 int c_n;
12 t_sample *c_vec;
13 int c_phase;
14} t_delwritectl;
15
16typedef struct _sigdelwrite
17{
18 t_object x_obj;
19 t_symbol *x_sym;
20 t_delwritectl x_cspace;
21 int x_sortno; /* DSP sort number at which this was last put on chain */
22 int x_rsortno; /* DSP sort # for first delread or write in chain */
23 int x_vecsize; /* vector size for delread~ to use */
24 float x_f;
25} t_sigdelwrite;
26
27#define XTRASAMPS 4
28#define SAMPBLK 4
29
30 /* routine to check that all delwrites/delreads/vds have same vecsize */
31static void sigdelwrite_checkvecsize(t_sigdelwrite *x, int vecsize)
32{
33 if (x->x_rsortno != ugen_getsortno())
34 {
35 x->x_vecsize = vecsize;
36 x->x_rsortno = ugen_getsortno();
37 }
38 else if (vecsize != x->x_vecsize)
39 pd_error(x, "delread/delwrite/vd vector size mismatch");
40}
41
42#endif
43