Difference between revisions of "Stompbox 2011"
(→REFERENCES) |
|||
(45 intermediate revisions by 3 users not shown) | |||
Line 23: | Line 23: | ||
This workshop is intended for: | This workshop is intended for: | ||
− | Musicians interested in exploring new possibilities in digital audio effects in a hands-on and technical way; Makers, engineers, computer scientists, or product designers interested in exploring artistic outlets for their talents and collaborating with musicians; and/or anyone looking to gain valuable skills in basic audio signal processing and human-computer interfaces, with a focus on invention. | + | Musicians interested in exploring new possibilities in digital audio effects in a hands-on and technical way; Makers, engineers, computer scientists, or product designers interested in exploring artistic outlets for their talents and collaborating with musicians; and/or anyone looking to gain valuable skills in basic audio signal processing and human-computer interfaces, with a focus on invention. Participants are encouraged (but by no means required) to bring their own laptop computers and/or musical instruments. |
− | + | ||
− | Participants are encouraged (but by no means required) to bring their own laptop computers and/or musical instruments. | + | |
This workshop was created by Edgar Berdahl and Esteban Maestre in 2011. This workshop uses very similar hardware to the [https://ccrma.stanford.edu/wiki/NMC_2011 New Music Controllers] workshop, but the focus is more on applications to stompbox design and audio signal processing. | This workshop was created by Edgar Berdahl and Esteban Maestre in 2011. This workshop uses very similar hardware to the [https://ccrma.stanford.edu/wiki/NMC_2011 New Music Controllers] workshop, but the focus is more on applications to stompbox design and audio signal processing. | ||
− | [ | + | How to [https://ccrma.stanford.edu/workshops/stompbox-design sign up] for the workshop! |
==COURSE SCHEDULE == | ==COURSE SCHEDULE == | ||
Line 40: | Line 38: | ||
|'''Date''' || '''Morning (9am-12noon)''' || '''Afternoon (1:00pm-5:00pm)''' | |'''Date''' || '''Morning (9am-12noon)''' || '''Afternoon (1:00pm-5:00pm)''' | ||
|- | |- | ||
− | |Monday || Introduction, Overview, Pd basics lecture (incl. one digital effect example), Kit How-To, Lab 0: | + | |Monday || Introduction, Overview, Pd basics lecture (incl. one digital effect example), Kit How-To, [https://ccrma.stanford.edu/wiki/Software_Lab_NMC Lab 0: Making Sound With Pd] || Review [https://ccrma.stanford.edu/wiki/Software_Lab_NMC Lab 0], FX Lecture, [https://ccrma.stanford.edu/wiki/Lab1_Making_FX_in_Pd Lab 1: Making FX In Pd] |
|- | |- | ||
− | |Tuesday || Review Lab 1, FX Lecture | + | |Tuesday || Review Lab 1, FX Lecture, [[Introduction to Electronics (condensed) | Introduction to Electronics]]--[[Sensors|Sensors1]] ||[https://ccrma.stanford.edu/wiki/Stompbox_Real_Sensors Lab 2: Controlling an Effect with Real Sensors] |
|- | |- | ||
− | |Wednesday || Lab 2 Review, [[Interfacing With The Rest Of The World]] (i.e. making cables, etc.) || | + | |Wednesday || Lab 2 Review, [[Interfacing With The Rest Of The World]] (i.e. making cables, etc.) || FX Lecture, [https://ccrma.stanford.edu/wiki/Stompbox_Rapid_Prototyping Optional guided laboratory time] or start on project |
|- | |- | ||
− | |Thursday || | + | |Thursday || FX Lecture, Refine project ideas, Work on project, Discuss enclosures || J. Abel Guest lecture, Special topics, Work on project |
|- | |- | ||
|Friday || Work on project || [[Project presentations]] 3-4:30PM | |Friday || Work on project || [[Project presentations]] 3-4:30PM | ||
|} | |} | ||
− | == | + | ==FX Basics LECTURES== |
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | '''MONDAY:''' | |
− | + | ||
− | + | Lectures: | |
− | + | ||
− | + | [http://ccrma.stanford.edu/~esteban/stompbox/StompboxDesign_FXBasics_1_Introduction.pdf Fx Basics 1: Introduction] | |
− | + | ||
− | + | [http://ccrma.stanford.edu/~esteban/stompbox/StompboxDesign_FXBasics_2_Dynamics.pdf Fx Basics 2: Dynamics Effects] | |
− | + | ||
− | + | Demo patches: | |
− | + | ||
− | + | http://ccrma.stanford.edu/~esteban/stompbox/00_stomp_dynamics_1.pd (Boost) | |
− | + | ||
− | + | http://ccrma.stanford.edu/~esteban/stompbox/01_stomp_dynamics_2.pd (Tremolo) | |
− | + | ||
− | + | http://ccrma.stanford.edu/~esteban/stompbox/02_stomp_dynamics_3.pd (Noise gate] | |
− | + | ||
− | + | http://ccrma.stanford.edu/~esteban/stompbox/03_stomp_dynamics_4.pd (Compressor) | |
− | + | ||
− | [http://ccrma.stanford.edu/ | + | Remember that the graphical displays (i.e. the '''[table]''' objects) will cause the BeagleBoard to go very slow. So it's good to remove them (together with the corresponding '''[tabwrite~]''' objects)! |
− | and | + | |
− | + | ||
+ | |||
+ | '''TUESDAY:''' | ||
+ | |||
+ | Lecture: | ||
+ | |||
+ | [http://ccrma.stanford.edu/~esteban/stompbox/StompboxDesign_FXBasics_3_Filtering.pdf Fx Basics 3: Filtering] | ||
+ | |||
+ | Demo patches: | ||
+ | |||
+ | http://ccrma.stanford.edu/~esteban/stompbox/04_stomp_filtering_1.pd (Biquad block example) | ||
+ | |||
+ | http://ccrma.stanford.edu/~esteban/stompbox/05_stomp_filtering_2.pd (Wah example) | ||
+ | |||
+ | Lab resources: | ||
+ | |||
+ | [http://en.flossmanuals.net/pure-data/ch072_introduction/ Categorized list of Pd Objects] | ||
+ | (on a single page [http://protman.com/content/list-puredata-objects-and-extended-objects here]) | ||
+ | |||
+ | http://ccrma.stanford.edu/~esteban/stompbox/solo_man.wav ('solo_man.wan' ugly sound example) | ||
+ | |||
+ | |||
+ | |||
+ | '''WEDNESDAY:''' | ||
+ | |||
+ | Lecture: | ||
+ | |||
+ | [http://ccrma.stanford.edu/~esteban/stompbox/StompboxDesign_FXBasics_4_Distortion.pdf Fx Basics 4: Distortion] | ||
+ | |||
+ | Demo patch: | ||
+ | |||
+ | http://ccrma.stanford.edu/~esteban/stompbox/06_stomp_distortion.pd (Distortion / Fuzz) | ||
+ | |||
+ | |||
+ | |||
+ | '''THURSDAY:''' | ||
+ | |||
+ | Lecture: | ||
+ | |||
+ | [http://ccrma.stanford.edu/~esteban/stompbox/StompboxDesign_FXBasics_5_Time.pdf Fx Basics 5: Time Effects] | ||
+ | |||
+ | Demo patches for Delay and Flanger Effects: | ||
+ | |||
+ | http://ccrma.stanford.edu/~esteban/stompbox/07_stomp_time_1.pd (Simple delay) | ||
+ | |||
+ | http://ccrma.stanford.edu/~esteban/stompbox/08_stomp_time_2.pd (Simple tapped delay) | ||
+ | |||
+ | http://ccrma.stanford.edu/~esteban/stompbox/09_stomp_time_3.pd (Feedback Delay) | ||
+ | |||
+ | http://ccrma.stanford.edu/~esteban/stompbox/10_stomp_time_4.pd (Flanger) | ||
+ | |||
+ | |||
+ | [http://ccrma.stanford.edu/~carlsonc/DryGuitarTracks.zip More guitar tracks] courtesy of Jonathan Abel (Please do not distribute) | ||
+ | |||
+ | |||
+ | |||
+ | '''FRIDAY:''' | ||
==WORKSHOP PROJECT== | ==WORKSHOP PROJECT== | ||
− | One of the goals of this workshop is to help you get hands-on experience building a | + | One of the goals of this workshop is to help you get hands-on experience building a novel stompbox project of your choosing. You are encouraged to work with other workshop participants on the project, particularly those who might have skills that complement your own. Since the workshop is short, it is a good idea to start thinking of ideas during the first lectures and labs; during the second half of the workshop, you will primarily be working on getting a "demo-able" prototype ready for the project presentations on Friday afternoon. |
+ | |||
+ | |||
+ | |||
− | ==LECTURES== | + | ==RELATED LECTURES== |
*[[PID Introduction]] | *[[PID Introduction]] | ||
*[[Survey of Physical Interfaces for Music]] | *[[Survey of Physical Interfaces for Music]] | ||
Line 108: | Line 160: | ||
* [[PID Links]] | * [[PID Links]] | ||
* [http://puredata.info/downloads Pure Data (Pd) Extended] | * [http://puredata.info/downloads Pure Data (Pd) Extended] | ||
− | |||
* [http://beagleboard.org/ Beagle Board] | * [http://beagleboard.org/ Beagle Board] | ||
* [http://arduino.cc/en/Main/Software Arduino software] | * [http://arduino.cc/en/Main/Software Arduino software] | ||
* [http://firmata.org Firmata] | * [http://firmata.org Firmata] | ||
* [http://faust.grame.fr/ Faust] | * [http://faust.grame.fr/ Faust] | ||
+ | * [https://ccrma.stanford.edu/courses/320/ Course: Introduction to Digital Audio Signal Processing] | ||
* [https://ccrma.stanford.edu/courses/424/ Course: Signal Processing Effects for Digital Audio Effects] | * [https://ccrma.stanford.edu/courses/424/ Course: Signal Processing Effects for Digital Audio Effects] | ||
+ | |||
+ | * [http://ccrma.stanford.edu/~eberdahl/Satellite Satellite CCRMA] | ||
+ | [[Image:SatelliteCCRMALogoVSmall.jpg]] | ||
==FAQ== | ==FAQ== |
Latest revision as of 17:06, 21 July 2011
Stompbox Design Workshop
CCRMA Summer Workshop 2011
July 18-22
Instructors: Edgar Berdahl eberdahl@ccrma.stanford.edu and Esteban Maestre esteban@ccrma.Stanford.EDU
Contents
COURSE HISTORY AND DESCRIPTION
Description: Come design your own flavor of stompbox at Stanford Universityʼs Stompbox Design workshop. We will teach you a brand new platform for implementing stompboxes that not only enables you to create any sound effects from the past but also promotes the creation of new sound effects. Our resources for new media design are also at your fingertips if you would like to re-design the concept of a guitar stompbox: for example, put a Wiimote on your guitar and use it to change the sound of the effect, or use some LEDs to simulate the glow of vacuum tubes or fire, or even incorporate a micro-sized Pico projector into your stompbox! The expanded world of digital audio effects is at your fingertips because the workshop incorporates:
- Most basic theory of signal processing
- Description of operation of prior stompboxes and digital audio effects
- Laboratory exercise teaching you how to program our own open-source software and hardware platform involving:
- connecting to your stompbox over an Ethernet connection from your laptop
- creating new digital audio effects by connecting together basic building blocks in the graphical
- programming language Pure Data
- building simple button and knob interfaces to Pure Data
- How to program digital audio effects in C++ and/or Faust
- Introduction to human-computer interface devices for projects
Further discussion of open-source hardware and software platforms including Satellite CCRMA. Finally, we will round out the workshop with a roundtable presentation of the stompboxes you create followed by an optional evening jam session for fun.
This workshop is intended for: Musicians interested in exploring new possibilities in digital audio effects in a hands-on and technical way; Makers, engineers, computer scientists, or product designers interested in exploring artistic outlets for their talents and collaborating with musicians; and/or anyone looking to gain valuable skills in basic audio signal processing and human-computer interfaces, with a focus on invention. Participants are encouraged (but by no means required) to bring their own laptop computers and/or musical instruments.
This workshop was created by Edgar Berdahl and Esteban Maestre in 2011. This workshop uses very similar hardware to the New Music Controllers workshop, but the focus is more on applications to stompbox design and audio signal processing.
How to sign up for the workshop!
COURSE SCHEDULE
We will meet from 9am-5:00pm daily, with mini-breaks at 10:30 and 3:00, and a lunch break from 12-1.
Date | Morning (9am-12noon) | Afternoon (1:00pm-5:00pm) |
Monday | Introduction, Overview, Pd basics lecture (incl. one digital effect example), Kit How-To, Lab 0: Making Sound With Pd | Review Lab 0, FX Lecture, Lab 1: Making FX In Pd |
Tuesday | Review Lab 1, FX Lecture, Introduction to Electronics--Sensors1 | Lab 2: Controlling an Effect with Real Sensors |
Wednesday | Lab 2 Review, Interfacing With The Rest Of The World (i.e. making cables, etc.) | FX Lecture, Optional guided laboratory time or start on project |
Thursday | FX Lecture, Refine project ideas, Work on project, Discuss enclosures | J. Abel Guest lecture, Special topics, Work on project |
Friday | Work on project | Project presentations 3-4:30PM |
FX Basics LECTURES
MONDAY:
Lectures:
Demo patches:
http://ccrma.stanford.edu/~esteban/stompbox/00_stomp_dynamics_1.pd (Boost)
http://ccrma.stanford.edu/~esteban/stompbox/01_stomp_dynamics_2.pd (Tremolo)
http://ccrma.stanford.edu/~esteban/stompbox/02_stomp_dynamics_3.pd (Noise gate]
http://ccrma.stanford.edu/~esteban/stompbox/03_stomp_dynamics_4.pd (Compressor)
Remember that the graphical displays (i.e. the [table] objects) will cause the BeagleBoard to go very slow. So it's good to remove them (together with the corresponding [tabwrite~] objects)!
TUESDAY:
Lecture:
Demo patches:
http://ccrma.stanford.edu/~esteban/stompbox/04_stomp_filtering_1.pd (Biquad block example)
http://ccrma.stanford.edu/~esteban/stompbox/05_stomp_filtering_2.pd (Wah example)
Lab resources:
Categorized list of Pd Objects (on a single page here)
http://ccrma.stanford.edu/~esteban/stompbox/solo_man.wav ('solo_man.wan' ugly sound example)
WEDNESDAY:
Lecture:
Demo patch:
http://ccrma.stanford.edu/~esteban/stompbox/06_stomp_distortion.pd (Distortion / Fuzz)
THURSDAY:
Lecture:
Demo patches for Delay and Flanger Effects:
http://ccrma.stanford.edu/~esteban/stompbox/07_stomp_time_1.pd (Simple delay)
http://ccrma.stanford.edu/~esteban/stompbox/08_stomp_time_2.pd (Simple tapped delay)
http://ccrma.stanford.edu/~esteban/stompbox/09_stomp_time_3.pd (Feedback Delay)
http://ccrma.stanford.edu/~esteban/stompbox/10_stomp_time_4.pd (Flanger)
More guitar tracks courtesy of Jonathan Abel (Please do not distribute)
FRIDAY:
WORKSHOP PROJECT
One of the goals of this workshop is to help you get hands-on experience building a novel stompbox project of your choosing. You are encouraged to work with other workshop participants on the project, particularly those who might have skills that complement your own. Since the workshop is short, it is a good idea to start thinking of ideas during the first lectures and labs; during the second half of the workshop, you will primarily be working on getting a "demo-able" prototype ready for the project presentations on Friday afternoon.
RELATED LECTURES
- PID Introduction
- Survey of Physical Interfaces for Music
- Introduction to Electronics
- Sensors
- Microcontroller Architecture
- Interaction Design Framework
LABS
(see links in course schedule)
SOFTWARE
- The lectures will primarily be in Pure Data (Pd) Extended for sound synthesis. We will introduce some other alternatives such as writing plug-ins directly in C/C++ or with Faust.
- The micro SDHC card for your kit will be initialized with Satellite CCRMA so that you can get up and running instantly.
- The Beagle Board platform enables linux to be run on a high-power 720MHz CPU. It can execute floating point operations natively, which is essential for rapid prototyping of audio algorithms.
- The Arduino software could be used to change the Firmata-based firmware that gets data from the Arduino Nano board into Pd.
REFERENCES
- MaxLab
- PID Links
- Pure Data (Pd) Extended
- Beagle Board
- Arduino software
- Firmata
- Faust
- Course: Introduction to Digital Audio Signal Processing
- Course: Signal Processing Effects for Digital Audio Effects
FAQ
Project questions
- Can I do ____ for my project?
You can do whatever you would like for your project. Keep in mind that you really only have a few days to work on it, so you might want to focus on one crucial aspect of a larger project that you'd like to have working.
- Can I incorporate my own hardware and software into my project?
Yes, you can, although we have limited time and ability to support hardware and software other than what is introduced in the labs.
- Can I keep the tools we use during the workshop?
If you buy the kit!