Audio

advertisement
COMPUTER AUDIO
CGDD 4003
What is Sound?


Compressions of air or other media (such as
water or metal) from something vibrating
Sounds are made up of high frequency and low
frequency sounds
Frequency




Don’t confuse pitch (frequency) with volume!
Volume is measured in decibels (dB)
Frequency in Hertz (Hz) = cycles per second
Humans only hear from 20Hz to 20KHz
Strange Fact! Speed of sound (Air: 340m/s; Water:1,230 m/s; Gold: 3,240m/s):
Spatial Sound




1 Channel – “mono”. Can be split to several
speakers; still no direction
2 Channels – “stereo”. Fades from left to right. Can
determine direction
5.1 Audio – Common for home theaters
3D Sound? – Video games (PC). Still has time to
develop
The Human Side
(20Hz-20KHz)
The Equal Loudness Contour
Killa Hurts
Ouch!
A Note about decibels



A decibel is 1/10th of a bel
Abbreviated dB
This is the perceived loudness, which increases
linearly as power increases exponentially
 Something
sounds twice as loud?
 10·log10(2) = 3.01dB

In gaming, volume usually ranges 0.0f-1.0f
Human Perception
(InterAural Time Difference)


Sound hits both ears
Difference in time
Hasn’t
gotten to
left yet
Hits
Right
Ear
First
How Computers Perceive Sound


Digitization (DAC and ADC)
Computers “listen” to the amplitude a certain number of
times per second (sample rate)




44K is CD
22K is good
8K is lame
Computers have to approximate what they heard and
assign it a number


4 bits = 16 level to approximate to
16 bits = 2 million levels to approximate to
Original Sound
Amplitude (in dB)
Frequency
Low Sampling Rate
TIME
Low Sampling Rate
What the computer hears
TIME
High Sampling Rate
TIME
High Sampling Rate
TIME
2 bits per sample
4 Approximations
TIME
StairStep Effect
Called “quantization errors”
TIME
3 bits per sample
8 Approximations
TIME
Less StairStep
TIME
Signal to Noise Ratio (SNR)

Represents the quanitization error
 8-bits
= 128 discrete values (upper-half only)
 Sample is rounded up or down
 SNR is 256:1
 256:1 translates to 48dB (difference in average noise
to max signal)
 16-bit = 32K discrete values (upper-half)
 SNR = 65,536:1, or 96dB
In General



Sampling rate affects range of frequencies you can
capture (Nyquist)
Bits per sample affects noise level as well as volume
range
What about recording:
 Rock?
 Mozart
(or anything on NPR for that matter)?
 Voice/dialog?
Capturing Sounds

Usually done with:





Computer has sound card



a microphone (such as voice)
Line in
CD
Hollywood Edge®
Input types (RCA, MIDI, mini, ¼”, XLR)
Card has quality (plays 16-bit sound)
Need some kind of software


SoundForge/Audacity
Windows SoundRecorder (gag)
Typical Pipeline
Permanent Storage
Decoding (from mp3, ogg, etc)
Individual Channel
Memory Buffer
Sound Channel Processing (2D/3D effects)
Hardware mixing and DAC
Sample Playback

Playback
 Loaded
entirely into memory (called “sample” as well)
 Streamed (pre-buffer data using a circular buffer)

Channel properties
 Pan
– left/right
 Pitch – frequency
 Volume
Compressed Audio



Requires a codec (compress/decompress)
Lossless (e.g. .zip files)
Lossy

Bit-reduction (ADPCM, reduces bps from 16 to 4)
Simple
 Used on Sony PSP, Wii and Nintendo DS


Physcho-acoustics (.mp3, .ogg, .wma)
Discard sound we don’t normally hear anyway
 Hard to implement
 CPU intensive
 PS3, Xbox 360, PCs

Note: mp3 format requires licensing fees to Franhofer-Thompson!
ADSR Envelopes
Used for defining the volume of a sound
Volume

Sustain
Time
3D Sound

Don’t have 5.1?
Panning is one option
 Psycho-acoustic options
 Head-Relative Transfer Function (HRTF)
 Tweak the frequencies to match your ears




Sounds have position and velocity
There is a listener component (like a camera)
Relationship between the two
Attenuation (with distance)
 Occlusion (low-pass filter)
 Doppler (relative velocities)

3D Sound

Environmental effects
 Reverb
(depends on materials in room)
 Echo (depends on size of room)
 Occlusion (a wall blocking part of the sound)
 Obstruction (no direct path to the listener

Competing reverb technologies
 I3DL2
(Interactive 3D Audio Rendering Level 2)
 EAX (Creative Labs)
 Almost identical
MIDI
(Musical Instrument Digital Interface)




MIDI – a method for representing sounds
electronically
Became popular in the 80’s
Send 16 different channels (tracks) at one time
Have a total of 128 possible instruments
The Keyboard




The MIDI Keyboard
No audible sounds
Generates a series of
1’s a 0’s (on/off)
Signals represent
 Note,
loudness
 Length, type of instrument…

Signals come out of the keyboard and usually go
into a sequencer
The Sequencer





Can be a PC
Responsible for recording
individual tracks of music
Responsible for playback
Receives input from
keyboard
Sends output to synthesizer
The Synthesizer


Receives 1’s and 0’s from
the sequencer
Interprets the 1’s and 0’s
to produce audible sounds
 Piano
 Drums…
 Saxophone…

Sounds are sent to speakers
Speakers

Like you haven’t
seen these before…
MIDI
01101101000110
0
1
0
MIDI vs Digital Recording

MIDI:
 Smaller
file size (like 10-20K)
 Change keys/tempo/looping on the fly!
 Song sounds different on every sound card
 No singing allowed!
 Also a DLS format (DownLoadable Sound)

Digital Recording:
 Larger
file size (like 5M)
 Sound is close approximation to real thing
Sampling

There are two main approaches to synthesis:
 Sampling
 FM

Synthesis
Sampling
A
sample is a recording of actual instrument/sound
 Samples are taken at certain intervals
 Samples are then shifted up or down depending on the
note
Sampling
FM Synthesis

Basic waves:
 Sine
 Square
 Saw
 Triangle
 Noise
FM Synthesis


Start with basic waveform, and have one wave
modulate the other
Here’s volume modulation
 440
sine wave, control 2Hz:
 440 sine wave, control 880Hz:
 440 sine wave, control 3KHz:
Interactive Music


Music adapts based on current state of game
Music broken into chunks
 Called
segments (or cues)
 Can be played back to back
 Can be smoothly cross-faded


Segments are combined into themes
fmod’s Sound Designer can do this
Themes in fmod
Sound Variations


Sounds can be triggered by events
There’s no reason to play the same sound the same
way
 Pick
a random sample
 Change pitch
 Change attenuation
Other technology

Lip-synch
 Use
the amplitude of the wave to control mouth
 Analyze phonemes of sample (language neutral)
Common Audio Technology




XAudio (free) – cross-platform
OpenAL (free) – cross-platform
XACT (free) – Xbox/Windows
fmod (commercial) – cross-platform
Download