Kaynağa Gözat

Bug fix so that downward tone sweeps will work.

Fixed problem with tone_hi - tone_lo computation being done
with unsigned arithmetic, and thus always giving a positive result.
dds
Bill Pugh 9 yıl önce
ebeveyn
işleme
4103b9d08a
1 değiştirilmiş dosya ile 5 ekleme ve 4 silme
  1. +5
    -4
      synth_tonesweep.cpp

+ 5
- 4
synth_tonesweep.cpp Dosyayı Görüntüle



tone_amp = t_amp * 32767.0; tone_amp = t_amp * 32767.0;


tone_tmp = tone_hi - tone_lo;
tone_sign = 1;
tone_freq = tone_lo*0x100000000LL; tone_freq = tone_lo*0x100000000LL;
if(tone_tmp < 0) {
if (tone_hi >= tone_lo) {
tone_tmp = tone_hi - tone_lo;
tone_sign = 1;
} else {
tone_sign = -1; tone_sign = -1;
tone_tmp = -tone_tmp;
tone_tmp = tone_lo - tone_hi;
} }
tone_tmp = tone_tmp/t_time/44100.; tone_tmp = tone_tmp/t_time/44100.;
tone_incr = (tone_tmp * 0x100000000LL); tone_incr = (tone_tmp * 0x100000000LL);

Yükleniyor…
İptal
Kaydet