SlideShare a Scribd company logo
1 of 49
Download to read offline
Dynamic Audio
For Apps and Games
360 iDev tackmobile.com
About Me
• @thillerson, +thillerson (if you’re into that)
• Developer at Tack Mobile (tackmobile.com)
• iOS, Android, and Mobile Web
• Rails, Node, maybe Elixir (one day)
360 iDev tackmobile.com
Rawk Star
About Me
360 iDev tackmobile.com
About Me
• Bass
• Electronic Music
• Some day I hope to
play this thing
--------->
360 iDev tackmobile.com
Sound Design Work: Start
• Alarm App
• Alarm Sounds
• App Store: “Start by Tack”
360 iDev tackmobile.com
Sound Design Work: Adrift
• Puzzle Game - “Adrift by Tack” in App Store
• Background Music
• Sound Effects
360 iDev tackmobile.com
Programming Sound
• In Beta Soon*
(*this week)
• http://pragprog.com/
• What we’re talking
about today...
• ... and much more
360 iDev tackmobile.com
What We’re Going To Do Today
• Answer: What Is Sound Design?
• Discuss UX Principles of Sound Design
• Introduce Pure Data
• Introduce libpd
• Tour Two iOS Apps Embedding Pd
360 iDev tackmobile.com
When We Are Done, You Will
• Understand Sound Design
• Understand Procedural Audio
• Know what Pd is, and how libpd makes it
awesome
• Be excited about Dynamic Audio in your apps
and games
360 iDev tackmobile.com
What is Sound Design?
360 iDev tackmobile.com
A Sound Designer
Ben Burtt
360 iDev tackmobile.com
A Sound Designer...
• Conceptualizes
• Captures or Designs
• Records
• Engineers
• Produces
• ... the sound for
an experience
360 iDev tackmobile.com
Sound Designer Skills
• Understand Sound
• Intuitive vs. Theoretical
• Music vs. Sound
• Audio Engineering
360 iDev tackmobile.com
Sound Design in Mobile Apps
• Developers/Designers wear lots of hats
• Control
• Efficiency
• Asset size
360 iDev tackmobile.com
Sound Design Principles
360 iDev tackmobile.com
A Sound Designer’s Goals
• Audible Feedback
• Fulfill Expectations
• Immersion
• Emotional Response
360 iDev tackmobile.com
Sound Design and Good UX
• Your app doesn’t need sound
• Expect to be turned off
• Don’t make me listen to you
• Listen on lots of devices/environments
• Engineer for small speakers
• Make your sound mean something!
360 iDev tackmobile.com
Always
• Test with phone calls
• Test while playing music
• Have fallbacks - e.g. No music, just effects
• Provide control to the user
360 iDev tackmobile.com
A Good Example: Clear
• Realmac Software
• Josh Mobley
• Meaningful Sound
• demo
360 iDev tackmobile.com
Sound
360 iDev tackmobile.com
Longitudinal Waves
360 iDev tackmobile.com
Of Pressure
360 iDev tackmobile.com
Through A Medium
360 iDev tackmobile.com
Transverse Wave
Longitudinal Wave
360 iDev tackmobile.com
• Longitudinal Waves
• Of Pressure
• Through a Medium
Sound
360 iDev tackmobile.com
Properties of Waves
• A - Wavelength (Distance), Period (Time)
• B - Amplitude
• C - Frequency - 1/Period (measured in Hertz)
A
B
B
C 1 2 3
360 iDev tackmobile.com
Fourier Series
• Based on his work ------->
• Periodic signals composed
of simple oscillating
functions
• Sine/Cosine waves are
fundamental
360 iDev tackmobile.com
Oscillators
• Something that moves according to a periodic
function
• A physical body
• An electronic device
360 iDev tackmobile.com
Basic Electronic Sound
oscillator
voltage
magnet
pressure
waves
speaker
360 iDev tackmobile.com
Digital Audio
• Stream of Numbers
• Signal
• Frequency and Amplitude
• DAC - Digital to Analog Converter
360 iDev tackmobile.com
Dynamic Audio
360 iDev tackmobile.com
Procedural Audio
• Functions
• Objects
• Controls and Components
• Produce a Signal
• “Building Sound from First Principles”
360 iDev tackmobile.com
Pure Data
• Procedural Audio
• Visual Programming Environment
• Free and Open Source
• pure-data.info
360 iDev tackmobile.com
Pure Data 101
360 iDev tackmobile.com
Signals and Values
• Signals are streams of numbers, usually audio
data
• Values are numbers or symbols
360 iDev tackmobile.com
• Pd’s class
• or, kind of like a command line tool
Objects
osc~ 440
signal inlet inlet
signal outlet
class name arguments
360 iDev tackmobile.com
Hot vs Cold Inlets
• Hot inlets make objects immediately act
• Cold inlets usually store a value
• Execution is right to left
360 iDev tackmobile.com
• Signal connections are thick
• Others are thin
Connections
osc~ 440
*~
dac~
1
360 iDev tackmobile.com
Messages
• Used for sending values without a connection
• [send] and [receive] objects
• Message boxes
360 iDev tackmobile.com
libpd
• http://libpd.cc
• Peter Brinkmann - Google Engineer
• Enables you to embed an instance of Pd in your
app
• iOS and Android
360 iDev tackmobile.com
Examples
360 iDev tackmobile.com
Source Code
• github.com/thillerson/dynamic-sound-ios
• Examples of capabilities, not necessarily the
best architecture
• Goal: understand capabilities, have a place to
start
360 iDev tackmobile.com
Example 1: A Simple Keyboard
• Sine wave oscillator
• Single voice
• Note on/off
360 iDev tackmobile.com
Example 1: A Simple Keyboard Patch
osc~
dac~
receive midinote
mtof
receive gate
line~
*~
;
midinote 60;
gate 1;
;
gate 0$1 1
print
360 iDev tackmobile.com
Example 2: A Game
• Top down perspective space shooter
• Code by Lucas Jordan
from iOS 5 Game Dev ->
• Now with sound!
360 iDev tackmobile.com
Example 2: A Game Patch
load a square wave
at startup
Thruster
noise~
*~
samphold~
dac~
hip~ 200
phasor~ 800
line~
$1 200
*~ 0.1
receive thruster
BulletShip_HitAsteroid_Hit
samphold~
tabosc4~ square
dac~
line~
phasor~ 8000
tabosc4~ square
line~
unpack f f
0 $1
tabosc4~ square
line~
unpack f f
0 $1
hip~ 1000
unpack f f
0 $1
*~ 0.5
receive asteroid receive ship receive bullet
8-bit-ify
these sounds
cut low frequencies
comment
comment
Test_Messages
;
bullet 25 200;
;
thruster 0
;
thruster 1
pd wavesetup
;
ship 1000 50;
;
asteroid 200 100;
360 iDev tackmobile.com
Further Reading
• puredata.info && libpd.cc
• youtube.com/user/cheetomoskeeto
• http://designingsound.org
• mitpress.mit.edu/books/designing-sound
360 iDev tackmobile.com
Questions
Thank you!
Dynamic Audio • Tony Hillerson
• We’re Hiring!
• careers@tackmobile.com
• Excellent Team
• Awesome Projects
• Great Office

