#include <Bela.h>
#include <algorithm>
#include <libraries/Gui/Gui.h>
#include <libraries/GuiController/GuiController.h>
#include <libraries/Scope/Scope.h>
unsigned int gAudioChannelNum;
float gInBuffer[16];
float gOutBuffer[16];
Scope scope;
Gui gui;
GuiController controller;
bool setup(BelaContext *context, void *userData)
{
//Check input and output number
if(context->audioInChannels != context->audioOutChannels){
printf("Input not mathcing output.\n");
}
gAudioChannelNum = std::min(context->audioInChannels, context->audioOutChannels);
return true;
//Set up scope
scope.setup(0, context->audioSampleRate);
gui.setup(context->projectName);
//Set up Gui
controller.setup(&gui, "EP353");
controller.addSlider("Amplitude", 5.0, 0.0, 20.0, 0.0);//Amplitude Slider
}
void render(BelaContext *context, void *userData)
{
for(unsigned int n = 0; n < context->audioFrames; n++){
for(unsigned int ch = 0; ch < gAudioChannelNum; ch++){
float gAmp = controller.getSliderValue(0);
gInBuffer[n] = audioRead(context, n ,ch);
gOutBuffer[n] = gInBuffer[n] * gAmp;
audioWrite(context, n, ch, gOutBuffer[n]);
scope.log(gOutBuffer[n]);
}
}
}
void cleanup(BelaContext *context, void *userData)
{
}