Wavetable synthesis




Wavetable synthesis is a sound synthesis technique used to create periodic waveforms. Often used in the production of musical tones or notes, it was developed by Wolfgang Palm of Palm Products GmbH (PPG) in the late 1970s [1] and published in 1979,[2] and has since been used as the primary synthesis method in synthesizers built by PPG and Waldorf Music and as an auxiliary synthesis method by Ensoniq and Access. It is currently used in software-based synthesizers for PCs and tablets, including apps offered by PPG and Waldorf, among others.


It was also independently developed in a similar time frame by Michael McNabb, who used it in his 1978 composition Dreamsong.[3][4]




Contents






  • 1 Principle


    • 1.1 Confusion with sample-based synthesis (S&S) and Digital Wave Synthesis




  • 2 User wavetables


    • 2.1 Practical use




  • 3 Terminologies


    • 3.1 Background




  • 4 See also


  • 5 Notes


  • 6 References


    • 6.1 Bibliography




  • 7 External links





Principle


Wavetable synthesis is fundamentally based on periodic reproduction of an arbitrary, single-cycle waveform.[5] In wavetable synthesis, some method is employed to vary or modulate the selected waveform in the wavetable. The position in the wavetable selects the single cycle waveform. Digital interpolation between adjacent waveforms allows for dynamic and smooth changes of the timbre of the tone produced. Sweeping the wavetable in either direction can be controlled in a number of ways, for example, by use of an LFO, envelope, pressure or velocity.


Many wavetables used in PPG and Ensoniq synthesizers can simulate the methods used by analog synthesizers, such as Pulse Width Modulation by utilising a number of square waves of different duty cycles. In this way, when the wavetable is swept, the duty cycle of the pulse wave will appear to change over time.
As the early Ensoniq wavetable synthesizers had non resonant filters (the PPG Wave synthesizers used analogue Curtis resonant filters), some wavetables contained highly resonant waveforms to overcome this limitation of the filters.



Confusion with sample-based synthesis (S&S) and Digital Wave Synthesis


In 1992, with the introduction of the Creative Labs Sound Blaster 16 the term "wavetable" started to be (incorrectly) applied as a marketing term to their sound card. However, these sound cards did not employ any form of wavetable synthesis, but rather PCM samples and FM synthesis.
S&S (Sample and Synthesis) and Digital Wave Synthesis was the main method of sound synthesis utilised by digital synthesizers starting in the mid 80's with synthesizers such as Sequential Circuits Prophet VS, Korg DW6000/8000 (DW standing for Digital Wave), Roland D50 and Korg M1 through to current synthesizers.



User wavetables


The creation of new wavetables was previously a difficult process unless supported by specialized editing facilities and (near) real-time playback of edited wavetables on the synthesizer. Such editors often required the use of extra hardware devices like the PPG Waveterm or were only present in expensive models like the Waldorf WAVE. More commonly, pre-computed wavetables could be added via memory cards or sent to the synthesizer via MIDI. Today, wavetables can be created more easily by software and auditioned directly on a computer. Since all waveforms used in wavetable synthesis are periodic, the time-domain and frequency-domain representation are exact equivalents of each other and both can be used simultaneously to define waveforms and wavetables.



Practical use


During playback, the sound produced can be harmonically changed by moving to another point in the wavetable, usually under the control of an envelope generator or low frequency oscillator but frequently by any number of modulators (matrix modulation). Doing this modifies the harmonic content of the output wave in real time, producing sounds that can imitate acoustic instruments or be totally abstract, which is where this method of sound creation excels. The technique is especially useful for evolving synth pads, where the sound changes slowly over time.


It is often necessary to 'audition' each position in a wavetable and to scan through it, forwards and backwards, in order to make good use of it, though selecting random wavetables, start positions, end positions and directions of scan can also produce satisfyingly musical results. It is worth noting that most wavetable synthesizers also employ other synthesis methods to further shape the output waveform, such as subtractive synthesis (filters), phase modulation, frequency modulation and AM (ring) modulation.




An example of lookup table, where the data at addresses from 63 to 67 are zoomed.
(based on Figure 2.1 on Nelson 2000) On Csound, it is called f-table (function table), and used for various purposes including: wavetable-lookup synthesis, waveshaping, MIDI note mapping, and storing ordered pitch-class sets.[6]


Table-lookup synthesis[7] (or Wavetable-lookup synthesis[8]) (Roads 1996) is a class of sound synthesis methods using the waveform tables by table-lookup, called "table-lookup oscillator" technique.
The length of waveforms or samples may be varied by each sound synthesis method, from a single-cycle up to several minutes.



Terminologies


The term "waveform table" (or "wave shape table" as equivalent) is often abbreviated to "wavetable",[9] and its derive term "wavetable oscillator"[10] seems to be almost same as "table-lookup oscillator" mentioned above, although the word "wave" (or "waveform", "wave shape") may possibly imply a nuance of single-cycle waveform.


