View Full Document

Introduction to Processing Digital Sounds



View the full content.
View Full Document
View Full Document

22 views

Unformatted text preview:

Introduction to Processing Digital Sounds part 1 Barb Ericson Georgia Institute of Technology Oct 2009 Intro Sound part1 Learning Goals Learn about sounds How do we hear How do we digitize sound Why do we digitize sound How is digitized sound represented How to play a sound in Java How to create Sound objects How to play them How to explore them Intro Sound part1 How does Hearing Work The outer ear catches sounds The eardrum vibrates The inner ear translates the vibrations to nerve impulses for the brain to interpret Intro Sound part1 Acoustics the physics of sound Sounds are waves of air pressure Sound comes in cycles The frequency of a wave is the number of cycles per second cps or Hertz Complex sounds have more than one frequency in them The amplitude is the maximum height of the wave Intro Sound part1 Volume and Pitch Our perception of volume is related logarithmically to changes in amplitude If the amplitude doubles it s about a 3 decibel dB change A decibel is a ratio between two intensities 10 log10 I1 I2 As an absolute measure it s in comparison to threshold of audibility 0 dB can t be heard Normal speech is 60 dB A shout is about 80 dB Our perception of pitch is related logarithmically to changes in frequency Higher frequencies are perceived as higher pitches We can hear between 5 Hz and 20 000 Hz 20 kHz A above middle C is 440 Hz Intro Sound part1 Try It Attach a microphone to your computer Open the Windows MediaTools folder Drag the mediatools v5 sa image file and drop it on SqueakVM exe This will start Squeak with the media tools loaded Click on the Sound Tools window It will expand Click on Record Viewer and Record And do high and low sounds in the microphone Notice that high sounds have more cycles per second Click on Quit to exit Squeak Intro Sound part1 Sound Tools in Squeak Intro Sound part1 Digitizing Sound In calculus you learn to estimate a curve by creating rectangles We can do the same to estimate the sound curve Analog to digital conversion ADC will give us the amplitude at an instant as a number a sample How many samples do we need Intro Sound part1 Nyquist Theorem We need twice as many samples as the maximum frequency in order to represent and recreate later the original sound The number of samples recorded per second is the sampling rate If we capture 8000 samples per second the highest frequency we can capture is 4000 Hz That s how phones work If we capture more than 44 000 samples per second we capture everything that we can hear max 22 000 Hz CD quality is 44 100 samples per second Intro Sound part1 Try It Call a friend on a phone and play some music over the phone How does it sound Phones only transmit 8 000 samples per second The highest frequency you can transmit by phone is 4000 Hz This is fine for voice but what does it do to music Intro Sound part1 How does Recorded Sound Work Phonograph recording s capture sound continuously as an analog signal CDs and DVDs sample sounds and record numbers that represent the sound at the time of the sample 44 100 samples per second Intro Sound part1 Why Digitize Sound High fidelity Reproduced sound is very similar to the original Perfect reproduction Sounds the same every time Easy to transmit Download as data Easier to manipulate on a computer Even though there are billions of bits Intro Sound part1 Playing a Sound We can create a Sound object just as we created a Picture object Get a file name and save a reference to it String fileName FileChooser pickAFile Pick a file that ends in wav Create the sound object by asking the class to create a new Sound object and initialize it by reading data from the given file name Sound sound1 new Sound fileName Play the Sound sound1 play Intro Sound part1 Play Sound Exercise Try creating a Sound object and playing it You can do this all at once Shown on top Or you can name each part Shown on bottom How would you play the same sound twice Intro Sound part1 Digitizing Sound in the Computer Each sample is stored as a number two bytes What s the range of available combinations 16 bits 216 65 536 But we want both positive and negative values To indicate compressions and rarefactions What if we use one bit to indicate positive 0 or negative 1 That leaves us with 15 bits 15 bits 215 32 768 One of those combinations will stand for zero We ll use a positive one so that s one less pattern for positives so the range is from 32 768 to 32 767 Intro Sound part1 Sound Basics new Sound fileName Will create a new Sound object from the data in the file with the passed file name soundObj play Will start the sound playing soundObj explore Will open a sound explorer on the object soundObj blockingPlay Will play the sound and wait to return until the sound is finished soundObj write String fileName Will write out the sound to the specified file Intro Sound part1 Play and Explore a Sound Sound Explorer Type here Intro Sound part1 The Sound Explorer Not all of the sound is shown when you explore a sound Skips values to fit in the window You can zoom in To see all sample values You can zoom out To fit the sound in the window again Intro Sound part1 Getting the Sound Sample Values A Sound has many values in it Numbers that represent the sound at that time in the sample You can get an array of SoundSample objects SoundSample sampleArray sound1 getSamples Intro Sound part1 Explore the Sound Sample Values Zoom in to see all the sound values Click here to pick an index See the value Type in an index Click here to go to the next index Intro Sound part1 Arrays Store many items of the same type in memory in contiguous space You can use an index value to access an item stored in the array 0 1 2 Intro Sound part1 Print the Sound Sample Value You can get a SoundSample object from the array at an index SoundSample sample sampleArray 0 And then get the value from that System out println sample getValue What are the first 5 values of the Sound created from the file croak wav Intro Sound part1 Summary Sounds are made by changes in air pressure Compression followed by refraction The pitch is based on the frequency Distance between cycles The volume is based on the amplitude height of the wave We can create Sound objects play them and explore them A sound sample is a value from 32 768 to 32 767 We need to capture 2x the max frequency 44 000 samples per second on a CD for a max frequency of 22 000 Sounds values are stored in an array Intro Sound part1


Access the best Study Guides, Lecture Notes and Practice Exams

Loading Unlocking...
Login

Join to view Introduction to Processing Digital Sounds and access 3M+ class-specific study document.

or
We will never post anything without your permission.
Don't have an account?
Sign Up

Join to view Introduction to Processing Digital Sounds and access 3M+ class-specific study document.

or

By creating an account you agree to our Privacy Policy and Terms Of Use

Already a member?