Skip to content Skip to navigation

Engineering & Computer Science

Topic Image: 
Engineering and Computer Science

Physics-based Sound Synthesis for Games and Interactive Systems (Fall-16)

Tuesday, September 20, 2016 to Tuesday, January 24, 2017

About the Course

This course introduces the basics of Digital Signal Processing and computational acoustics, motivated by the vibrational physics of real-world objects and systems. We will build from a simple mass-spring and pendulum to demonstrate oscillation, learn how to simulate those systems in the computer, and also prove that these simple oscillations behave as a sine wave. From that we move to plucked strings and struck bars, showing both solutions as combined traveling waves and combined sine wave harmonics. We continue to build and simulate more complex systems containing many vibrating objects and resonators (stringed instruments, drum, plate), and also learn how to simulate echos and room reverberation. Through this process, we will learn about digital signals, filters, oscillators, harmonics, spectral analysis, linear and non-linear systems, particle models, and all the necessary building blocks to synthesize essentially any sound. The free open-source software provided will make it possible for anyone to use physical models in their art-making, game or movie sound, or any other application.


Course runs until August 31, 2016

Session 1: The Time Domain: Sound, Digital Audio, PCM Files, Noise Vs. Pitch, A Hint Of Spectra 
a) Sound in Air, Traveling Waves b) Digital Audio, Sampling, Quantization, Aliasing c) Soundfiles, Wavetables, Manipulating PCM d) Pitch (vs. Noise), Spectral Analysis 0.1 e) Time-domain Pitch/Noise Detection: ZeroXings, AMDF, Autocorrelation
Session 2: Physics, Oscillators, Sines & Spectra, Spectral/Additive Synthesis 
a) Mass-Spring-Damper system, also simple Pendulum b) Fourier analysis/synthesis, Spectrum Analysis 1.0 c) More on additive Sine-wave synthesis
Session 3: Digital Filters, Modal Synthesis 
a) Digital Filters, Finite Impulse Response (FIR) b) Linearity, Time-invariance, Convolution c) Infinite Impulse Response (IIR) Digital Filters d) BiQuad Resonator Filter, Modal Synthesis
Session 4: Physical Modeling Synthesis: 1D Systems 
a) 1-D systems, Strings, Modal (Fourier) Solution b) Strings II: Waveguide (D’Alembert) Solution c) 1-D systems, Bars, Tubes, solutions d) Advanced Waveguide Synthesis for 1-D systems
Session 5: Physical Modeling II: 2 And 3-D Systems 
a) 2-D systems, plates, drums, higher-order modes Fourier (Sine and/or Modal) Solutions, Waveguide Solutions b) 3-D systems, rooms, resonators, Meshes, Waveguides c) Resonator/Modal view and solution of 3-D systems Pop bottles and other lumped resonators
Session 6: Subtractive Synthesis, Vocal Sounds And Models 
a)  Subtractive Synthesis, Voice Synthesis, Formants b) Linear Prediction, LPC c) FOFs d) FM Synthesis: Horns, Bells, Voices
Session 7: Grains, Particles And Statistical Models 
a) Wavelets b) Granular Synthesis c) Particle Models, Statistical Modal Synthesis d) Wind, Water, Surf, and Other Whooshing Sounds
Session 8: Extending And Refining Physical Synthesis Models 
a) Waveshaping Synthesis, Distortion Modeling b) Time-Varying Systems c) Stiffness, All-Pass Filters, Banded Waveguides d) Commuted Synthesis e) JULIUS on KS, strings, demos
Session 9: Tying It All Together: Applications, Sonification, Interactions, And Control 
a) Scanned Synthesis b)  Don’t forget the laptop!!! SMELT:   c) Controlling Synthesis with game controllers (Wii, mobile TouchOSC, more) d) Walking Synthesis, a complete system e) Procedural Audio: Driving synthesis from process, game state, etc. f) Data set Sonification
* This course is running in Adaptive Scheduling mode. You can learn more about how Adaptive Scheduling works in this help article

