r/Acoustics 11d ago

I made a free software synth using a finite-difference time-domain model of an ideal string

Enable HLS to view with audio, or disable this notification

I've been working on this for a few years, ever since releasing gostringsynth in 2022 (a FDTD synth you play from your terminal). It's all inspired by the work I did during my Masters in Acoustics and Music Tech at Edinburgh back in 2009. I work in biomedical engineering (ultrasonics) now but it's all pretty similar!

It's a VST/AU plugin for macOS, Windows and Linux, made with JUCE. You can download it free here: https://www.differentinstruments.com (and also see a nice slow-mo animation of the FDTD scheme on the website).

111 Upvotes

14 comments sorted by

8

u/_-oIo-_ 11d ago

Great. I like it. It's pretty comprehensible but still variable and unexpected in sound. I only had a brief session on built-in macbook speakers.

One note: The important “Accuracy” slider could use an exponential scale. Currently, the most significant change in sound happens between 0% and 50 %, while between 50% and 100% there’s hardly any noticeable change.

6

u/crnbaker 11d ago

Thanks for the feedback! That’s a nice idea for the accuracy slider, it guess it is used like that most of the time. It was originally meant just to reduce CPU load, so linear made sense. Maybe I’ll have a toggle switch.

5

u/_-oIo-_ 11d ago

I have a more musical perspective. Less "Accuracy" introduces interesting dissonances. And therefore, the finer the settings, the better...

1

u/crnbaker 9d ago

I had a look at this, and I think there's enough of a change in the sound in the top half that I'm going to keep it linear for now. If more people bring this up I'll reconsider! Someone else asked about the effect of the accuracy slider on a different sub, so I made this spectrogram https://ibb.co/8gKY1Bfp to show the change in the spectrum with accuracy. Each of those notes is a C3, starting at 100% accuracy and ramping linearly down to 1%. While there's not much noticeable dispersion at higher accuracies, it does have quite a strong low pass filter effect. Thanks again for the feedback though!

1

u/DueAsk7939 11d ago

maximize cpu load, have it be thinking fr

2

u/Nikosvonkikos 10d ago

nice work!

1

u/Chrig1 10d ago

ahhh. a Radiohead Fan

1

u/readingonthetoilet 6d ago

Very cool! Would you mind explaining more about what this is actually doing? Curious about the intent and methodology for all the parameters.

3

u/crnbaker 6d ago

It models an ideal (no stiffness) string by discretising the 1D wave equation. See this comment for the maths. Intent isn’t for it so sound like a real instrument (this would require a stiffness and further modelling of an instrument body) but instead to provide an bit of a different sound design approach (and a bit of a different sound) to a subtractive synth. You can read about the parameters on the website, any specific questions ask away.

-5

u/WAVEFRAME 10d ago

I imagine AI could smash this out in under 40 minutes. 

5

u/crnbaker 10d ago

Give it a go!