Generate a sine wave signal
| 32 | |
| 33 | /// Generate a sine wave signal |
| 34 | inline vector<i16> generateSineWave(size count, float frequency, float sampleRate, i16 amplitude) { |
| 35 | vector<i16> samples; |
| 36 | samples.reserve(count); |
| 37 | for (size i = 0; i < count; ++i) { |
| 38 | float phase = 2.0f * FL_M_PI * frequency * static_cast<float>(i) / sampleRate; |
| 39 | i16 sample = static_cast<i16>(amplitude * fl::sinf(phase)); |
| 40 | samples.push_back(sample); |
| 41 | } |
| 42 | return samples; |
| 43 | } |
| 44 | |
| 45 | /// Alias for generateSineWave (some tests use "generateTone") |
| 46 | inline vector<i16> generateTone(size count, float frequency, float sampleRate, i16 amplitude) { |
no test coverage detected