From a55a15756a4c323882eb073ceb62946ae8e3b7a9 Mon Sep 17 00:00:00 2001 From: heck Date: Wed, 30 Oct 2024 04:01:51 +0100 Subject: [PATCH] main_testtone.cc - simple as possible. but stereo. --- examples/main_testtone.cc | 75 ++++++++++++++++----------------------- 1 file changed, 31 insertions(+), 44 deletions(-) diff --git a/examples/main_testtone.cc b/examples/main_testtone.cc index 0890985..c3ec851 100644 --- a/examples/main_testtone.cc +++ b/examples/main_testtone.cc @@ -1,54 +1,41 @@ -#include "types.hh" +#include "daisy_seed.h" +#include "daisysp.h" -namespace Heck { - namespace Constants { - } - - ld::DaisySeed hw{}; - dsp::Oscillator osc{}; +namespace ld = daisy; +namespace dsp = daisysp; - void AudioCallback( - ld::AudioHandle::InterleavingInputBuffer in, - ld::AudioHandle::InterleavingOutputBuffer out, - size_t size) - { - float osc_out; - osc.SetFreq(1000); +ld::DaisySeed seed{}; +dsp::Oscillator osc_l{}; +dsp::Oscillator osc_r{}; - for (size_t i = 0; i < size; i += 2) { - osc.SetAmp(1.0); - osc_out = osc.Process(); - osc_out *= 0.005; - out[i] = osc_out; - out[i + 1] = osc_out; - } +void AudioCallback( + ld::AudioHandle::InputBuffer in, + ld::AudioHandle::OutputBuffer out, + size_t size) +{ + float osc_out{}; + for (size_t i = 0; i < size; i++) { + out[0][i] = osc_l.Process() * 0.005; + out[1][i] = osc_r.Process() * 0.005; } +} - void init() - { - hw.Configure(); - hw.Init(); - hw.SetAudioBlockSize(4); - float samplerate = hw.AudioSampleRate(); - - osc.Init(samplerate); - osc.SetWaveform(osc.WAVE_SIN); - osc.SetAmp(1.f); - osc.SetFreq(1000); - - hw.StartAudio(AudioCallback); - } +int main(void) +{ + // system init + seed.Configure(); + seed.Init(); + seed.SetAudioBlockSize(4); + float samplerate = seed.AudioSampleRate(); - void mainloop() - { - for (;;) {} - } -} // namespace Heck + // application init + osc_l.Init(samplerate); + osc_l.SetFreq(300); + osc_r.Init(samplerate); + osc_r.SetFreq(400); -int main(void) -{ - Heck::init(); - Heck::mainloop(); + // system main + seed.StartAudio(AudioCallback); return 0; }