• R/O
  • HTTP
  • SSH
  • HTTPS

timidity41: Commit


Commit MetaInfo

Revision2fc6e3be66beba7db36cd27f7a23c80846f60df3 (tree)
Time2019-03-15 23:21:12
AuthorStarg <starg@user...>
CommiterStarg

Log Message

Merge branch 'unkotim' into dev41

Change Summary

Incremental Difference

--- a/timidity/effect.c
+++ b/timidity/effect.c
@@ -13636,15 +13636,21 @@ static void do_od_ds_parallel(DATA_T *buf, int32 count, InfoOverdrive *info1, In
1363613636 {
1363713637 int32 i, j, k;
1363813638 DATA_T input[2];
13639+ simple_delay *dly = &info2->dly;
1363913640
1364013641 if(count == MAGIC_INIT_EFFECT_INFO) {
1364113642 do_od_ds_multi(buf, count, info1);
13642- do_od_ds_multi(buf, count, info2);
13643+ do_od_ds_multi(buf, count, info2);
13644+ set_delay(&info2->dly, playmode_rate_ms * 1.5);
13645+ return;
13646+ }else if(count == MAGIC_FREE_EFFECT_INFO) {
13647+ free_delay(&info2->dly);
1364313648 return;
1364413649 }else if(count <= 0)
1364513650 return;
1364613651 for(i = 0; i < count; i++) {
1364713652 input[0] = buf[i]; input[1] = buf[i + 1];
13653+ do_delay(&input[1], dly->buf, dly->size, &dly->index);
1364813654 /* waveshaping amp simulation anti-aliasing */
1364913655 sample_filter_left(&info1->bw1, &input[0]);
1365013656 sample_filter_left(&info2->bw1, &input[1]);
--- a/timidity/effect.h
+++ b/timidity/effect.h
@@ -431,30 +431,6 @@ typedef struct {
431431 int32 feedbacki;
432432 } mod_allpass;
433433
434-/*! Moog VCF (resonant IIR state variable filter) */
435-typedef struct {
436- int16 freq, last_freq; /* in Hz */
437- double res_dB, last_res_dB; /* in dB */
438- FLOAT_T df, dq, dp; /* coefficients in fixed-point */
439- FLOAT_T db0, db1, db2, db3, db4;
440- int32 f, q, p; /* coefficients in fixed-point */
441- int32 ib0, ib1, ib2, ib3, ib4;
442-} filter_moog;
443-
444-/*! Moog VCF (resonant IIR state variable filter with distortion) */
445-typedef struct {
446- int16 freq, last_freq; /* in Hz */
447- double res_dB, last_res_dB; /* in dB */
448- double dist, last_dist, f, q, p, d, b0, b1, b2, b3, b4;
449-} filter_moog_dist;
450-
451-/*! LPF18 (resonant IIR lowpass filter with waveshaping) */
452-typedef struct {
453- int16 freq, last_freq; /* in Hz */
454- double dist, res, last_dist, last_res; /* in linear */
455- double ay1, ay2, aout, lastin, kres, value, kp, kp1h;
456-} filter_lpf18;
457-
458434
459435 /*! allpass filter */
460436 typedef struct _allpass {
@@ -939,6 +915,7 @@ typedef struct {
939915 Drive drv1, drv2, drv3;
940916 FilterCoefficients bw1, bw2, bw3, bw4, bq;
941917 InfoAmpSimulator amp;
918+ simple_delay dly;
942919 } InfoOverdrive;
943920
944921 #define PHASER_PHASE 12
Show on old repository browser