a few patches from the spectral processing lectures...
- simple FFT filtering
- channel vocoder
- convolution
- convolution reverb
- phase vocoder time stretching
i'm sure there are sound files needed by these examples, but you can find your own at this point
Control click to download....
music 171 - exercise 5 - 3 points
1 - create an FM generator with 3 carriers and 1 modulator, have the outputs of the carriers mix together for the output
2 - tune the carriers 1 octave apart, make the index and ratio of FM controllable by number boxes
3 - control the frequency and amplitude with MIDI. use “poly 1 1” for monophonic sound
email to grace by 2-28 - email a copy to tom
Week 6 - Thursday (FM)
- Chowning voice synthesis
- 2 modulator FM
- Schottstaedt string synthesis
- non-sinusoidal FM
- circular FM chaos
- a little polyphonic FM synth
Week 7 - Tuesday (Waveshaping & AM)
- AM/ring modulation
- frequency shifting (AM with sideband suppression
- wave shaping
Week 7 - Thursday (Delay)
- delay with feedback and modulation
- stereo delay
Abstractions and sounds needed by the above patches
- ADSR abstraction
- MIDI input abstraction
- delay abstraction
- soft clipping abstraction
- LFO abstraction
- Introduction.aif
- Gondoliera.aif
- Braxton.aiff
Control click to download....
1) 3-5 minute piece
- at least 10 tracks total
- you can use both electronic and acoustic instruments
2) give a good sense of space and depth. pay attention to left-right and front-back dimensions
3) use effects to both highlight and polish different tracks
- use at least one delay-type effect (chorus, flange, etc.)
- use compression
- use gating
- use convolution reverb with your own impulse response
- use other reverb
- double or triple track at least one instrument/voice
4) use automation
- on volumes and pans
- on effect settings
- give your piece separate sections with mix changes between the sections
5) master your material, applying compression, eq and reverb as necessary
6) present your piece in finals week
a) play the piece, explaining what you did and answering questions.
b) hand in an audio cd-r with the final recording.
c) also hand in documentation as follows
- list of effects used for mixing and why
- list of effects used for mastering and why
groups for final project
1 - tascon, echols, carrillo
2 - talavera, martinez
3 - tsai, yamada, sanchez
4 - spitsbergen, hornbuckle, drashner
5 - stone, szyka, zaragoza
6 - kim, lee, knight
7 - warburton, lum, ohren
One patch from week 4 and 5
- the two oscillator synth made polyphonic
From week 6 - Tuesday
- very basic FM
- FM using index and ratio
- Chowning's drum, bell and brass
Abstractions needed by the above patches
- ADSR abstraction
- MIDI input abstraction
Control click to download....
Here are the patches from the week 5 filter classes
- filter ringing
- 2 oscillator synth with filter
- new ADSR abstraction used in above patch
- substitute for a MIDI keyboard
- vowel formant filtering
- a simple attempt at brass synthesis
- new ADSR abstraction used in above patch
- Karplus Strong synthesis algorithm (averaging noise)
Control click to download....
music 171 - exercise 4 - 3 points
download my 2 oscillator synth patch from week 5
1 - add vibrato to both oscillators
2 - have the level of vibrato controlled by midi controller 1
3 - change the parameters to make a new sound; create a message box which sets all of the parameters to this sound. name the sound.
email to jaime by 2-14
Here are the patches from the week 4 sampling classes
- 4 loopers in subpatches
sounds to support looper
- bumblebee.aiff
- flies.aiff
- nightinsects.aiff
- parkinsects.aiff
- kamakurainsects.aiff
- instrument looping patch
sound to support above patch
- BbClarB3.aiff
- multisegment sampling
sounds to support above patch
- guit_a.wav
- bass_a.wav
- very basic MIDI
- mono synth with MIDI and pitchbend
- ADSR abstraction used in above patch
Control click to download....
mus 171 - assignment 2
1 - make a 4 voice “drum machine”
2 - use 4 tables or arrays to hold percussive sounds
3 - play the sounds with 4 separate vline~/pack/tabread4~ players
4 - develop a method to loop a pattern of 16 steps (all voices together), with the pattern held either in an array or a row of toggle switches
5 - give one or all of the voices a controllable resonant lowpass filter
6 - add a switch to each voice to play the sound backwards
7 - use metro to speed up and slow down, add start and stop buttons
8 - make it look good!
hand in assignment via email week 7 thursday (2-21)
to tre at music dot ucsd dot edu
music 171 - exercise 3 - 3 points
1 - sample into a table (not an array) using adc~, give the patch the ability to save the sound into a sound file, and read from another sound file
2 - use vline~ pack and tabread~ to play this table
3 - make 3 buttons, one plays normally, one plays half speed, one plays backwards
email to grace leslie by 2-7
Here are the patches from the week 3 sampling classes
- envelope additive synthesis
- hammond additive 1
- hammond additive 2
- adsr envelope
- basic sample looper
- sample recording
- looping with chorusing
Control click to download....
Here are the patches from the week 2 oscillator classes
- oscillator 1
- mixing
- panning
- crossfading
- changing the oscillator table size
- filling the oscillator table
- soundfile for above patch
- step sequence drum machine
- drum machine and bassline
Control click to download....
If your browser appends ".txt" to the end of the file, remove it so the file ends with ".pd"
mus 171 - assignment 1 - 15 points
1 - make 2 oscillators each with its own table.
2 - put different waveforms in each table
3 - mix the oscillators together with a cross mix fader.
4 - use line~ or vline~ to sweep from middle C up one octave.
5 - have overall output amplitude controlled by an adsr or table envelope.
6 - control the length of the note (the volume envelope and frequency sweep) with a number box.
7 - trigger the volume envelope and frequency sweep from a bang. make multiple sweeps with metro.
8 - 1 point for clean design
hand in assignment via email week 4 thursday (1-31)
to tre at music.ucsd.edu
music 171 - exercise 2 - 3 points
1 - use phasor~ tableread~ *~ mtof~ and an array to create an oscillator
2 - use line~ , trigger bang and multiple messages to create an amplitude envelope for this oscillator
3 - use a message to fill the array in #1 with a sine wave
email to jaime oliver by next thursday 1-24
mus 171 - basic computer music techniques - winter 2008
mandeville b206 - tuesday, thursday 2:00 - 3:20
instructor - tom erbe - mandeville 124
teaching assistants - grace leslie - jaime oliver
weeks
01 - introduction to max, msp, pd.
reading: dodge (chapter 1-3), as many max or pd tutorials as you can stand
02 - oscillators 1 - amplitude, phase, frequency, waveshape. phasor, table, envelopes,
reading: dodge page 72 - 86
assignment 1 given
03 - oscillators 2 - sampling, noise, amplitude modulation, additive synthesis, sample assembly
techniques (brassage, granular)
reading: dodge page 87 - 114
04 - control & midi -
assignment 1 due, assignment 2 given
05 - modulation 1: frequency modulation, varispeed. reading dodge page 115 - 138
06 - modulation 2: waveshaping, pulse streams, analysis by am, other topics? reading: dodge page
139 - 168
07 - filters 1: general filters, delay. reading dodge page 169 - 198
assignment 2 due, final project assigned.
08 - filters 2: iir and fir . lpc. reading dodge page 199 - 243
09 - putting it together - modular design - studio effect replication
10 - putting it together - presets - synth replication
11 - final project due
software
either pd, or max/msp
download pd from http://crca.ucsd.edu/~msp/software.html
books
required
1) charles dodge - computer music (2nd edition)
very optional
2) curtis roads - computer music tutorial
class requirements
10% - show up to class - participate - go to TA hours when needed
25% - weekly exercises
15% - each assignment
25% - final project
mus 174b - audio studio techniques - winter 2008
mandeville b108 - tuesday, thursday 11:00 to 12:20
instructor - tom erbe - mandeville 124
teaching assistant - joachim gossmann
topics
01 - general mix principles (assignment 1)
02 - filtering. eq
03 - signal routing for effects
04 - compression, expansion, gate, limiting (assignment 1 present) (assignment 2)
05 - echo, delay, chorus, phase, flange
06 - reverb, spatialization, varispeed/doppler
07 - distortion, emulation, spectral effects (assignment 2 present) (final project)
08 - mastering techniques
09 - more midi control, tempo templates, synchronized effects, plugins
10 - using computer music software for effects processor - final present
books
required
1) bartlett - practical recording techniques
2) tape op magazine www.tapeop.com
optional
3) bob katz - mastering audio
class requirements
10% attendance, participation
30% each assignment
30% final project
- IID with gain
- IID with filtering
- IID & ITD
- IID & ITD and "pinnae" filter
soundfiles for the above examples
- Introduction
- Braxton
- noise gate w/threshold
- fft bin reordering
- bad pitch shifting
- finding exact frequency
- phase vocoder without phase locking
soundfiles for the above examples
- Introduction
- Braxton
- fft analysis
- fft amplitude & frequency detection
- fft analysis & resynthesis
- fft filtering
- windowed convolution
- overlap add convolution
- convolution synthesis
- spectral gate
soundfiles for the above examples
- Introduction
- Braxton
- Gondoliera
- oboe scale
- uke 1
- uke 2
- uke 3
FINAL PROJECT MUSIC 172
DUE THURSDAY JUNE 7TH
Create 2 polyphonic (at least 4 voices) MIDI controlled instruments with front panels and programming hidden in subpatches, output amplitude controls, front panel parameter controls.
1 - Have 4 presets for each instrument
2 - Use two techniques in each instrument
3 - Use techniques (one each) from the four areas covered this quarter:
a - sample playback
b - filtering
c - granular synthesis
d - spectral techniques
4 - Use one or more envelope generators in each instrument
5 - These 2 instruments should be playable together (no symbol name conflicts)
6 - Extra credit: either develop a piece, attach a loop sequencer (that can record and play), or add some spatial audio processing.
7 - Present in class on Thursday June 7th or Thurs, June 14th 3-6PM
- soundfile buffering - double buffer playback
- using block~ to upsample
- your basic ring mod
- using ring mod for analysis
- using cos and sin ring mod to find phase
some of these examples need soundfiles from previous weeks
Here are two of the examples from today's class.
- Brassage (granulation of soundfiles). 3 techniques in this patch - pitchshifting, time stretching and random playback
- Granular delay
- The soundfile used in these examples
Here is assignment #3
----
ASSIGNMENT #3 MUSIC 172
DUE THURSDAY MAY 10
1 - Create two or more instruments that use granular techniques
2, 3 - Use two of the following techniques
- Granular synthesis - with any type of synthesis in the grain
- Brassage - granular reordering of a sound file
- Granular delay
- Pitch and or time stretching
4 - Modulate the parameters during a “note” with an envelope or
5 - Layer several “grain streams” from the same instrument with different parameters.
6 - Extra Credit - make this patch a 3-4 minute piece
Each item will be worth 3 points, except for 6 which is worth 1 point. Each item will be graded as follows: 0 - didn’t try, 1 - tried but didn’t succeed, 2 - success, 3 - amazing.
---
And here is the first granular synthesis example w5a-basic_granular.pd
Here are the examples from week 3 and 4.
1 - Simple VCF filter patch
2 - Using parallel and cascade BP filters for vowel formants
3 - Subtractive synthesis with the Karplus-Strong algorithm. A combination of a comb and simple averaging filter
4 - Cheezy subtractive synthesis - typical brass patch with triangle waveform and bell resonance.
4a - ADSR envelope for the preceding patch
5 - Spectrum analysis of harmonics using a BP filter & and an attempt at resynthesis using resonant filters driven by noise bursts
5a - Soundfile used in above
6 - Chart showing relation of Q and bandwidth
7 - Robert Bristow-Johnson's well known Audio EQ Cookbook
8 - The channel vocoder. Cross synthesis using multiple BP filters
8a - Soundfile used in above
9 - Jumping ahead - using FIR/convolution filtering
ASSIGNMENT #2 MUSIC 172 DUE THURSDAY APRIL 26
1 - Create two or more instruments that use filters
2 & 3 - Use two of the following techniques
- A static filterbank to emulate the formants of an instrument or voice, with cascade and parallel sections
- Narrow weighted filters to emulate strong harmonic resonances
- Convolution filtering or vocoding for detailed resonance, cross synthesis or enviromental (reverb, room)
4 - Modulate the filters for expressive playing within a note (i.e. trumpet mute simulation, wah wah pedal).
5 - Change the filter parameters to change the instrument voicing and/or pitch.
6 - Extra Credit - make this patch a 3-4 minute piece
Each item will be worth 3 points, except for 6 which is worth 1 point. Each item will be graded as follows: 0 - didn’t try, 1 - tried but didn’t succeed, 2 - success, 3 - amazing.
You may use any source to drive the filters. Wavetable oscillator, sampler, FM synthesis, noise, etc.
Here are the examples for week 1 - forgive their unpolished look....
tues - basic sampling
thurs - measure the slider speed
thurs - slider playback
thurs - patch to demo delay and chorus
thurs - reverse playback
thurs - looping with metro and vline
soundfiles for examples
anvil.wav
BbClarB3.aiff
puffandtoot.wav
control-click (mac) right-click (pc) to download
For those of you who missed the handouts
Assignment 2
Assignment 3
Final Project
only an xcode example this week, the windows fft would have to use fftw, and i haven't worked that out yet.
fft fir filter in xcode
pdf of the final project assignment
Here are the examples from week 6. A delay line with feedback, and a 4-pole moog filter from the musicdsp archive.
delay xcode
delay windows
filter xcode
filter windows
Here is the rms project, only the xcode project this time - though the .c file could easily be added to a VC7 project
rms-xcode.zip
i have updated seconds and sunangle to work with the current xcode, visual c and pd 0.40-1
the os x projects create fat externals
seconds-xcode.zip
seconds-vc.zip
sunangle-xcode.zip
sunangle-vc.zip
These will compile under VC7 (.net) and Xcode
obj1-xcode.zip - xcode project
obj1-vc.zip - visual .net project
A little late - but here it is, the oscillator and overtone examples from week 5
oscil xcode
oscil windows
overtone xcode
overtone windows