It is the beginning of a new story…
[A new project is coming... | By HANSY Synthesizer | Facebook]
It is the beginning of a new story…
[A new project is coming... | By HANSY Synthesizer | Facebook]
Very provocative, but lacking information.
I like it. So many pots!
I would love to know more details
The hardware specifications are:
For now all the hardware is ok with these limitations
Now i make the first audio test with the user interface.
The synth engine for the test is:
The audio result are not as good as i expect…maybe i will use my own osc and filter for test
I have also by the STLINK V3…but not tested yet…
I will send some photos as soon i have change my cell phone.
Musically
Gilles/Hansy Synth
HANSY SYNTH WEB SITE
That sounds like this synth is feature-packed
Yes, I would love to see and hear it in action!!
Some news about the project
The first tests are ok:
I have also implemented the ADSR for the AMP
The different issues.
I haved some bad noise when a play over6 notes, it seem to be related to the SetAudioBlockSize(x) when x is too low, if a change it the sound is better…but i do no know really what is the function of the Audioblocksize…i need to read a little bit the documentation.
Next step
Test the ST-LINKV3
Key stealing
ADSR for the filter
Keyboard tracking
Velocity to amp
Some picture before a demo with some sound…
The goal here is to use an eurorack case for the projet
Thank you so much for keeping us posted about this project
Cool to see a real-time update!
As for your question about block size, digital audio is often handled in blocks rather than acquiring, processing, and delivering one sample at a time. Since the hardware takes a little bit of extra time to set up the transaction to acquire and deliver new samples, working in block is more efficient. With block size, you can be filling a new group of samples while the last group is being sent through the hardware.
Therefore, increasing the block size will take a load off on your CPU (which means less chance of those noise happening) but will introduce more latency as you may have noticed. And vice versa. This is similar to working with the buffer size in your DAW.
So, you can try finding a good balance between latency and CPU load for your project.
You can also measure the CPU to see what’s taking up the load most if you want to optimize for lowest latency as possible.
#include "daisy_seed.h"
#include "daisysp.h"
using namespace daisy;
DaisySeed hw;
CpuLoadMeter loadMeter;
void MyCallback(AudioHandle::InputBuffer in,
AudioHandle::OutputBuffer out,
size_t size)
{
loadMeter.OnBlockStart();
for (size_t i = 0; i < size; i++)
{
// add your processing here
out[0][i] = 0.0f;
out[1][i] = 0.0f;
}
loadMeter.OnBlockEnd();
}
int main(void)
{
hw.Init();
// start logging to the serial connection
hw.StartLog();
// initialize the load meter so that it knows what time is available for the processing:
loadMeter.Init(hw.AudioSampleRate(), hw.AudioBlockSize());
// start the audio processing callback
hw.StartAudio(MyCallback);
while(1) {
// get the current load (smoothed value and peak values)
const float avgLoad = cpuLoadMeter.GetAvgCpuLoad();
const float maxLoad = cpuLoadMeter.GetMaxCpuLoad();
const float minLoad = cpuLoadMeter.GetMinCpuLoad();
// print it to the serial connection (as percentages)
hw.PrintLine("Processing Load %:");
hw.PrintLine("Max: " FLT_FMT3, FLT_VAR3(maxLoad * 100.0f));
hw.PrintLine("Avg: " FLT_FMT3, FLT_VAR3(avgLoad * 100.0f));
hw.PrintLine("Min: " FLT_FMT3, FLT_VAR3(minLoad * 100.0f));
// don't spam the serial connection too much
System::Delay(500);
}
}
Impressive work, Gilles!! This synth sounds amazing!
So many sonic possibilities.
Looking forward to what’s next and seeing more of it in action
Hello
How can i insert the youtube video in the topic ?
Thank you
Sharing the link to YouTube like you did few days ago is fine
I don’t think it’s possible to upload any long videos on the forum (there’s probably a size limit).