Massively underrated channel, dude. This has helped me so much in understanding wavetable synthesis enough to implement it in a lightsaber project. Insta-subscribed!
17:02 -ish yeah I have been wondering whether there might be a merit to modelling voltage in a software synth. It might make the code easier to understand for people familiar with analog synths? I was considering getting into making analog synth hardware, and making a simulator which worked more like the real thing would be like a stepping stone to making the real thing.
Hey super awesome video, thanks a lot! I'm glad YT recommended your channel to me :) One question: You said, the only way to overcome aliasing in wavetable synthesis would be to increase the sampling rate. Wouldn't it also help to use sinc interpolation instead of linear?
Hi Flying Squirrel, thanks for the feedback! Yes, of course, sinc interpolation would also help, probably even better than the linear interpolation. The question is: would we actually hear the difference? I guess not. Therefore, in practice, linear interpolation suffices.
Great video! Thank you for taking the time to make this and share the information. I come from an analogue synth background and I’m struggling to understand something: If I implement the algorithm on a microcontroller, surely the frequency of the output will vary depending on the speed (clock) of the microcontroller? If the microcontroller reads through the wave table at 1 MHz, that will produce an output that is beyond the range of human hearing. So, should I somehow set a timer or interrupt to read the wave table at a rate relating to the desired frequency or is there a way to read the wave table at a constant rate but still produce the desired output frequency? Sorry if this is confusing…I’m struggling to wrap my head around the speed at which a microcontroller operates vs the read speed of the wave table vs the desired frequency vs the output frequency. To me, it seems that the output frequency depends on the speed at which the wavetable is read; so reading through the wave table quicker would produce a higher pitched output…wouldn’t it? 🤦♂️
basically you will be reading thru a lookup table at a certain frequency and at a certain interval. of course the step size won't be accurate unless you calculate a non integer increment size, then round it after for the LUT... but like you have to use some method (like adding dithering) so that there aren't any undesired side tones due to the uneven sampling. I'm not qualified to say this stuff. i was just doing research and stumbled into a video (that i cannot link because of RUclips. its called "The Basics of Direct Digital Synthesis (DDS)"
It can be confusing to newcomers as this isn't what modern software instruments call wavetable synthesis, where you have a table of complete waveforms.
Have I helped you with this video? If yes, please, consider buying me a ☕ coffee at www.buymeacoffee.com/janwilczek
Thanks! 🙂
Finally someone who explains it the way I understand! Thank you!
Massively underrated channel, dude. This has helped me so much in understanding wavetable synthesis enough to implement it in a lightsaber project. Insta-subscribed!
I will never make time for the programming but thank you for helping me to understand the underlying principles.
Thank you for the feedback! Yes, we need to be strategic about our time ;)
Thank you very much. Very clear.
Great video! I followed the JUCE tutorial (from JUCE page) and I didn't quite get it until I watched your video. Thank you!
Thanks a lot for the feedback!
Easily the best video on the subject
Thank you so much, Misha! Such comments keep me going :)
Yes
17:02 -ish yeah I have been wondering whether there might be a merit to modelling voltage in a software synth. It might make the code easier to understand for people familiar with analog synths? I was considering getting into making analog synth hardware, and making a simulator which worked more like the real thing would be like a stepping stone to making the real thing.
THANK YOU SM ♥️
the old analog days :D
great video, subscribed!
Thanks! 🙏
Great vid Wolf learnt a lot !!
Great to hear that, thanks!
What math could one use to calculate the minimum wavetable size to make a completely lossless sine wave at a given bit depth?
Love this series of videos. Thank you.
Hey super awesome video, thanks a lot! I'm glad YT recommended your channel to me :)
One question: You said, the only way to overcome aliasing in wavetable synthesis would be to increase the sampling rate. Wouldn't it also help to use sinc interpolation instead of linear?
Hi Flying Squirrel, thanks for the feedback! Yes, of course, sinc interpolation would also help, probably even better than the linear interpolation. The question is: would we actually hear the difference? I guess not. Therefore, in practice, linear interpolation suffices.
great vid
Thank you!
Great video! Thank you for taking the time to make this and share the information.
I come from an analogue synth background and I’m struggling to understand something:
If I implement the algorithm on a microcontroller, surely the frequency of the output will vary depending on the speed (clock) of the microcontroller? If the microcontroller reads through the wave table at 1 MHz, that will produce an output that is beyond the range of human hearing.
So, should I somehow set a timer or interrupt to read the wave table at a rate relating to the desired frequency or is there a way to read the wave table at a constant rate but still produce the desired output frequency?
Sorry if this is confusing…I’m struggling to wrap my head around the speed at which a microcontroller operates vs the read speed of the wave table vs the desired frequency vs the output frequency.
To me, it seems that the output frequency depends on the speed at which the wavetable is read; so reading through the wave table quicker would produce a higher pitched output…wouldn’t it? 🤦♂️
basically you will be reading thru a lookup table at a certain frequency and at a certain interval. of course the step size won't be accurate unless you calculate a non integer increment size, then round it after for the LUT... but like you have to use some method (like adding dithering) so that there aren't any undesired side tones due to the uneven sampling.
I'm not qualified to say this stuff. i was just doing research and stumbled into a video (that i cannot link because of RUclips. its called "The Basics of Direct Digital Synthesis (DDS)"
It can be confusing to newcomers as this isn't what modern software instruments call wavetable synthesis, where you have a table of complete waveforms.
Hey Wolf! Keep it up, cool videos! BTW your mom is rad :)
Hey, Jesus, thanks a lot! If you mean @czarnowidzka, she's not my mom :D But yeah, she's rad ;]
Espero que te gusten siguientes videos ;]
did you know that 2 pi is the mathematical equivilent of a circle in radians?
yes
👍☆☆☆☆☆👍
Thanks :)
Coraz bardziej się rozwijasz w robieniu filmików.
Thanks, mom :)