What you need to take this course:

  • Software: ChucK (also optionally STK, PeRColate for Max/MSP, Processing, GL/Glut)

Recommended (highly) Textbook:

  • Operating system: Mac OS X, Windows, or Linux (Planet CCRMA recommended)
  • Desired: familiarity with algebra. no calculus required.
  • Helpful to have: some personal sound-making things: a guitar or other stringed instrument, a drum, a kitchen pan, a prayer bowl, glasses, bowls, voice...


Perry Cook

    Perry R. Cook is Emeritus Professor of Computer Science (also Music) at Princeton University, founding advisor/consultant to social music company SMule, and consulting professor at CalArts, Stanford CCRMA. With Dan Trueman, he co-founded the Princeton Laptop Orchestra, which received a MacArthur Digital Learning Initiative Grant in 2005. With Ge Wang, Cook is co-author of the ChucK Programming Language. His newest book is “Programming for Digital Musicians and Artists,” with Ajay Kapur, Spencer Salazar, and Ge Wang. The recipient of a 2003 Guggenheim Fellowship, Cook is (still) working on a new book, "La Bella Voce e La Macchina (the Beautiful Voice and the Machine), A History of Technology and the Expressive Voice." Perry is also co-founder of Kadenze.

    Julius Smith

      Julius O. Smith normally teaches a music signal-processing course sequence and supervises related research at the Center for Computer Research in Music and Acoustics (CCRMA). He is formally a professor of music and (by courtesy) electrical engineering. In 1975, he received his BS/EE degree from Rice University, where he got started in the field of digital signal processing and modeling for control. In 1983, he received the PhD/EE degree from Stanford University, specializing in techniques for digital filter design and system identification, with application to violin modeling. His work history includes the Signal Processing Department at Electromagnetic Systems Laboratories, Inc., working on systems for digital communications, the Adaptive Systems Department at Systems Control Technology, Inc., working on research problems in adaptive filtering and spectral estimation, and NeXT Computer, Inc., where he was responsible for sound, music, and signal processing software for the NeXT computer workstation. Prof. Smith is a Fellow of the Audio Engineering Society and the Acoustical Society of America. He is the author of four online books and numerous research publications in his field.

      Sound Synthesis

      Introduction to Logic (Lagunita)

      Monday, September 26, 2016 to Monday, December 12, 2016


      This course is an introduction to Logic from a computational perspective. It shows how to encode information in the form of logical sentences; it shows how to reason with information in this form; and it provides an overview of logic technology and its applications - in mathematics, science, engineering, business, law, and so forth.

      The course was originally designed for use at the college level. However, experience has shown that it works for secondary school students as well, and it can be used at the start of graduate school for those who have not yet seen the material.


      There are just two prerequisites. The course presumes that the student understands sets and set operations, such as union, intersection, and so forth. It also presumes that the student is comfortable with symbolic manipulation, as used, for example, in solving high-school algebra problems. Nothing else is required.


      Michael Genesereth

      Michael Genesereth is an associate professor in the Computer Science Department at Stanford University. He received his Sc.B. in Physics from M.I.T. and his Ph.D. in Applied Mathematics from Harvard University. Prof. Genesereth is most known for his work on computational logic and applications of that work in enterprise computing, computational law, and general game playing. He has taught logic for many years at Stanford and offers an annual massive online course on logic that has reached over 500,000 students. He is the current director of the Logic Group at Stanford and founder and research director of CodeX (The Stanford Center for Legal Informatics).


      Do I need to buy a textbook?

      No, the text Introduction to Logic is provided in the online material. However, you can purchase a printed version (published by Morgan-Claypool) if you’d like.

      Is it possible to earn a Statement of Accomplishment for this class?

      Yes. A Statement of Accomplishment will be given to participants who earn an overall score of 70% or higher in the course.

      Audio Signal Processing for Music Applications

      Next session opens March 27th.

      About this course:

      In this course you will learn about audio signal processing methodologies that are specific for music and of use in real applications. We focus on the spectral processing techniques of relevance for the description and transformation of sounds, developing the basic theoretical and practical knowledge with which to analyze, synthesize, transform and describe audio signals in the context of music applications.

      The course is based on open software and content. The demonstrations and programming exercises are done using Python under Ubuntu, and the references and materials for the course come from open online repositories. We are also distributing with open licenses the software and materials developed for the course.

      Who is this class for: This course is primary aimed at advanced undergraduate or master students, along with professionals, interested in signal processing, programming and music.

      Created by: Universitat Pompeu Fabra of Barcelona, Stanford University

      Universitat Pompeu Fabra of BarcelonaStanford University


      Can I take this course for free?
      Yes, there is no fee in this course. You can follow the course, do the assignments, and obtain a final grade completely for free.
      Can I pay to get a Course Certificate?
      No, we do not offer this option.
      What resources will I need for this class?
      All the materials and tools for the class are available online under open licences.
      Do I need to buy a textbook for the course?
      No, it is self-contained.
      How much programming background is needed for the course?
      All the assignments start from some existing Python code that the student have to understand and modify. Some programming experience is necessary.
      What is the coolest thing I'll learn if I take this class?
      You will play around with sounds a lot, analysing them, transforming them, and making interesting new sounds.


      Xavier Serra
      Taught by: Xavier Serra, Associate Professor
      Dept. of Information and Communication Technologies, UPF
      Julius Smith
      Taught by: Julius Smith, Professor of Music and (by courtesy) Electrical Engineering

      Mobile Security

      Application Required: Apply Now

      Fee Applies.

      Applications may be submitted online at anytime. Sample Application

      Now open!

      Course Overview

      From smartphones to tablets to watches, users are relying more and more on the convenience of mobile technology. Organizations must meet this growing trend with greater security measures to support critical business functions and protect sensitive data on enterprise devices. Mobile architectures, applications, networks and services must all be developed and managed in compliance with the oversight of a strong IT workforce.

      This course provides an in-depth technical overview of the security features and limitations of modern mobile operating systems, including the top risks and vulnerabilities, every IT professional needs to know.

      You Will Learn

      • Mobile application security measures
        • Native, API-based, Web-based and HTML5 system architectures are covered in Android, Surface, Apple and Samsung devices. The latest threats to mobile application security including data leakage, identifier leakage, third-party tags and libraries, and location privacy are also reviewed. An ecosystem-level of available application store defenses are detailed using Bouncer (Android automated vetting) and iOS (Apple manual and automated vetting) to demonstrate permission models and defense against circumvention.
      • Models to develop and secure Android applications
        • WebView, common cryptographic mistakes and marketplace issues reveal how malicious intent can cause security breaches in Android applications. Establishing practices to defend against threats through app code signing, runtime processing, permissions and other features like Bytecode are discussed.
      • Security detection and measures in iOS
        • The iOS security architecture is comprised of specific features for ensuring trust—secure boot chain, secure enclave, app data protection and data classes. These security measures are covered with attention to privacy mechanisms for service through iMessage and iCloud; network oversight through Bluetooth and AirDrop are also covered.
      • Trends in mobile device management (MDM)
        • Device requirements for MDM are reviewed in detail: configuration and hardening, encryption, backup and recovery, remote wipe, patch management, enterprise VPN and proxy. Additionally, measures to monitor, enforce and report on enterprise device activity are covered using case studies from MobileIron, AirWatch and Enterproid.


      • Dan Boneh Professor of Computer Science, Stanford University
      • Neil Daswani Chief Information Security Officer, LifeLock
      • John Mitchell Professor of Computer Science, Stanford University


      We recommend you have the equivalent of a BS in Computer Science and a background in security.

      We highly recommend that you take this course, Software Security Foundations (XACS101) as the 1st course within the Stanford ACS certificate program. It provides the fundamentals necessary for the subsequent courses in the program.


      • $495 per online course
      • $75 one-time document fee

      On Demand Webinars

      View our free on-demand webinars to get a preview of the courses we have to offer.


      Please contact


      Certificates and Degrees RDP Removing Degrees and Certificates

      Course Access   

      60 day access to the online course starts upon payment.

      Course Materials 

      Course materials are available for download from the online videos page to allow for printing and review.

      Final Exam: 

      Online participants are asked to complete a final exam at the end of each course to maintain the integrity of the program. A digital record of completion will be emailed to participants when they pass the exam.

      Course Evaluation: 

      It is required that participants complete the course evaluation once they have passed the final exam.

      Mobile Security

      Algorithms: Design and Analysis, Part 2 (Summer 16')

      Monday, August 8, 2016

      About this course:

      Algorithms are the heart of computer science, and the subject has countless practical applications as well as intellectual depth. This course is an introduction to algorithms for learners with at least a little programming experience. The course is rigorous but emphasizes the big picture and conceptual understanding over low-level implementation and mathematical details. After completing this course, you will have a greater mastery of algorithms than almost anyone without a graduate degree in the subject.

      Specific topics in Part 2 include: greedy algorithms (scheduling, minimum spanning trees, clustering, Huffman codes), dynamic programming (knapsack, sequence alignment, optimal search trees, shortest paths), NP-completeness and what it means for the algorithm designer, analysis of heuristics, local search. About the instructor: Tim Roughgarden has been a professor in the Computer Science Department at Stanford University since 2004. He has taught and published extensively on the subject of algorithms and their applications.

      Who is this class for: Learners with at least a little bit of programming experience who want to learn the essentials of algorithms. In a University computer science curriculum, this course is typically taken in the third year.

      Tim Roughgarden
      Algorithms: Design and Analysis, Part I  Course Image

      Algorithms: Design and Analysis, Part 1 (Summer '16)

      Monday, August 8, 2016

      About this Course

      Algorithms are the heart of computer science, and the subject has countless practical applications as well as intellectual depth. This course is an introduction to algorithms for learners with at least a little programming experience. The course is rigorous but emphasizes the big picture and conceptual understanding over low-level implementation and mathematical details. After completing this course, you will be well-positioned to ace your technical interviews and speak fluently about algorithms with other programmers and computer scientists. Specific topics include: "Big-oh" notation, sorting and searching, divide and conquer (master method, integer and matrix multiplication, closest pair), randomized algorithms (QuickSort, contraction algorithm for min cuts), data structures (heaps, balanced search trees, hash tables, bloom filters), graph primitives (applications of BFS and DFS, connectivity, shortest paths). About the instructor: Tim Roughgarden has been a professor in the Computer Science Department at Stanford University since 2004. He has taught and published extensively on the subject of algorithms and their applications.


      Week 1

      1. I. INTRODUCTION (Week 1)
      4. Problem Set #1
      5. Programming Assignment #1
      • Quiz: Problem Set #1
      • Quiz: Programming Assignment #1

      Week 2

      1. IV. THE MASTER METHOD (Week 2)
      2. V. QUICKSORT - ALGORITHM (Week 2)
      3. VI. QUICKSORT - ANALYSIS (Week 2)
      5. Problem Set #2
      6. Programming Assignment #2
      • Quiz: Problem Set #2
      • Quiz: Programming Question #2

      Week 3

      3. Problem Set #3
      4. Programming Assignment #3
      • Quiz: Problem Set #3
      • Quiz: Programming Assignment #3

      Week 4

      2. Problem Set #4
      3. Programming Assignment #4
      • Quiz: Problem Set #4
      • Quiz: Programming Assignment #4

      Week 5

      2. XII. HEAPS (Week 5)
      4. Problem Set #5
      5. Programming Assignment #5
      • Quiz: Problem Set #5
      • Quiz: Programming Assignment #5

      Week 6

      1. XIV. HASHING: THE BASICS (Week 6)
      2. XV. UNIVERSAL HASHING (Week 6)
      3. XV. BLOOM FILTERS (Week 6)
      4. PREVIEW OF PART 2
      5. Problem Set #6
      6. Programming Assignment #6
      • Quiz: Problem Set #6
      • Quiz: Programming Assignment #6

      Week 7

      1. Final Exam
      • Quiz: Final Exam
      Tim Roughgarden
      Algorithms: Design and Analysis, Part I  Course Image

      Cryptography I Summer 2016

      Monday, June 13, 2016

      About this course:

      Cryptography is an indispensable tool for protecting information in computer systems. In this course you will learn the inner workings of cryptographic systems and how to correctly use them in real-world applications. The course begins with a detailed discussion of how two parties who have a shared secret key can communicate securely when a powerful adversary eavesdrops and tampers with traffic. We will examine many deployed protocols and analyze mistakes in existing systems. The second half of the course discusses public-key techniques that let two parties generate a shared secret key. Throughout the course participants will be exposed to many exciting open problems in the field and work on fun (optional) programming projects. In a second course (Crypto II) we will cover more advanced cryptographic tasks such as zero-knowledge, privacy mechanisms, and other forms of encryption.


      WEEK 1

      Course overview and stream ciphers
      Section 1: what is cryptography about?
      Section 2: crash course in discrete probability
      Stream Ciphers 1: the one-time pad and stream ciphers
      Stream Ciphers 2: attacks and common mistakes
      Stream Ciphers 3: real-world examples
      Stream Ciphers 4: what is a secure cipher?
      Week 1 Review Questions and Programming Project
      Quiz: Week 1 - Problem Set

      WEEK 2

      Block Ciphers
      Block Ciphers 1: overview
      Block Ciphers 2: The Data Encryption Standard
      Block Ciphers 3: AES and other constructions
      How to Use Block Ciphers 1: one-time key
      How to Use Block Ciphers 2: many-time key
      Week 2 Review Questions and Programming Project
      Quiz: Week 2 - Problem Set

      WEEK 3

      Message Integrity
      Message Integrity 1: definitions
      Message Integrity 2: constructions
      Message Integrity 3: more constructions
      Collision Resistance 1: what is a collision resistant function?
      Collision Resistance 2: constructions
      HMAC: a MAC from a hash function
      Week 3 Review Questions and Programming Project
      Quiz: Week 3 - Problem Set

      WEEK 4

      Authenticated Encryption
      Authenticated Encryption 1: why is it so important?
      Authenticated Encryption 2: standard constructions
      Authenticated Encryption 3: pitfalls
      Odds and Ends 1: how to derive keys
      Odds and Ends 2: searching on encrypted data
      Odds and Ends 3: disk encryption and creditcard encryption
      Week 4 Review Questions and Programming Project
      Quiz: Week 4 - Problem Set

      WEEK 5

      Basic Key Exchange
      Basic Key Exchange 1: problem statement
      Basic Key Exchange 2: two solutions
      Number Theory 1: modular arithmetic
      Number Theory 2: easy and hard problems
      Week 5 Review Questions and Programming Project
      Quiz: Week 5 - Problem Set

      WEEK 6

      Public-Key Encryption
      Public Key Encryption from Trapdoor Permutations
      Public Key Encryption from Trapdoor Permutations: RSA
      Public Key Encryption from Trapdoor Permutations: attacks
      Public Key Encryption From Diffie-Hellman: ElGamal
      Public Key Encryption: summary
      Week 6 Review Questions and Programming Project
      Quiz: Week 6 - Problem Set

      WEEK 7

      Final exam
      Final exam covering the entire course
      Quiz: Final Exam
      Dan Boneh
      Cryptography I

      Behind and Beyond Big Data - (Fall 16')

      Monday, October 24, 2016

      Starts online October 24, 2016

      At Stanford: December 6-9, 2016

      Accepting Applications:

      February 15, 2016 – October 23, 2016

      Application and Fee Apply.

      This course is offered through Worldview Stanford. Worldview Stanford is an innovative Stanford University initiative that creates interdisciplinary learning experiences for professionals to prepare them for the strategic challenges ahead.


      What's driving big data? We increasingly live our social, economic, and intellectual lives in the digital realm, enabled by new tools and technologies. These activities generate massive data sets, which in turn refine the tools. How will this co-evolution of technology and data reshape society more broadly?

      Creating new knowledge and value: Big data changes what can be known about the world, transforming science, industries, and culture in the process. It reveals solutions to social problems and allows products and services to be even more targeted. Where will big data create the greatest sources of new understanding and new value?

      Shifting power, security, and privacy: The promise of big data is accompanied by perils—in terms of control, privacy, security, reputation, and social and economic disruption. How will we manage these tradeoffs individually and in business, government, and civil society?


      Learn from a variety of sources and Stanford experts, including:

      Lucy Bernholz, philanthropy, technology, and policy scholar at the Center on Philanthropy and Civil Society

      Sharad Goel, computational scientist studying politics, media, and social networks

      Jennifer Granick, attorney and director of Civil Liberties at the Stanford Center for Internet and Society

      Learn from a variety of sources and Stanford experts, including:

      Michal Kosinsk, psychologist and computational scientist studying online and organizational behavior at Stanford Graduate School of Business

      Margaret Levi, political scientist specializing in governance, trust, and legitimacy

      John Mitchell, computer scientist, cybersecurity expert, and Vice Provost of Teaching and Learning

      • Synthesize expert opinions from researchers and Silicon Valley innovators to understand big data's opportunities and challenges. Balance the tradeoffs between individual privacy and security and social value.
      • Apply strategies for leveraging the potential of big data while managing potential vulnerabilities, both personally and organizationally.
      Big Data

      Programming MAX: Structuring Interactive Software for Digital Arts

      Course Offered in Adaptive Mode, Enrollment Open


      Max is a powerful platform that accommodates and connects a wide variety of tools for sound, graphics, music and interactivity using a flexible patching and programming environment. Max allows most computer users to write a simple meaningful program within a few minutes, even with limited programming knowledge. But to do something more substantial it's necessary to approach Max as an actual programming language, by taking advantage of its various mechanisms for abstracting program elements into scalable, reusable components that can be combined in increasingly powerful ways.

      This class will not cover every single capability of the language, but instead will focus on key concepts and mechanisms that will allow for tremendous new freedom and possibilities in Max. The class will touch upon:

      • sound and movie playback
      • sound synthesis
      • sound and video effects processing
      • algorithmic composition
      • cross-modal mappings (e.g., video affecting audio and vice versa)
      • interactive control (e.g., from QWERTY keyboard, mouse, USB devices, Open Sound Control)

      Max programming, like most interesting topics, has deep aspects and shallow aspects. This course will largely focus on the deep aspects: principles, concepts, techniques, and theory. If you understand these underlying aspects, your capacity to create in Max will deepen exponentially.

      At the same time, this is not just a theory class. You will also create your own projects using Max. This course will teach the minimum you need to start working on assignments, but mostly I will teach you how to learn or look up the shallow knowledge on your own using Max’s built-in documentation, the Internet, and the Kadenze course forum, as well as how to program your own tests that answer specific questions or reveal potential bugs. Working in this way, you will also develop essential skills and habits that will develop confidence and self-sufficiency, and serve you in the future.


      Matthew Wright, Technical Director of CCRMA
      Dr. Matthew Wright is a media systems designer, improvising composer/musician, and computer music researcher.  He was the Musical Systems Designer at U.C. Berkeley's Center for New Music and Audio Technology (CNMAT) from 1993-2008, and is known for his promotion of the Sound Description Interchange Format (SDIF) and Open Sound Control (OSC) standards, as well as his work with real-time mapping of musical gestures to sound synthesis.  His dissertation at Stanford's Center for Computer Research in Music and Acoustics (CCRMA) concerned computer modeling of the perception of musical rhythm: "The Shape of an Instant: Measuring and Modeling Perceptual Attack Time with Probability Density Functions."  He spent one year as a visiting research fellow at the University of Victoria on the theme of "Computational Ethnomusicology" developing tools for analysis and visualization of detailed pitch and timing information from musical recordings.  He was the Research Director of UC Santa Barbara's Center for Research in Electronic Arts and Technology (CREATE) for eight years, where he taught classes, advised students, founded and directed the CREATE Ensemble dedicated to research and musical creation with technology in a live performance context, as well as being Principal Development Engineer for the AlloSphere, a 3-story full-surround immersive audiovisual instrument for scientific and artistic research. As a musician, he plays a variety of traditional plucked lutes, Afro-Brazilian percussion, and computer-based instruments of his own design, in both traditional music contexts and experimental new works.

      Guest Lecturer

      David Zicarelli
      David Zicarelli is the founder and CEO of Cycling '74, a software company that maintains and develops the MAX graphical programming environment. The company introduced Max extensions for audio (MSP) in 1997 and video (Jitter) in 2001. Before starting Cycling '74, Zicarelli worked on Max and other interactive music software at Opcode Systems, Intelligent Music, and IRCAM, and earned a doctorate from the Stanford Program in Hearing and Speech Sciences.

      Programming Max: Structuring Interactive Software for Digital Arts from KadenzeOfficial on Vimeo.

      Programming Max Kadenze

      Online Jamming and Concert Technology-Winter 2016

      Thursday, November 19, 2015

      [[{"fid":"55161","view_mode":"teaser","fields":{"format":"teaser"},"type":"media","link_text":null,"attributes":{"alt":"Online Jamming And Concert Technology","height":"390","width":"640","class":"panopoly-image-video media-element file-teaser"}}]]

      Course Description

      Today's vast amount of streaming and video conferencing on the Internet lacks one aspect of musical fun and that's what this course is about: high-quality, near-synchronous musical collaboration. Under the right conditions, the Internet can be used for ultra-low-latency, uncompressed sound transmission. The course teaches open-source (free) techniques for setting up city-to-city studio-to-studio audio links. Distributed rehearsing, production and split ensemble concerts are the goal. Setting up such links and debugging them requires knowledge of network protocols, network audio issues and some ear training.

      Course Schedule

      Course runs through November 3, 2015 - February 2, 2016

      Session 1Basics And Setup 
      Basics: Network protocols, audio signals + soundcards and network audio.
      Session 2Jacktrip Application + Connection 
      Things that go wrong with Jacktrip: Network & Audio. P2P Sessions and Multi-site setups.
      Session 3Debugging 
      Debug examples of typical problems.
      Session 4Polish And Practice 
      Polish techniques and spawn more practice sessions.
      Session 5Future 
      Future of the art and practice of network audio, alternative platforms for network audio.


      Chris Chafe

        Chris Chafe is a composer, improvisor and cellist, developing much of his music alongside computer-based research. He is Director of Stanford University's Center for Computer Research in Music and Acoustics (CCRMA). At IRCAM (Paris) and The Banff Centre (Alberta), he pursued methods for digital synthesis, music performance and real-time internet collaboration. CCRMA's SoundWIRE project involves live concertizing with musicians the world over. Online collaboration software including jacktrip and research into latency factors continue to evolve. An active performer either on the net or physically present, his music reaches audiences in dozens of countries and sometimes at novel venues. A simultaneous five-country concert was hosted at the United Nations in 2009. Chafe's works are available from Centaur Records and various online media. Gallery and museum music installations are into their second decade with "musifications" resulting from collaborations with artists, scientists and MD's. Recent work includes the Brain Stethoscope project, PolarTide for the 2013 Venice Biennale, Tomato Quintet for the transLife:media Festival at the National Art Museum of China and Sun Shot played by the horns of large ships in the port of St. Johns, Newfoundland.


        Equipment: Computer (Mac or Linux) with installation privileges 

        Software: ChucK, Jacktrip

        Online Jamming and Concert Technology


        Subscribe to RSS - Engineering & Computer Science