Rev 5225 | Details | Compare with Previous | Last modification | View Log | RSS feed
Rev | Author | Line No. | Line |
---|---|---|---|
5225 | alpine | 1 | #ifndef RS_SNDGEN_H |
2 | #define RS_SNDGEN_H |
||
3 | |||
4 | #include "rsgame.h" |
||
5 | |||
5243 | alpine | 6 | //#include "rs/rsaudio.h" |
5225 | alpine | 7 | |
8 | typedef struct rs_sgen_reg_t { |
||
9 | int wave_length; |
||
10 | int waves_count; |
||
11 | float *wave; |
||
12 | signed short *wave_out; |
||
13 | } rs_sgen_reg_t; |
||
14 | |||
15 | extern rs_sgen_reg_t rs_sgen_reg; |
||
16 | |||
17 | void rs_sgen_init(int waves_count, int wave_length); |
||
18 | void rs_sgen_wave_out(int index); |
||
19 | void rs_sgen_term(); |
||
20 | |||
21 | void rs_sgen_func_noise(int index, int seed); |
||
22 | void rs_sgen_func_sin(int index, float freq, float p); |
||
23 | void rs_sgen_func_pm(int index, float freq, float p, float k, float freq2, float p2); |
||
24 | |||
25 | void rs_sgen_func_lowpass(int dest, int src, float alpha_start, float alpha_end, float alpha_pow); |
||
26 | void rs_sgen_func_highpass(int dest, int src, float alpha_start, float alpha_end, float alpha_pow); |
||
27 | //void rs_sgen_func_phaser(int dest, int src); |
||
28 | void rs_sgen_func_phaser(int dest, int src, float fb, float lfoPhase, float depth, float range_start, float range_end, float rate); |
||
29 | void rs_sgen_func_normalize(int dest, float amp); |
||
30 | void rs_sgen_func_limiter(int dest, float val); |
||
31 | void rs_sgen_func_reverb(int dest, int src, int echo_delay, float echo_decay_koef); |
||
32 | |||
33 | #define rs_sgen_func_copy(dst,src) rs_sgen_func_add(dst,src,dst,1.0,0.0) |
||
34 | void rs_sgen_func_add(int dest, int src1, int src2, float k1, float k2); |
||
35 | void rs_sgen_func_mult(int dest, int src1, int src2); |
||
36 | |||
37 | void rs_sgen_func_shift(int dest, int src); |
||
38 | |||
39 | //void rs_gen_func_mult_add_value(int dest, int src, float val_mult, float val_add); |
||
40 | |||
41 | |||
5243 | alpine | 42 | |
5225 | alpine | 43 | #endif |