However, a derive term "wavetable synthesis" seems slightly confusing. In a natural usage of words, its original meaning is basically same as "table-lookup synthesis",[11][12][10] and possibly several actions on waveform(s) may be expected,[13] as seen on a paper about Karplus–Strong string synthesis[14] (a simplest class of "wavetable-modification algorithm" known as digital waveguide synthesis[15]).
Then in the late-1970s, Michael McNabb[3][4] and Wolfgang Palm[16] independently develop the multiple-wavetable extension on the table-lookup synthesis[note 1] which was typically used on PPG Wave and known with wavetable sweeping,[17] and it was later referred as "multiple wavetable synthesis" by Horner, Beauchamp & Haken 1993.[18]
Simultaneously since late-1970s, also the sample-based synthesis using relatively long samples instead of single-cycle waveforms, have become influential by the introductions of the Fairlight CMI and E-mu Emulator.



Background


On the above four terminologies for the classes of sound synthesis methods, i.e.,




  1. Wavetable synthesis[10] — original, generic meaning (i.e. a single-cycle table-lookup synthesis).


  2. Multiple wavetable synthesis[18] — developed by McNabb and Palm, typically used on PPG Waves.


  3. Wavetable-modification algorithm[15] — including digital waveguide synthesis.

  4. Sample-based synthesis


if these had been appropriately used to distinguish each other, any confusions could be avoided, but it seems failed historically.
At latest in the 1990s, several influential sample-based synthesis products were marketed under the trade names similar to "wavetable synthesis" (including Gravis Ultrasound wavetable card, Creative Wave Blaster wavetable daughterboard, and Microsoft GS Wavetable SW Synth), and these confusions have further affected on the several industry standards (including MPEG-4 Structured Audio algorithmic and wavetable synthesis,[19] and AC97 optional hw acceleration wavetable synth[20]).
As a rebound of these, at the latest since the mid-2000s, a new confusion seem to begin flourish. Merely a subclass of generic wavetable synthesis, i.e. McNabb and Palm's multiple wavetable synthesis, tends to be erroneously referred as if it was a generic class of whole wavetable synthesis family, exclusively.[21]


As a background of these confusions, the difficulties of maintaining the consistencies between concepts and terminologies during the rapid developments of technology, may be significant.
And it is a reason why this slightly classical terminology "Table-lookup synthesis" is explained on here.



See also



  • MUSIC-N

  • Direct digital synthesizer


  • Sample-based synthesis
    • Multiple wavetable synthesis — a specific technique typically used on PPG Waves.




Notes





  1. ^
    "Multiple wavetable synthesis" (Horner, Beauchamp & Haken 1993) developed by Michael McNabb and Wolfgang Palm in the late-1970s, is merely one of the efficient implementation techniques to realize dynamically changing waveforms, by using an array of single-cycle waveforms on a table-lookup synthesis. On this synthesis technique, the waveform can be animated in a similar manner as a flip book.