More Related Content

Viewers also liked

Social Venture
Social VentureSocial Venture
Social Venture
Pengdo .
 
Employee Engagement White Paper by 360Solutions
Employee Engagement White Paper by 360SolutionsEmployee Engagement White Paper by 360Solutions
Employee Engagement White Paper by 360Solutions
Elizabeth Lupfer
 
Date Of Infamy
Date Of InfamyDate Of Infamy
Date Of Infamy
TobyCJ08
 
2010 ONREC Presentation - Perception Vs Reality: Do we really know what we ar...
2010 ONREC Presentation - Perception Vs Reality: Do we really know what we ar...2010 ONREC Presentation - Perception Vs Reality: Do we really know what we ar...
2010 ONREC Presentation - Perception Vs Reality: Do we really know what we ar...
Steve Lowisz
 

Viewers also liked (20)

Surgical Treatment of Low Back Pain & Sciatics
Surgical Treatment of Low Back Pain & SciaticsSurgical Treatment of Low Back Pain & Sciatics
Surgical Treatment of Low Back Pain & Sciatics
 
Social Venture
Social VentureSocial Venture
Social Venture
 
5 principles for excellent presentations
5 principles for excellent presentations5 principles for excellent presentations
5 principles for excellent presentations
 
六合彩-香港六合彩 » SlideShare
六合彩-香港六合彩 » SlideShare六合彩-香港六合彩 » SlideShare
六合彩-香港六合彩 » SlideShare
 
