@@ -174,6 +174,14 @@ class STKEcho : public AudioEffect, public stk::Echo {
174
174
class STKFreeVerb : public AudioEffect , public stk ::FreeVerb {
175
175
public:
176
176
STKFreeVerb () = default ;
177
+ STKFreeVerb (const STKFreeVerb& copy) = default ;
178
+ AudioEffect* clone () override {
179
+ return new STKFreeVerb (*this );
180
+ }
181
+ StkFloat tick (StkFloat input, unsigned int channel=0 ) override
182
+ {
183
+ return FreeVerb::tick (input, input, channel);
184
+ }
177
185
virtual effect_t process (effect_t in) {
178
186
// just convert between int16 and float
179
187
float value = static_cast <float >(in) / 32767.0 ;
@@ -190,6 +198,10 @@ class STKFreeVerb : public AudioEffect, public stk::FreeVerb {
190
198
class STKChowningReverb : public AudioEffect , public stk ::JCRev {
191
199
public:
192
200
STKChowningReverb () = default ;
201
+ STKChowningReverb (const STKChowningReverb& copy) = default ;
202
+ AudioEffect* clone () override {
203
+ return new STKChowningReverb (*this );
204
+ }
193
205
194
206
virtual effect_t process (effect_t in) {
195
207
// just convert between int16 and float
@@ -207,6 +219,10 @@ class STKChowningReverb : public AudioEffect, public stk::JCRev {
207
219
class STKNReverb : public AudioEffect , public stk ::NRev {
208
220
public:
209
221
STKNReverb (float t60 = 1.0 ) : NRev(t60) {}
222
+ STKNReverb (const STKNReverb& copy) = default ;
223
+ AudioEffect* clone () override {
224
+ return new STKNReverb (*this );
225
+ }
210
226
virtual effect_t process (effect_t in) {
211
227
// just convert between int16 and float
212
228
float value = static_cast <float >(in) / 32767.0 ;
@@ -223,6 +239,10 @@ class STKNReverb : public AudioEffect, public stk::NRev {
223
239
class STKPerryReverb : public AudioEffect , public stk ::PRCRev {
224
240
public:
225
241
STKPerryReverb (float t60 = 1.0 ) : PRCRev(t60) {}
242
+ STKPerryReverb (const STKPerryReverb& copy) = default ;
243
+ AudioEffect* clone () override {
244
+ return new STKPerryReverb (*this );
245
+ }
226
246
virtual effect_t process (effect_t in) {
227
247
// just convert between int16 and float
228
248
float value = static_cast <float >(in) / 32767.0 ;
0 commit comments