- Wavetable
- Sample
- Frame
- Window
- Sprite
I tried to read "Wavetable Synthesis 101, A Fundamental Perspective" but felt overwhelmed
So please share you knowledge
I still struggle with this topicAutobot wrote: ↑Sat May 29, 2021 1:13 pm Thanks y'all I almost get it I thought all the time a wavetable is always small. I was confused because of that. So when I want to make wavetables that have 256 frames and a 2048 window the file is quite big right? It's kinda set of single cycles waveforms times 256?
I want to make wavetables out of my hardware synthesizer. I read somewhere that I should sample from the note F0? But what tempo than? Help is really appreciated here?
Code: Select all
524.288/256 = 2048
524.288/512 = 1024
524.288/1024 = 512
524.288/2048 = 256
You might be misunderstanding "frame"—if I'm reading you correctly.Autobot wrote: ↑Fri Mar 18, 2022 9:32 pmI still struggle with this topicAutobot wrote: ↑Sat May 29, 2021 1:13 pm Thanks y'all I almost get it I thought all the time a wavetable is always small. I was confused because of that. So when I want to make wavetables that have 256 frames and a 2048 window the file is quite big right? It's kinda set of single cycles waveforms times 256?
I want to make wavetables out of my hardware synthesizer. I read somewhere that I should sample from the note F0? But what tempo than? Help is really appreciated here?
Have read this: https://www.earlevel.com/main/2020/01/0 ... cillators/ ... but yet I'm not sure about how a wavetable is build up.
A wavetable with a window in size of 2.048 samples and a frame size of 256 samples is 524.288 samples long in sum. Does that mean a "2048 wavetable" consist of 2048 single-cycle waveforms each 256 samples in size? If so, can one alter the frame size without running into issues? If a device ask for window 2.048 and frame 256? Or can one alter the cycles as in the calculation below?
Code: Select all
524.288/256 = 2048 524.288/512 = 1024 524.288/1024 = 512 524.288/2048 = 256
Code: Select all
audio_handler(frames)
for each buffer in frames
for each sample in buffer
sample = gain(sample)
Thank you for the insightful explanation. I think I got the "frame" thing ... I assume Sorry but math is a pain for me ...
Code: Select all
sample rates is 44.100Hz -> 44.100 samples
44.1000 samples / 2.048 samples = 21,533203 samples
21,533203 samples = 21,533203Hz = 21,533Hz
F0 = 21,827Hz ~ 2020 samples.
F0 -24 cents is almost exactly 2048 samples
Code: Select all
> 80.75bpm
> 4 bars + some seconds
> note > F#0
> down tune -24cents
I think the water is getting a little muddy, let me back up...Autobot wrote: ↑Fri Mar 18, 2022 11:33 pmThank you for the insightful explanation. I think I got the "frame" thing ... I assume Sorry but math is a pain for me ...
However, I wonder if you are talking about the use of a wavetable for 'classic' waveform generation (like in opposite to calculate a waveform) while I talk about a wavetable like in Waldorf or Serum and such. Or does any wavetable-engine works the same?
Maybe an explanation why I ask helps: I want to create accurate and usable wavetables by myself for a wavetable-engine which prefers window 2048 frame 256.
I want to create them with hardware as well as software synthesizer. As some suggest F0 as note to sample I wondered why and came up with that
Some more calculation gave me the clue to the needed bpm to set up template-project for the sampling / wavetable-design processCode: Select all
sample rates is 44.100Hz -> 44.100 samples 44.1000 samples / 2.048 samples = 21,533203 samples 21,533203 samples = 21,533203Hz = 21,533Hz F0 = 21,827Hz ~ 2020 samples. F0 -24 cents is almost exactly 2048 samples
So far so good. But still... I wonder. You wrote "10 tables, each 2048 samples" but how many waves contains a table? 8? Each 256 samples?Code: Select all
> 80.75bpm > 4 bars + some seconds > note > F#0 > down tune -24cents
Maybe my misconception is coming from thinking of single-cycle waveforms and wavetables together?
© KVR Audio, Inc. 2000-2024
Submit: News, Plugins, Hosts & Apps | Advertise @ KVR | Developer Account | About KVR / Contact Us | Privacy Statement