Flex And Rails
Flex And RailsFlex And Rails
Flex And Rails
 
Employee Engagement White Paper by 360Solutions
Employee Engagement White Paper by 360SolutionsEmployee Engagement White Paper by 360Solutions
Employee Engagement White Paper by 360Solutions
 
Lift Without Loss: New e-retail white paper offers help for tough times
Lift Without Loss: New e-retail white paper offers help for tough timesLift Without Loss: New e-retail white paper offers help for tough times
Lift Without Loss: New e-retail white paper offers help for tough times
 
Date Of Infamy
Date Of InfamyDate Of Infamy
Date Of Infamy
 
Social Media Business Council Disclosure Best Practices Toolkit
Social Media Business Council Disclosure Best Practices ToolkitSocial Media Business Council Disclosure Best Practices Toolkit
Social Media Business Council Disclosure Best Practices Toolkit
 
Day Of Infamy 3
Day Of Infamy 3Day Of Infamy 3
Day Of Infamy 3
 
currency trading sample
currency trading samplecurrency trading sample
currency trading sample
 
Editing Pp
Editing PpEditing Pp
Editing Pp
 
Marketing PR, Sebuah Tinjauan Praktis dan Aplikatif
Marketing PR, Sebuah Tinjauan Praktis dan AplikatifMarketing PR, Sebuah Tinjauan Praktis dan Aplikatif
Marketing PR, Sebuah Tinjauan Praktis dan Aplikatif
 
Social Media: Embracing the Opportunities, Averting the Risks Whitepaper
Social Media: Embracing the Opportunities, Averting the Risks WhitepaperSocial Media: Embracing the Opportunities, Averting the Risks Whitepaper
Social Media: Embracing the Opportunities, Averting the Risks Whitepaper
 
2010 ONREC Presentation - Perception Vs Reality: Do we really know what we ar...
2010 ONREC Presentation - Perception Vs Reality: Do we really know what we ar...2010 ONREC Presentation - Perception Vs Reality: Do we really know what we ar...
2010 ONREC Presentation - Perception Vs Reality: Do we really know what we ar...
 
SCM for Android Developers Using Git
SCM for Android Developers Using GitSCM for Android Developers Using Git
SCM for Android Developers Using Git
 
Personal branding: Sukses mendapatkan modal min Rp. 15 M dalam 1 hari atau na...
Personal branding: Sukses mendapatkan modal min Rp. 15 M dalam 1 hari atau na...Personal branding: Sukses mendapatkan modal min Rp. 15 M dalam 1 hari atau na...
Personal branding: Sukses mendapatkan modal min Rp. 15 M dalam 1 hari atau na...
 
Школе 52 — 50 лет (история школы в истории страны)
Школе 52 — 50 лет (история школы в истории страны) Школе 52 — 50 лет (история школы в истории страны)
Школе 52 — 50 лет (история школы в истории страны)
 
