Menu
Home
Forums
New posts
Search forums
What's new
Featured content
New posts
New media
New media comments
New resources
Latest activity
Media
New media
New comments
Search media
Resources
Latest reviews
Search resources
Misc
Log in
Register
What's new
Search
Search
Search titles only
By:
New posts
Search forums
Menu
Log in
Register
Install the app
Install
Home
Forums
Labrish
Nalij
Jinaral kantent
Wavetables live or die on their harmonic content
JavaScript is disabled. For a better experience, please enable JavaScript in your browser before proceeding.
You are using an out of date browser. It may not display this or other websites correctly.
You should upgrade or use an
alternative browser
.
Reply to thread
Message
[QUOTE="Queen, post: 90468, member: 27"] Every periodic waveform breaks down into sine waves at whole-number multiples of its fundamental, and a wavetable stores exactly that result. One cycle, sampled, sitting in a file. A sawtooth carries every harmonic, each one quieter than the last at a rate of one over its number. A square wave drops the even harmonics entirely and keeps the odd ones at the same falloff. A triangle keeps odd harmonics too, but at one over the number squared, which is why it sounds so much softer. Change that list of amplitudes, and you have a new waveform. That single idea is the entire job of a procedural table generator, and everything else is bookkeeping. [HEADING=2]PPG's stepped wavetables sounded proudly digital[/HEADING] Wolfgang Palm shipped the PPG Wave 2 in 1981 with 32 wavetables on board, each holding 64 separate waveforms. Players stepped through them with a control on the panel. You could hear the steps. That audible jump between neighbouring waveforms is a large part of why those machines sound unreal and slightly brittle, and it was never really a flaw. Waldorf carried the approach forward with the Microwave in 1989. Modern engines interpolate between frames instead of stepping, which smooths the movement into a glide and produces a completely different character. [HEADING=2]Frame size sets the base pitch of every table[/HEADING] Most software has settled on 2048 samples per frame, with tables holding up to 256 frames. Those numbers are conventions rather than rules, and plenty of instruments ignore them. The length matters because it sets the table's natural frequency. Divide the sample rate by the frame length and you get it, so 2048 samples at 44.1 kHz lands near 21.5 Hz, and the same frame at 48 kHz sits closer to 23.4 Hz. Shorter cycles push that base frequency up. A 512-sample table at 44.1 kHz sits around 86 Hz instead, which changes nothing about how it sounds once pitched but changes plenty about how it is built. Length also caps [B]how many harmonics a short wavetable can hold[/B]. You need at least two samples for each cycle of the highest partial, so 512 samples tops out at 256 harmonics, and a generator that deliberately builds from 16 of them is choosing a soft, hollow starting point with room left to shape. Get the length wrong on an imported cycle and the whole table plays out of tune. Single cycles exported from one instrument and dropped into another are the classic case, and the fix is retuning or stretching before assembly rather than after. [HEADING=2]Phase barely matters; amplitude decides the timbre[/HEADING] Ohm's law of hearing puts it plainly. The perceived tone of a sound depends on the amplitudes of its harmonics, not on the phase relationships between them. That has an odd consequence on screen. Two tables can look nothing alike, with one showing a clean ramp and the other a spiky mess, while sounding almost identical on a held note. Phase still earns its keep elsewhere. It changes the peak level of the waveform, so a badly phased table hits full scale much sooner and needs normalising before it is usable at sensible gain. It also shows up the moment anything else joins in. Stack two oscillators, detune them slightly, and the phase relationship becomes the beating you actually hear, which is exactly the thing a static single-oscillator patch cannot do. Randomised harmonic amplitudes are where this gets interesting. Roll new values for sixteen partials, and you get a genuinely new timbre every time, which is the trick behind [URL='https://goldmidi.com/community/threads/scrap-brain-audio-built-wx-around-controlled-randomness.75873/'][B]a bargain synth that rolls its wavetables from a seed[/B][/URL]. The seed is the quiet part. Store one number instead of 512 sample values and the whole table becomes reproducible, so a patch that took one click to find can be recovered exactly, long after the sound has left your speakers. [/QUOTE]
Insert quotes…
Name
Post reply
Home
Forums
Labrish
Nalij
Jinaral kantent
Wavetables live or die on their harmonic content
This site uses cookies to help personalise content, tailor your experience and to keep you logged in if you register.
By continuing to use this site, you are consenting to our use of cookies.
Accept
Learn more…
Top