References





  1. ^ Palm 2009.


  2. ^ Andresen 1979.


  3. ^ ab Smith III, Julius O. "Viewpoints on the History of Digital Synthesis: Taxonomy of Digital Synthesis Techniques". Stanford, CA: Stanford University. Retrieved February 24, 2015..mw-parser-output cite.citation{font-style:inherit}.mw-parser-output .citation q{quotes:"""""""'""'"}.mw-parser-output .citation .cs1-lock-free a{background:url("//upload.wikimedia.org/wikipedia/commons/thumb/6/65/Lock-green.svg/9px-Lock-green.svg.png")no-repeat;background-position:right .1em center}.mw-parser-output .citation .cs1-lock-limited a,.mw-parser-output .citation .cs1-lock-registration a{background:url("//upload.wikimedia.org/wikipedia/commons/thumb/d/d6/Lock-gray-alt-2.svg/9px-Lock-gray-alt-2.svg.png")no-repeat;background-position:right .1em center}.mw-parser-output .citation .cs1-lock-subscription a{background:url("//upload.wikimedia.org/wikipedia/commons/thumb/a/aa/Lock-red-alt-2.svg/9px-Lock-red-alt-2.svg.png")no-repeat;background-position:right .1em center}.mw-parser-output .cs1-subscription,.mw-parser-output .cs1-registration{color:#555}.mw-parser-output .cs1-subscription span,.mw-parser-output .cs1-registration span{border-bottom:1px dotted;cursor:help}.mw-parser-output .cs1-ws-icon a{background:url("//upload.wikimedia.org/wikipedia/commons/thumb/4/4c/Wikisource-logo.svg/12px-Wikisource-logo.svg.png")no-repeat;background-position:right .1em center}.mw-parser-output code.cs1-code{color:inherit;background:inherit;border:inherit;padding:inherit}.mw-parser-output .cs1-hidden-error{display:none;font-size:100%}.mw-parser-output .cs1-visible-error{font-size:100%}.mw-parser-output .cs1-maint{display:none;color:#33aa33;margin-left:0.3em}.mw-parser-output .cs1-subscription,.mw-parser-output .cs1-registration,.mw-parser-output .cs1-format{font-size:95%}.mw-parser-output .cs1-kern-left,.mw-parser-output .cs1-kern-wl-left{padding-left:0.2em}.mw-parser-output .cs1-kern-right,.mw-parser-output .cs1-kern-wl-right{padding-right:0.2em}


  4. ^ ab McNabb, Michael. "Dreamsong: The Composition" (PDF). Computer Music Journal. 5 (4). Retrieved February 24, 2015.


  5. ^ Bristow-Johnson 1996.


  6. ^
    Nelson, Jon Christopher (2000). "2. Understanding and Using Csound's GEN Routines". The Csound book. Cambridge, MA, USA: MIT Press. pp. 65–97. ISBN 0-262-52261-6.
    "Csound uses lookup tables for musical applications as diverse as wavetable synthesis, waveshaping, mapping MIDI note numbers and storing ordered pitch-class sets. These function tables (f-tables) contain everything from periodic waveforms to arbitrary polynomials and randomly generated values. The specific data are created with Csound's f-table generator subroutines, or GEN routines. ..."



  7. ^
    Roads 1996, p. 87, Introduction to Digital Sound Synthesis, "This chapter outlines the fundamental methods of digital sound production. Following a brief historical overview, we present the theory of table-lookup synthesis—the core of most synthesis algorithms. ..."



  8. ^
    Roads 1996, p. 125, Sampling Synthesis, "Pitch-shifting ... variation technique as used in 'wavetable-lookup synthesis described in chapter 3."



  9. ^
    Alles, H.G.; Giugno, Pepino di (November 1977). "A One-Card 64 Channel Digital Synthesizer". Computer Music Journal. 1 (4): 7–9. JSTOR 40731292. The samples in the wave shape table ...", "FIGURE 1 ... 16 K × 14 BIT WAVETABLE



  10. ^ abc
    Puckette, Miller (2002). "Max at seventeen" (reprint). Computer Music Journal. 26 (4): 31–43. (HTML version available)
    "For example, the wavetable oscillator used in Fig. 1 made its first appearance in Mathews's Music II (two, not eleven) in the late 1950s. Music II was only one in a long sequence of MUSIC N programs, but the idea of wavetable synthesis has had a pervasive influence throughout the computer music discipline."



  11. ^
    Boulanger, Richard; Lazzarini, Victor (eds.). "3.2.3 Table-Lookup Oscillators". The Audio Programming Book. Foreword by Max Mathews. MIT Press. p. 335–336. ISBN 978-0-262-28860-6.

    "In this section ... we will be introduce the table-lookup method for generating waveforms. This method is also called wavetable synthesis ... / Wavetable synthesis is a technique based on reading data that has been stored in blocks of contiguous computer-memory locations, called tables. This sound-synthesis technique was one of the very first software synthesis methods introduced in the MUSIC I-MUSIC V languages developed by Max Mathews at Bell Labs in the late 1950s and the early 1960s. ... / With table-lookup synthesis, it is sufficient to calculate only a single cycle of a waveform, and then store this small set of samples in the table where it serves as a template. ..."
    Note: on the above quotation, the authors paraphrased the section title "table-lookup oscillators" as follows: "table-lookup method", "wavetable synthesis", and "table-lookup synthesis".



  12. ^
    Hosken, Dan (2012). "The Oscillator". Music Technology and the Project Studio: Synthesis and Sampling. Routledge. p. 72–73. ISBN 978-1-136-64435-1.

    "The oscillator generates a cycle of some waveform the appropriate number of times per second for the desired fundamental frequency. This is referred to variously as fixed-waveform synthesis, table-lookup synthesis, or wavetable synthesis."



  13. ^
    Cullen, Michael. "Q. Can you explain the origins of wavetable, S&S and vector synthesis?". Sound On Sound (February 2006). SOS contributor Steve Howell replies: Wavetable synthesis is actually quite easy to understand. In the early days of synthesis, (analogue) oscillators provided a limited range of waveforms, such as sine, triangle, sawtooth and square/pulse, normally selected from a rotary switch. This gave the user a surprisingly wide range of basic sounds to play with, especially when different waveforms were combined in various ways.



  14. ^
    Karplus, Kevin; Strong, Alex (1983). "Digital Synthesis of Plucked-String and Drum Timbres" (PDF). Computer Music Journal (published Summer 1983). 7 (2): 45–55. doi:10.2307/3680062. JSTOR 3680062. Wavetable Synthesis: One standard synthesis technique is the wavetable synthesis algorithm. ... The wavetable-synthesis technique is very simple but rather dull musically, since it produces purely periodic tones. ... All the algorithms described in this paper produce the variation in sound by modifying the wavetable itself.



  15. ^ ab
    US application 5212334, Julius O. Smith, III, "Digital signal processing using closed waveguide networks", published 1993-05-18, assigned to Yamaha Corporation .
    (See also the Wikipedia article Digital waveguide synthesis: “The term "digital waveguide synthesis" was coined by Julius O. Smith III who helped develop it and eventually filed the patent. It represents an extension of the Karplus–Strong algorithm. Stanford University owns the patent rights for digital waveguide synthesis and signed an agreement in 1989 to develop the technology with Yamaha.”)



  16. ^
    Andresen, Uwe (Palm Productions) (1979). "A New Way in Sound Synthesis". 62nd Audio Engineering Society (AES) Convention (Brussels, Belgium).



  17. ^
    Sound On Sound & (February 2006), "However, in the late '70s, Wolfgang Palm used 'wavetable' digital oscillators in his innovative PPG Wave synths. Instead of having just three or four waveforms, a wavetable oscillator can have many more — say, 64 — because they are digitally created and stored in a 'look-up table' ... Now, if the waveforms are sensibly arranged, we can begin to create harmonic movement in the sound. ... you approach something not unlike a traditional filter sweep. ..."



  18. ^ ab
    Horner, Andrew; Beauchamp, James; Haken, Lippold (1993). "Methods for multiple wavetable synthesis of musical instrument tones" (PDF). J. Audio Eng. Soc. (published May 1993). 41 (5): 336–356. Multiple wavetable synthesis, the subject of this paper, is based on a sum of fixed waveforms or periodic basis functions with time-varying weights.



  19. ^
    Scheirer, Eric D. (MIT Media Lab); Ray, Lee (Joint E-Mu/Creative Technology Center) (1998). "Algorithmic and Wavetable Synthesis in the MPEG-4 Multimedia Standard". 105th Audio Engineering Society (AES) Convention (San Francisco, California). 2.2 Wavetable synthesis with SASBF: The SASBF wavetable-bank format had a somewhat complex history of development. The original specification was contributed by E-Mu Systems and was based on their “SoundFont” format [15]. After integration of this component in the MPEG-4 reference software was complete, the MIDI Manufacturers Association (MMA) approached MPEG requesting that MPEG-4 SASBF be compatible with their “Downloaded Sounds” format [13]. E-Mu agreed that this compatibility was desirable, and so a new format was negotiated and designed collaboratively by all parties.



  20. ^
    "1.4 Integrating AC '97 into the System". AC ‘97 Component Specification Revision 2.3 Rev 1.0 (PDF). Intel Corporation. April 2002. p. 11. Figure 2. AC ‘97 System Diagram: AC ‘97 Digital Controller / Optional hw acceleration / SRC*, mix*, 3D positional*, wavetable synth*



  21. ^
    Sound On Sound & (February 2006), "Other synths have employed wavetable synthesis in one guise or another since then and there are several software synths available today which incorporate wavetable synthesis capabilities."
    Note: on the above quotation, a specific wavetable synthesis developed by Wolfgang Palm, known as "multiple wavetable synthesis", is ambiguously referred as "wavetable synthesis".





Bibliography



  • Palm, Wolfgang (2009), The PPG Story, Part 4


  • Andresen, Uwe (1979), A New Way in Sound Synthesis, 62nd AES Convention (Brussels, Belgium), Audio Engineering Society (AES)


  • Maunchly, J. William; Charpentier, Albert J. (1987), Practical Considerations in the Design of Music Systems using VLSI, AES 5th International Conference: Music and Digital Technology, Audio Engineering Society (AES)


  • Bristow-Johnson, Robert (1996), Wavetable Synthesis 101, A Fundamental Perspective, 101st AES Convention (Los Angeles, California), Audio Engineering Society (AES)
    Copy on MusicDSP


  • PPG Wave 2.2 Owners Manual (english) (PDF), Palm Productions GmbH


External links




  • "Wavetable Cooker". Archived from the original on February 3, 2014. GPL application with graphical interface written in C by Camille Bassuel, implementing several DSP tools, including DFT to generate a wavetable set


  • Hermann Seib (2011-01-07). "PPG Wave 2.2 / 2.3 / EVU Simulator". (VSTi plugIn) along with new Wavetables '08 by Wolfgang Palm, and "WaveSim Demo". (standalone version) worked with "Waveterm C". by Hermann Seib, Paul Maddox and Dave Forward.









這個網誌中的熱門文章

Xamarin.form Move up view when keyboard appear

Post-Redirect-Get with Spring WebFlux and Thymeleaf

Anylogic : not able to use stopDelay()