The Brand Train - Branding on the move
The Brand Train - Branding on the moveThe Brand Train - Branding on the move
The Brand Train - Branding on the move
 
Rapid Roi - Realizing Rapid ROI Through Mobility
Rapid Roi - Realizing Rapid ROI Through MobilityRapid Roi - Realizing Rapid ROI Through Mobility
Rapid Roi - Realizing Rapid ROI Through Mobility
 

More from Tony Hillerson (9)

Totally Build Apps for Free! (not really)
Totally Build Apps for Free! (not really)Totally Build Apps for Free! (not really)
Totally Build Apps for Free! (not really)
 
Working with Git
Working with GitWorking with Git
Working with Git
 
Git for Android Developers
Git for Android DevelopersGit for Android Developers
Git for Android Developers
 
Designing an Android App from Idea to Market
Designing an Android App from Idea to MarketDesigning an Android App from Idea to Market
Designing an Android App from Idea to Market
 
Rails on HBase
Rails on HBaseRails on HBase
Rails on HBase
 
Flex With Rubyamf
Flex With RubyamfFlex With Rubyamf
Flex With Rubyamf
 
First Android Experience
First Android ExperienceFirst Android Experience
First Android Experience
 
iPhone Persistence For Mere Mortals
iPhone Persistence For Mere MortalsiPhone Persistence For Mere Mortals
iPhone Persistence For Mere Mortals
 
Flex Framework Smackdown
Flex Framework SmackdownFlex Framework Smackdown
Flex Framework Smackdown
 

Recently uploaded

Future Visions: Predictions to Guide and Time Tech Innovation, Peter Udo Diehl
Future Visions: Predictions to Guide and Time Tech Innovation, Peter Udo DiehlFuture Visions: Predictions to Guide and Time Tech Innovation, Peter Udo Diehl
Future Visions: Predictions to Guide and Time Tech Innovation, Peter Udo Diehl
Peter Udo Diehl
 

Recently uploaded (20)

ECS 2024 Teams Premium - Pretty Secure
ECS 2024   Teams Premium - Pretty SecureECS 2024   Teams Premium - Pretty Secure
ECS 2024 Teams Premium - Pretty Secure
 
10 Differences between Sales Cloud and CPQ, Blanka Doktorová
10 Differences between Sales Cloud and CPQ, Blanka Doktorová10 Differences between Sales Cloud and CPQ, Blanka Doktorová
10 Differences between Sales Cloud and CPQ, Blanka Doktorová
 
Introduction to FDO and How It works Applications _ Richard at FIDO Alliance.pdf
Introduction to FDO and How It works Applications _ Richard at FIDO Alliance.pdfIntroduction to FDO and How It works Applications _ Richard at FIDO Alliance.pdf
Introduction to FDO and How It works Applications _ Richard at FIDO Alliance.pdf
 
AI revolution and Salesforce, Jiří Karpíšek
AI revolution and Salesforce, Jiří KarpíšekAI revolution and Salesforce, Jiří Karpíšek
AI revolution and Salesforce, Jiří Karpíšek
 
The Value of Certifying Products for FDO _ Paul at FIDO Alliance.pdf
The Value of Certifying Products for FDO _ Paul at FIDO Alliance.pdfThe Value of Certifying Products for FDO _ Paul at FIDO Alliance.pdf
The Value of Certifying Products for FDO _ Paul at FIDO Alliance.pdf
 
Enterprise Knowledge Graphs - Data Summit 2024
Enterprise Knowledge Graphs - Data Summit 2024Enterprise Knowledge Graphs - Data Summit 2024
Enterprise Knowledge Graphs - Data Summit 2024
 
PLAI - Acceleration Program for Generative A.I. Startups
PLAI - Acceleration Program for Generative A.I. StartupsPLAI - Acceleration Program for Generative A.I. Startups
PLAI - Acceleration Program for Generative A.I. Startups
 
