diff options
Diffstat (limited to 'tests/xttest_util.cpp')
-rw-r--r-- | tests/xttest_util.cpp | 12 |
1 files changed, 11 insertions, 1 deletions
diff --git a/tests/xttest_util.cpp b/tests/xttest_util.cpp index 47fbf8a..c10ff53 100644 --- a/tests/xttest_util.cpp +++ b/tests/xttest_util.cpp @@ -22,6 +22,17 @@ void xttest_gen_sine(double *table, uint32_t tablesize, double samplerate, doubl } } +void xttest_gen_sawtooth(double *table, uint32_t tablesize, double samplerate, double frequency, double amplitude) +{ + int samples_per_period = samplerate / frequency; + + for (uint32_t i = 0; i < tablesize; ++i) + { + int phase = i % samples_per_period; + table[i] = ((phase / (double)samples_per_period) * 2.0 - 1.0) * amplitude; + } +} + void xttest_gen_noise(double *table, uint32_t tablesize, double amplitude) { for (uint32_t i = 0; i < tablesize; ++i) @@ -30,7 +41,6 @@ void xttest_gen_noise(double *table, uint32_t tablesize, double amplitude) } } - uint16_t xttest_ftom(double frequency) { return (int)roundf(6900.0 + 1200.0 * log2(frequency / 440.0)); |