2018-02-19 21:14:22 +00:00
|
|
|
#pragma once
|
|
|
|
|
|
|
|
#include <stdint.h>
|
|
|
|
|
|
|
|
#include "timidity.h"
|
|
|
|
|
|
|
|
namespace TimidityPlus
|
|
|
|
{
|
|
|
|
|
|
|
|
class Reverb;
|
|
|
|
|
|
|
|
class Effect
|
|
|
|
{
|
|
|
|
void effect_left_right_delay(int32_t *, int32_t);
|
|
|
|
void init_mtrand(void);
|
|
|
|
int32_t my_mod(int32_t, int32_t);
|
|
|
|
|
|
|
|
int turn_counter = 0, tc = 0;
|
|
|
|
int status = 0;
|
|
|
|
double rate0 = 0, rate1 = 0, dr = 0;
|
|
|
|
int32_t prev[AUDIO_BUFFER_SIZE * 2] = { 0 };
|
|
|
|
|
|
|
|
Reverb *reverb;
|
|
|
|
|
|
|
|
public:
|
2018-02-26 08:19:10 +00:00
|
|
|
Effect(Reverb *_reverb)
|
2018-02-19 21:14:22 +00:00
|
|
|
{
|
|
|
|
reverb = _reverb;
|
2018-02-24 11:30:19 +00:00
|
|
|
init_effect();
|
2018-02-19 21:14:22 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
void init_effect();
|
|
|
|
void do_effect(int32_t *buf, int32_t count);
|
|
|
|
|
|
|
|
};
|
|
|
|
|
|
|
|
}
|