THE BEST IPTV in GERMANY for 2024: IPTVreel
THE BEST IPTV in  GERMANY for 2024: IPTVreelTHE BEST IPTV in  GERMANY for 2024: IPTVreel
THE BEST IPTV in GERMANY for 2024: IPTVreel
 
Behind the Scenes From the Manager's Chair: Decoding the Secrets of Successfu...
Behind the Scenes From the Manager's Chair: Decoding the Secrets of Successfu...Behind the Scenes From the Manager's Chair: Decoding the Secrets of Successfu...
Behind the Scenes From the Manager's Chair: Decoding the Secrets of Successfu...
 
Custom Approval Process: A New Perspective, Pavel Hrbacek & Anindya Halder
Custom Approval Process: A New Perspective, Pavel Hrbacek & Anindya HalderCustom Approval Process: A New Perspective, Pavel Hrbacek & Anindya Halder
Custom Approval Process: A New Perspective, Pavel Hrbacek & Anindya Halder
 
What's New in Teams Calling, Meetings and Devices April 2024
What's New in Teams Calling, Meetings and Devices April 2024What's New in Teams Calling, Meetings and Devices April 2024
What's New in Teams Calling, Meetings and Devices April 2024
 
Optimizing NoSQL Performance Through Observability
Optimizing NoSQL Performance Through ObservabilityOptimizing NoSQL Performance Through Observability
Optimizing NoSQL Performance Through Observability
 
How we scaled to 80K users by doing nothing!.pdf
How we scaled to 80K users by doing nothing!.pdfHow we scaled to 80K users by doing nothing!.pdf
How we scaled to 80K users by doing nothing!.pdf
 
Unpacking Value Delivery - Agile Oxford Meetup - May 2024.pptx
Unpacking Value Delivery - Agile Oxford Meetup - May 2024.pptxUnpacking Value Delivery - Agile Oxford Meetup - May 2024.pptx
Unpacking Value Delivery - Agile Oxford Meetup - May 2024.pptx
 
Where to Learn More About FDO _ Richard at FIDO Alliance.pdf
Where to Learn More About FDO _ Richard at FIDO Alliance.pdfWhere to Learn More About FDO _ Richard at FIDO Alliance.pdf
Where to Learn More About FDO _ Richard at FIDO Alliance.pdf
 
Oauth 2.0 Introduction and Flows with MuleSoft
Oauth 2.0 Introduction and Flows with MuleSoftOauth 2.0 Introduction and Flows with MuleSoft
Oauth 2.0 Introduction and Flows with MuleSoft
 
Future Visions: Predictions to Guide and Time Tech Innovation, Peter Udo Diehl
Future Visions: Predictions to Guide and Time Tech Innovation, Peter Udo DiehlFuture Visions: Predictions to Guide and Time Tech Innovation, Peter Udo Diehl
Future Visions: Predictions to Guide and Time Tech Innovation, Peter Udo Diehl
 
A Business-Centric Approach to Design System Strategy
A Business-Centric Approach to Design System StrategyA Business-Centric Approach to Design System Strategy
A Business-Centric Approach to Design System Strategy
 
Free and Effective: Making Flows Publicly Accessible, Yumi Ibrahimzade
Free and Effective: Making Flows Publicly Accessible, Yumi IbrahimzadeFree and Effective: Making Flows Publicly Accessible, Yumi Ibrahimzade
Free and Effective: Making Flows Publicly Accessible, Yumi Ibrahimzade
 
Choosing the Right FDO Deployment Model for Your Application _ Geoffrey at In...
Choosing the Right FDO Deployment Model for Your Application _ Geoffrey at In...Choosing the Right FDO Deployment Model for Your Application _ Geoffrey at In...
Choosing the Right FDO Deployment Model for Your Application _ Geoffrey at In...
 

Dynamic Sound for iOS Apps and Games