Subsynth: a Generic Audio Synthesis Framework for Real-Time Applications
Total Page:16
File Type:pdf, Size:1020Kb
Iowa State University Capstones, Theses and Retrospective Theses and Dissertations Dissertations 1-1-2002 Subsynth: A generic audio synthesis framework for real-time applications Kevin August Meinert Iowa State University Follow this and additional works at: https://lib.dr.iastate.edu/rtd Recommended Citation Meinert, Kevin August, "Subsynth: A generic audio synthesis framework for real-time applications" (2002). Retrospective Theses and Dissertations. 20166. https://lib.dr.iastate.edu/rtd/20166 This Thesis is brought to you for free and open access by the Iowa State University Capstones, Theses and Dissertations at Iowa State University Digital Repository. It has been accepted for inclusion in Retrospective Theses and Dissertations by an authorized administrator of Iowa State University Digital Repository. For more information, please contact [email protected]. Subsynth: A generic audio synthesis framework for real-time applications by Kevin August Meinert A thesis submitted to the graduate faculty in partial fulfillment of the requirements for the degree of MASTER OF SCIENCE Major: Computer Engineering Program of Study Committee: Carolina Cruz-Neira, Major Professor Daniel Ashlock AnneDeane Julie Dickerson Govindarasu Manimaran Iowa State University Ames, Iowa 2002 Copyright © Kevin August Meinert, 2002. All rights reserved. 11 Graduate College Iowa State University This is to certify that the master's thesis of Kevin August Meinert has met the thesis requirements of Iowa State University Signatures have been redacted for privacy iii TABLE OF CONTENTS LIST OF FIGURES ............................................................................................................................. v LIST OF LISTIN"GS ......................................................................................................................... vii ACKNOWLEDGEMENTS ............................................................................................................. viii ABSTRACT ...................................................................................................................................... ix CHAPTER 1 INTRODUCTION ......................................................................................................... 1 RESEARCH PROBLEM ....................................................................................................................... 1 STATEMENT OF PURPOSE ................................................................................................................. 2 SCOPE OF RESEARCH ....................................................................................................................... 3 CHAPTER 2 BACKGROUND ........................................................................................................... 6 DIGITAL AUDIO ...........•.................................................................................................................... 6 Sampling ...................................................................................................................................... 7 Quantizing ................................................................................................................................... 8 Digital/Analog Conversion .......................................................................................................... 9 Dual Representation .................................................................................................................. 10 Distortion ................................................................................................................................... 11 COMMON AUDIO FORMATS USED IN DIGITAL COMPUTERS TODAY ............................................. 12 DIGITAL AUDIO SYNTHESIS ........................................................................................................... 18 Unit Generator Language .......................................................................................................... 19 Unit Generator Building Blocks ................................................................................................ 20 Fixed-Waveform Table-lookup Synthesis ................................................................................. 23 Additive Synthesis and Wavestacking ...................................................................................... 26 Subtractive Synthesis ................................................................................................................. 26 Non-linear or Modulation Synthesis ......................................................................................... 27 SONIFICATION ................................................................................................................................ 28 Motivation for Sonification ....................................................................................................... 29 Examples of Sonification .......................................................................................................... 30 When to Use Sonification Instead of Visualization .................................................................. 31 Requirements for Sonification Tools ........................................................................................ 31 Methods of Sonification ............................................................................................................ 32 CHAPTER 3 REQUIREMENTS OF AN AUDIO SUBSYSTEM FOR IN"TERACTIVE APPLICATIONS ...................................................................................................................... .34 SCIENTIFIC SONIFICATION ............................................................................................................. 34 INTERACTIVE COMPOSITION AND PERFORMANCE ......................................................................... 34 VIRTUAL ENVIRONMENT SONIFICATION ....................................................................................... 35 REQUIREMENTS .......................................... ·················································································... 36 CHAPTER 4 CURRENT TOOLS FOR INTERACTIVE AUDIO .................................................. .40 MUSICAL INSTRUMENT DIGITAL INTERFACE (MIDI) ................................................................... .40 iv CHAPTER 4 CURRENT TOOLS FOR INTERACTIVE AUDIO .................................................. 40 MUSICAL INSTRUMENT DIGITAL INTERFACE (MIDI) ................................................................... 40 CSOUND ........................................................................................................................................ 42 SUPERCOLLIDER ............................................................................................................................ 43 VIRTUAL AUDIO SERVER (VAS) ................................................................................................... 45 VIRTUAL SOUND SERVER (VSS) ···································································································46 DIGITAL INSTRUMENT FOR ADDmVE SOUND SYNTHESIS (DIASS) ............................................. 48 OPENAL ........................................................................................................................................ 50 PORTAUDIOIPABLIO ···················································································································52 CHAPTER 5 SUBSYNTH ............................................................................................................... 56 CONCEPTUAL DESIGN APPROACH ................................................................................................. 57 Core Audio Framework ............................................................................................................ 59 Configuration ......................................................................................................................... 61 Task Management System ........................................................................................................ 62 IMPLEMENTATION ......................................................................................................................... 63 Technology Choices .................................................................................................................. 63 Core Audio Framework ............................................................................................................ 64 Included Modules ...................................................................................................................... 71 Included Builders ...................................................................................................................... 74 Included Runners ...................................................................................................................... 76 CHAPTER 6 CASE STUDIES ......................................................................................................... 80 SUBSYNTHMIDI ····························································································································80 G.A.M.E. TOOLKIT FOR SCIENTIFIC SONIFICATION ..................................................................... 82 L-System Background ..............................................................................................................