Introduction to Supercollider

Total Page:16

File Type:pdf, Size:1020Kb

Introduction to Supercollider Introduction to SuperCollider Andrea Valle Introduction to SuperCollider Bibliographic information published by the Deutsche Nationalbibliothek The Deutsche Nationalbibliothek lists this publication in the Deutsche Nationalbibliografie; detailed bibliographic data are available on the Internet at http://dnb.d-nb.de. © Copyright Andrea Valle & Logos Verlag Berlin GmbH 2016 All rights reserved. ISBN 978-3-8325-4017-3 Logos Verlag Berlin GmbH Comeniushof, Gubener Str. 47, 10243 Berlin Tel.: +49 (0)30 42 85 10 90 Fax: +49 (0)30 42 85 10 92 Web: http://www.logos-verlag.de PDF version: site: http://logos-verlag.de/ebooks/IntroSC/ user: introsc password: Super0616Collider! Translated from Italian by Marinos Koutsomichalis and Andrea Valle. English revision by Joe Higham and Joshua Parmenter. Italian edition: Apogeo Education, Maggioli editore, Milano, 2015 ISBN: 978-88-916-1068-3 Typeset with ConTEXt and SuperCollider by Andrea Valle Contents 1 Getting started with SuperCollider 1 1.1 About SuperCollider 1 1.2 SC overview 3 1.3 Installation and use 6 1.4 Objectives, references, typographical conventions 9 2 Programming in SC 13 2.1 Programming languages 13 2.2 Minima objectalia 16 2.3 Objects in SC 19 2.4 Methods and messages 26 2.5 The methods of type post and dump 33 2.6 Numbers 36 2.7 Conclusions 39 3 Syntax: basic elements 41 3.1 Brackets 41 3.2 Expressions 42 3.3 Comments 43 3.4 Strings 44 3.5 Variables 45 3.6 Symbols 49 3.7 Errors 51 3.8 Functions 52 3.9 Classes, messages/methods and keywords 57 3.10 A graphic example 59 3.11 Control Structures 64 3.12 Yet another GUI example 67 3.13 Conclusions 71 4 Synthesis, I: Fundamentals of Signal Processing 73 4.1 A few hundred words on acoustics 73 4.2 Analog vs. digital 76 4.3 Synthesis algorithms 81 4.4 Methods of Signal 89 4.5 Other signals and other algorithms 93 4.6 Still on signal processing 105 4.7 Control signals 109 4.8 Conclusions 117 5 SC architecture and the server 119 5.1 Client vs. Server 119 5.2 Ontology of the server as an audio synthesis plant 123 5.3 The server 132 5.4 SynthDefs 134 5.5 UGens and UGen graphs 138 5.6 Synths and Groups 144 5.7 A theremin 149 5.8 An example of real-time synthesis and control 151 5.9 Expressiveness of the language: algorithms 154 5.10 Expressiveness of the language: abbreviations 156 5.11 Conclusions 160 6 Control 161 6.1 Envelopes 161 6.2 Generalizing envelopes 167 6.3 Sinusoids & sinusoids 174 6.4 Pseudo-random signals 180 6.5 Busses 184 6.6 Procedural structure of SynthDef 197 6.7 Multichannel Expansion 201 6.8 Conclusions 208 Introduction to SuperCollider 7 Organized sound: scheduling 211 7.1 Server-side, 1: through UGens 211 7.2 Server side, 2: Demand UGen 217 7.3 Language-side: Clocks and routines 221 7.4 Clocks 226 7.5 Synthesizers vs. events 229 7.6 Graphic interlude: drawings and animations 236 7.7 Routines vs. Tasks 239 7.8 Patterns 243 7.9 Events and Event patterns 252 7.10 Conclusions 260 8 Synthesis, II: introduction to basic real-time techniques 261 8.1 Oscillators and tables 261 8.1.1 Synthesis by sampling 269 8.1.2 Resampling and interpolation 271 8.2 Direct generation 275 8.2.1 Synthesis by fixed waveform 276 8.2.2 Modulation 277 8.2.3 Ring and Amplitude modulation 278 8.2.4 Ring modulation as a processing technique 280 8.2.5 Frequency modulation 285 8.2.6 C:M ratio 288 8.2.7 Waveshaping 292 8.3 Spectral modelling 297 8.3.1 Additive synthesis 297 8.3.2 Subtractive synthesis 305 8.3.3 Analysis and resynthesis: Phase vocoder 311 8.4 Physical Modeling 319 8.5 Time-based methods 327 8.5.1 Granular synthesis 328 8.5.2 Techniques based on the direct generation of the waveform 331 8.6 Conclusions 335 9 Communication 337 9.1 From server to client: use of control buses 337 9.2 From server to client: use of OSC messages 341 9.3 OSC to and from other applications 346 9.4 The MIDI protocol 349 9.5 Reading and writing: File 353 9.6 Pipe 359 9.7 SerialPort 362 9.8 Conclusions 365 Foreword My first encounter with SuperCollider dates back to 2002, thanks to my friend Hairy Vogel, one of its first (and bold) users. At that time, I remember being deeply impressed by the sound quality, the seamless integration between audio synthesis and algorithmic composition, the native real-time operating mode. So, I decided to buy an Apple computer, as SuperCollider 2 was working on MacOS9 systems only, while SuperCollider 3, that had just become open source, was still an unstable release, porting to Linux had just begun (as far as I can remember) and there were no plans at all for a Windows version But in 2002 I was lacking some basic skills to be productive on SuperCollider, so I left it momentarily, to get back to it in 2005. In 2008 I switched to SuperCollider… in my class for the Multimedia and Arts program (DAMS) at the University of Turin. I was not able to find a basic, yet comprehensive resource to use for teaching. Comprehensive of what? This is of course the main point. My class is a basic introduction to computer music, so I was in need of reference for both some basic notions in DSP and SuperCollider. Still, I was confident that the latter was the apt tool to approach the former. Yet, introducing SC is to also introduce computer languages in general and certain notions concerning computer science tout court (e.g. the client/network architecture). That is why I decided to write this book the scope of which is, consequently, too broad to offer completeness in any of each subjects. From a very personal perspective, I have to confess that I have tried to write the book that I wished to have while starting with SuperCollider. My hope is that someone might be in need of it as I was. Originally written in Italian in 2008 in an electronic only version, the book has been substantially re-edited and updated to account for the SC 3.7 version in 2015, and then, revised and translated into English in 2016 to be published in a printed version thanks to Logos Verlag. It has been translated into English by myself and Marinos Koutsomichalis, thanks also to the support of the Su- perCollider community. A crucial help on language and content revision has been provided by Joe Higham and Joshua Parmenter. I am deeply thankful to Marinos, Joe and Josh for their work. SuperCollider has a strong, supporting and passionate community. With- out it, my journey with SC probably would have ended very soon. So, I am profoundly indebted to all its members. Finally, a special “grazie” to James McCartney to have his ideas supercollide in his work. Ciriè, Turin, May 27, 2016 1 Getting started with SuperCollider 1.1 About SuperCollider SuperCollider (SC) is a software environment for real-time audio synthesis and interactive control. It represents the state of the art in audio programming tech- nologies: as of writing, there seems to be no other software solution which is, at the same time, equally effective, efficient and flexible. Yet, SC is often, and rightly, approached with suspicion and with awe: SC is not exactly “intuitive”. In the first place, the interface is textual. In SuperCollider the user is supposed to write, which is difficult enough for the typical computer-user who is nor- mally used to seeing (and interacting with GUI) and not in manipulating and reading raw code. Then, like all software solutions to advanced audio com- puting, SuperCollider prerequisites in sound synthesis and algorithmic music composition, as well as in computer programming. More, it demands thorough understanding of certain informatics-derived concepts. However, these osten- sible obstacles are in reality the true power of SC: there would be no other way to arrive at a system equally versatile in software design, efficient in computer modeling, and expressive in terms of easy to use symbolic representations. SuperCollider was originally developed by James McCartney in 1996 for the Macintosh platform. Version 2, in particular, has been designed for the Ma- cOS 9 operating system. SuperCollider 3 (which is, at the same time, very sim- ilar and yet very different to SC2) has been developed initially for the MacOS X operating system, but is now an open source project that revolves around a community of contributing programmers. This community of developers has 2 Getting started with SuperCollider been responsible for porting SC in Windows and Linux operating systems. Ac- cordingly, we witnessed major changes in the software during the last years, not in terms of the core functionality (which albeit having been improved, is ef- fectively the same) but more specifically the user interface. The first versions of SC for other platforms have been less featured than the OSX version. The vari- ous Linux versions have been gradually aligned with the OSX version in terms of functionality, yet and until recently, their user interface has been very differ- ent. On this aspect, the various Windows versions used to be less intuitive than the Linux/OSX versions in various respects. This situation has been radically changed with the introduction of the new Integrated Development Environ- ment (IDE) (as from version 3.6) and of the new help-system (as of version 3.5).
Recommended publications
  • Touchpoint: Dynamically Re-Routable Effects Processing As a Multi-Touch Tablet Instrument
    Proceedings ICMC|SMC|2014 14-20 September 2014, Athens, Greece Touchpoint: Dynamically Re-Routable Effects Processing as a Multi-Touch Tablet Instrument Nicholas K. Suda Owen S. Vallis, Ph.D California Institute of the Arts California Institute of the Arts 24700 McBean Pkwy. 24700 McBean Pkwy. Valencia, California 91355 Valencia, California 91355 United States United States [email protected] [email protected] ABSTRACT Touchpoint is a multi-touch tablet instrument which pre- sents the chaining-together of non-linear effects processors as its core music synthesis technique. In doing so, it uti- lizes the on-the-fly re-combination of effects processors as the central mechanic of performance. Effects Processing as Synthesis is justified by the fact that that the order in which non-linear systems are arranged re- sults in a diverse range of different output signals. Be- cause the Effects Processor Instrument is a collection of software, the signal processing ecosystem is virtual. This means that processors can be re-defined, re-configured, cre- Figure 1. The sprawl of peripherals used to control IDM ated, and destroyed instantaneously, as a “note-level” mu- artist Tim Exile’s live performance. sical decision within a performance. The software of Touchpoint consists of three compo- nents. The signal processing component, which is address- In time stretching, pitch correcting, sample replacing, no- ed via Open Sound Control (OSC), runs in Reaktor Core. ise reducing, sound file convolving, and transient flagging The touchscreen component runs in the iOS version of Le- their recordings, studio engineers of every style are reg- mur, and the networking component uses ChucK.
    [Show full text]
  • Synchronous Programming in Audio Processing Karim Barkati, Pierre Jouvelot
    Synchronous programming in audio processing Karim Barkati, Pierre Jouvelot To cite this version: Karim Barkati, Pierre Jouvelot. Synchronous programming in audio processing. ACM Computing Surveys, Association for Computing Machinery, 2013, 46 (2), pp.24. 10.1145/2543581.2543591. hal- 01540047 HAL Id: hal-01540047 https://hal-mines-paristech.archives-ouvertes.fr/hal-01540047 Submitted on 15 Jun 2017 HAL is a multi-disciplinary open access L’archive ouverte pluridisciplinaire HAL, est archive for the deposit and dissemination of sci- destinée au dépôt et à la diffusion de documents entific research documents, whether they are pub- scientifiques de niveau recherche, publiés ou non, lished or not. The documents may come from émanant des établissements d’enseignement et de teaching and research institutions in France or recherche français ou étrangers, des laboratoires abroad, or from public or private research centers. publics ou privés. A Synchronous Programming in Audio Processing: A Lookup Table Oscillator Case Study KARIM BARKATI and PIERRE JOUVELOT, CRI, Mathématiques et systèmes, MINES ParisTech, France The adequacy of a programming language to a given software project or application domain is often con- sidered a key factor of success in software development and engineering, even though little theoretical or practical information is readily available to help make an informed decision. In this paper, we address a particular version of this issue by comparing the adequacy of general-purpose synchronous programming languages to more domain-specific
    [Show full text]
  • Resonant Spaces Notes
    Andrew McPherson Resonant Spaces for cello and live electronics Performance Notes Overview This piece involves three components: the cello, live electronic processing, and "sequenced" sounds which are predetermined but which render in real time to stay synchronized to the per- former. Each component is notated on a separate staff (or pair of staves) in the score. The cellist needs a bridge contact pickup on his or her instrument. It can be either integrated into the bridge or adhesively attached. A microphone will not work as a substitute, because the live sound plays back over speakers very near to the cello and feedback will inevitably result. The live sound simulates the sound of a resonating string (and, near the end of the piece, ringing bells). This virtual string is driven using audio from the cello. Depending on the fundamental frequency of the string and the note played by the cello, different pitches are produced and played back by speakers placed near the cellist. The sequenced sounds are predetermined, but are synchronized to the cellist by means of a series of cue points in the score. At each cue point, the computer pauses and waits for the press of a footswitch to advance. In some cases, several measures go by without any cue points, and it is up to the cellist to stay synchronized to the sequenced sound. An in-ear monitor with a click track is available in these instances to aid in synchronization. The electronics are designed to be controlled in real-time by the cellist, so no other technician is required in performance.
    [Show full text]
  • Tosca: an OSC Communication Plugin for Object-Oriented Spatialization Authoring
    ICMC 2015 – Sept. 25 - Oct. 1, 2015 – CEMI, University of North Texas ToscA: An OSC Communication Plugin for Object-Oriented Spatialization Authoring Thibaut Carpentier UMR 9912 STMS IRCAM-CNRS-UPMC 1, place Igor Stravinsky, 75004 Paris [email protected] ABSTRACT or consensus on the representation of spatialization metadata (in spite of several initiatives [11, 12]) complicates the inter- The paper presents ToscA, a plugin that uses the OSC proto- exchange between applications. col to transmit automation parameters between a digital audio This paper introduces ToscA, a plugin that allows to commu- workstation and a remote application. A typical use case is the nicate automation parameters between a digital audio work- production of an object-oriented spatialized mix independently station and a remote application. The main use case is the of the limitations of the host applications. production of massively multichannel object-oriented spatial- ized mixes. 1. INTRODUCTION There is today a growing interest in sound spatialization. The 2. WORKFLOW movie industry seems to be shifting towards “3D” sound sys- We propose a workflow where the spatialization rendering tems; mobile devices have radically changed our listening engine lies outside of the workstation (Figure 1). This archi- habits and multimedia broadcast companies are evolving ac- tecture requires (bi-directional) communication between the cordingly, showing substantial interest in binaural techniques DAW and the remote renderer, and both the audio streams and and interactive content; massively multichannel equipments the automation data shall be conveyed. After being processed and transmission protocols are available and they facilitate the by the remote renderer, the spatialized signals could either installation of ambitious speaker setups in concert halls [1] or feed the reproduction setup (loudspeakers or headphones), be exhibition venues.
    [Show full text]
  • Peter Blasser CV
    Peter Blasser – [email protected] - 410 362 8364 Experience Ten years running a synthesizer business, ciat-lonbarde, with a focus on touch, gesture, and spatial expression into audio. All the while, documenting inventions and creations in digital video, audio, and still image. Disseminating this information via HTML web page design and YouTube. Leading workshops at various skill levels, through manual labor exploring how synthesizers work hand and hand with acoustics, culminating in montage of participants’ pieces. Performance as touring musician, conceptual lecturer, or anything in between. As an undergraduate, served as apprentice to guild pipe organ builders. Experience as racquetball coach. Low brass wind instrumentalist. Fluent in Java, Max/MSP, Supercollider, CSound, ProTools, C++, Sketchup, Osmond PCB, Dreamweaver, and Javascript. Education/Awards • 2002 Oberlin College, BA in Chinese, BM in TIMARA (Technology in Music and Related Arts), minors in Computer Science and Classics. • 2004 Fondation Daniel Langlois, Art and Technology Grant for the project “Shinths” • 2007 Baltimore City Grant for Artists, Craft Category • 2008 Baltimore City Grant for Community Arts Projects, Urban Gardening List of Appearances "Visiting Professor, TIMARA dep't, Environmental Studies dep't", Oberlin College, Oberlin, Ohio, Spring 2011 “Babier, piece for Dancer, Elasticity Transducer, and Max/MSP”, High Zero Festival of Experimental Improvised Music, Theatre Project, Baltimore, September 2010. "Sejayno:Cezanno (Opera)", CEZANNE FAST FORWARD. Baltimore Museum of Art, May 21, 2010. “Deerhorn Tapestry Installation”, Curators Incubator, 2009. MAP Maryland Art Place, September 15 – October 24, 2009. Curated by Shelly Blake-Pock, teachpaperless.blogspot.com “Deerhorn Micro-Cottage and Radionic Fish Drier”, Electro-Music Gathering, New Jersey, October 28-29, 2009.
    [Show full text]
  • Chuck: a Strongly Timed Computer Music Language
    Ge Wang,∗ Perry R. Cook,† ChucK: A Strongly Timed and Spencer Salazar∗ ∗Center for Computer Research in Music Computer Music Language and Acoustics (CCRMA) Stanford University 660 Lomita Drive, Stanford, California 94306, USA {ge, spencer}@ccrma.stanford.edu †Department of Computer Science Princeton University 35 Olden Street, Princeton, New Jersey 08540, USA [email protected] Abstract: ChucK is a programming language designed for computer music. It aims to be expressive and straightforward to read and write with respect to time and concurrency, and to provide a platform for precise audio synthesis and analysis and for rapid experimentation in computer music. In particular, ChucK defines the notion of a strongly timed audio programming language, comprising a versatile time-based programming model that allows programmers to flexibly and precisely control the flow of time in code and use the keyword now as a time-aware control construct, and gives programmers the ability to use the timing mechanism to realize sample-accurate concurrent programming. Several case studies are presented that illustrate the workings, properties, and personality of the language. We also discuss applications of ChucK in laptop orchestras, computer music pedagogy, and mobile music instruments. Properties and affordances of the language and its future directions are outlined. What Is ChucK? form the notion of a strongly timed computer music programming language. ChucK (Wang 2008) is a computer music program- ming language. First released in 2003, it is designed to support a wide array of real-time and interactive Two Observations about Audio Programming tasks such as sound synthesis, physical modeling, gesture mapping, algorithmic composition, sonifi- Time is intimately connected with sound and is cation, audio analysis, and live performance.
    [Show full text]
  • User Manual Mellotron V - WELCOME to the MELLOTRON the Company Was Called Mellotronics, and the First Product, the Mellotron Mark 1, Appeared in 1963
    USER MANUAL Special Thanks DIRECTION Frédéric BRUN Kévin MOLCARD DEVELOPMENT Pierre-Lin LANEYRIE Benjamin RENARD Marie PAULI Samuel LIMIER Baptiste AUBRY Corentin COMTE Mathieu NOCENTI Simon CONAN Geoffrey GORMOND Florian MARIN Matthieu COUROUBLE Timothée BÉHÉTY Arnaud BARBIER Germain MARZIN Maxime AUDFRAY Yann BURRER Adrien BARDET Kevin ARCAS Pierre PFISTER Alexandre ADAM Loris DE MARCO Raynald DANTIGNY DESIGN Baptiste LE GOFF Morgan PERRIER Shaun ELLWOOD Jonas SELLAMI SOUND DESIGN Victor MORELLO Boele GERKES Ed Ten EYCK Paul SCHILLING SPECIAL THANKS Terry MARDSEN Ben EGGEHORN Jay JANSSEN Paolo NEGRI Andrew CAPON Boele GERKES Jeffrey CECIL Peter TOMLINSON Fernando Manuel Chuck CAPSIS Jose Gerardo RENDON Richard COURTEL RODRIGUES Hans HOLEMA SANTANA JK SWOPES Marco CORREIA Greg COLE Luca LEFÈVRE Dwight DAVIES Gustavo BRAVETTI Ken Flux PIERCE George WARE Tony Flying SQUIRREL Matt PIKE Marc GIJSMAN Mat JONES Ernesto ROMEO Adrien KANTER Jason CHENEVAS-PAULE Neil HESTER MANUAL Fernando M RODRIGUES Vincent LE HEN (editor) Jose RENDON (Author) Minoru KOIKE Holger STEINBRINK Stephan VANKOV Charlotte METAIS Jack VAN © ARTURIA SA – 2019 – All rights reserved. 11 Chemin de la Dhuy 38240 Meylan FRANCE www.arturia.com Information contained in this manual is subject to change without notice and does not represent a commitment on the part of Arturia. The software described in this manual is provided under the terms of a license agreement or non-disclosure agreement. The software license agreement specifies the terms and conditions for its lawful use. No part of this manual may be reproduced or transmitted in any form or by any purpose other than purchaser’s personal use, without the express written permission of ARTURIA S.A.
    [Show full text]
  • Implementing Stochastic Synthesis for Supercollider and Iphone
    Implementing stochastic synthesis for SuperCollider and iPhone Nick Collins Department of Informatics, University of Sussex, UK N [dot] Collins ]at[ sussex [dot] ac [dot] uk - http://www.cogs.susx.ac.uk/users/nc81/index.html Proceedings of the Xenakis International Symposium Southbank Centre, London, 1-3 April 2011 - www.gold.ac.uk/ccmc/xenakis-international-symposium This article reflects on Xenakis' contribution to sound synthesis, and explores practical tools for music making touched by his ideas on stochastic waveform generation. Implementations of the GENDYN algorithm for the SuperCollider audio programming language and in an iPhone app will be discussed. Some technical specifics will be reported without overburdening the exposition, including original directions in computer music research inspired by his ideas. The mass exposure of the iGendyn iPhone app in particular has provided a chance to reach a wider audience. Stochastic construction in music can apply at many timescales, and Xenakis was intrigued by the possibility of compositional unification through simultaneous engagement at multiple levels. In General Dynamic Stochastic Synthesis Xenakis found a potent way to extend stochastic music to the sample level in digital sound synthesis (Xenakis 1992, Serra 1993, Roads 1996, Hoffmann 2000, Harley 2004, Brown 2005, Luque 2006, Collins 2008, Luque 2009). In the central algorithm, samples are specified as a result of breakpoint interpolation synthesis (Roads 1996), where breakpoint positions in time and amplitude are subject to probabilistic perturbation. Random walks (up to second order) are followed with respect to various probability distributions for perturbation size. Figure 1 illustrates this for a single breakpoint; a full GENDYN implementation would allow a set of breakpoints, with each breakpoint in the set updated by individual perturbations each cycle.
    [Show full text]
  • USB MIDI CONTROLLER INTRODUCTION This Is an Ultra-Compact MIDI Controller Which Serves to Control Music Software
    USB MIDI CONTROLLER INTRODUCTION This is an ultra-compact MIDI controller which serves to control music software. It is equipped with 25/49/61 velocity-sensitive keys as well as 1 fader and 4 rotary controls. The controller connects both PC and Mac(OTG convertor cable is required for connecting to Mobile phone and Pad). You can do without a bulky power adapter as power supply is via the USB bus. It’s also available to download the full user manual and other setting instructions from http://en.worlde.com.cn/. 2 STEPS FOR KS TO WORK 1) Connect your KS to the computer by USB cable. 2) Open your DAW in your computer and select KS as your hardware controller in your DAW. Now you are ready to go. CONNECTING A COMPUTER Use the included USB cable to connect the USB MIDI controller to a USB2.0 port on your computer. The power will turn on. Select the KS as MIDI controller within your music software and you are ready to go. DEVICE SETUP IN SOFTWARE To select KS as a controller for your digital audio workstation (DAW): 1. Connect KS to your computer using a standard USB cable. (If you are connecting KS to a USB hub, make sure it is a powered hub. If another device with USB3.0 is connected to USB hub at the same time, KS will not work properly at this time.) 2. Open your DAW. 3. Open your DAW's Preferences, Options, or Device Setup, select KS as your hardware controller, and then close t hat window.
    [Show full text]
  • Isupercolliderkit: a Toolkit for Ios Using an Internal Supercollider Server As a Sound Engine
    ICMC 2015 – Sept. 25 - Oct. 1, 2015 – CEMI, University of North Texas iSuperColliderKit: A Toolkit for iOS Using an Internal SuperCollider Server as a Sound Engine Akinori Ito Kengo Watanabe Genki Kuroda Ken’ichiro Ito Tokyo University of Tech- Watanabe-DENKI Inc. Tokyo University of Tech- Tokyo University of Tech- nology [email protected] nology nology [email protected]. [email protected]. [email protected]. ac.jp ac.jp ac.jp The editor client sends the OSC code-fragments to its server. ABSTRACT Due to adopting the model, SuperCollider has feature that a iSuperColliderKit is a toolkit for iOS using an internal programmer can dynamically change some musical ele- SuperCollider Server as a sound engine. Through this re- ments, phrases, rhythms, scales and so on. The real-time search, we have adapted the exiting SuperCollider source interactivity is effectively utilized mainly in the live-coding code for iOS to the latest environment. Further we attempt- field. If the iOS developers would make their application ed to detach the UI from the sound engine so that the native adopting the “sound-server” model, using SuperCollider iOS visual objects built by objective-C or Swift, send to the seems to be a reasonable choice. However, the porting situa- internal SuperCollider server with any user interaction tion is not so good. SonicPi[5] is the one of a musical pro- events. As a result, iSuperColliderKit makes it possible to gramming environment that has SuperCollider server inter- utilize the vast resources of dynamic real-time changing nally. However, it is only for Raspberry Pi, Windows and musical elements or algorithmic composition on SuperCol- OSX.
    [Show full text]
  • USB MIDI CONTROLLER INTRODUCTION This Is an Ultra-Compact and Light-Weight MIDI Controller Which Serves to Control Music Software
    USB MIDI CONTROLLER INTRODUCTION This is an ultra-compact and light-weight MIDI controller which serves to control music software. It is equipped with 25 velocity-sensitive keys, and 8 velocity-sensitive drum pads as well as 4 faders and 4 rotary controls. The controller connects both PC and Mac(OTG convertor cable is required for connecting to Mobile phone and Pad). You can do without a bulky power adapter as power supply is via the USB bus. The unit is supplied with a software editor which you can download from WORLDE website. The software editor will let you customize this USB MIDI controller to your own requirements. It’s also available to download the full user manual and other setting instructions from http://en.worlde.com.cn/. 3 STEPS FOR PANDAMINI TO WORK 1) Connect your PANDAMINI to the computer by USB cable. 2) Download the software editor from the download page of WORLDE website and customize all editable controllers, and create, save and load presets. 3) Open your DAW in your computer and select PANDAMINI as your hardware controller in your DAW. Now you are ready to go. CONNECTING A COMPUTER Use the included USB cable to connect the USB MIDI controller to a USB2.0 port on your computer. The power will turn on and the scene LED will light up. Select the PANDAMINI as MIDI controller within your music software and you are ready to go. FIRST STEPS WITH THE EDITOR The editor will let you customize all editable controllers, and create, save and load presets.
    [Show full text]
  • The Viability of the Web Browser As a Computer Music Platform
    Lonce Wyse and Srikumar Subramanian The Viability of the Web Communications and New Media Department National University of Singapore Blk AS6, #03-41 Browser as a Computer 11 Computing Drive Singapore 117416 Music Platform [email protected] [email protected] Abstract: The computer music community has historically pushed the boundaries of technologies for music-making, using and developing cutting-edge computing, communication, and interfaces in a wide variety of creative practices to meet exacting standards of quality. Several separate systems and protocols have been developed to serve this community, such as Max/MSP and Pd for synthesis and teaching, JackTrip for networked audio, MIDI/OSC for communication, as well as Max/MSP and TouchOSC for interface design, to name a few. With the still-nascent Web Audio API standard and related technologies, we are now, more than ever, seeing an increase in these capabilities and their integration in a single ubiquitous platform: the Web browser. In this article, we examine the suitability of the Web browser as a computer music platform in critical aspects of audio synthesis, timing, I/O, and communication. We focus on the new Web Audio API and situate it in the context of associated technologies to understand how well they together can be expected to meet the musical, computational, and development needs of the computer music community. We identify timing and extensibility as two key areas that still need work in order to meet those needs. To date, despite the work of a few intrepid musical Why would musicians care about working in explorers, the Web browser platform has not been the browser, a platform not specifically designed widely considered as a viable platform for the de- for computer music? Max/MSP is an example of a velopment of computer music.
    [Show full text]