SlideShare a Scribd company logo
1 of 36
Computational Music Mixing
with EarSketch
D
A
Y
3
1MAGIC Presenter : Fatemeh Jamshidi. June 17-22 1/36
2/32
N
Who are we ?
D
A
Y
3
MAGIC Presenter : Fatemeh Jamshidi. June 17-22 2/36
•A Philosophy of Music Education:Bennett
Reimer
Music allows humans to encode, refine,
reflect, and sharenon-verbal thought in a
dynamic moving systemthat changesover
time.
3/32
Why Music and Programming?
D
A
Y
3
MAGIC Presenter : Fatemeh Jamshidi. June 17-22 3/36
•Allows humans to encode, refine, reflect,and
share logical thought in adynamic moving
systemthat changesover time.
•Music and Programming (Computational
Thinking) are the sameHuman Skill
expressed in two different domains: non-
verbal feelings in art/music and logical /
motion thought in Programming or
Computational Thinking
4/32
What is Programming?
D
A
Y
3
MAGIC Presenter : Fatemeh Jamshidi. June 17-22 4/36
Motion / Time / Flow
Thinking
Non-Verbal
Feelings:
Music
Thought:
Programming /
Computational
1/5/32
Audiation is to Music as Computer
Thinking is to Computer Science
D
A
Y
3
MAGIC Presenter : Fatemeh Jamshidi. June 17-22 5/36
Encodingthe
Non-Verbal
Encodingthe
Logic
Kalman FilterEine Kliene
6/32
To Put This in another Way
D
A
Y
3
MAGIC Presenter : Fatemeh Jamshidi. June 17-22 6/36
•Enhancingthe number of students
interested in computer science related
topics.
•In CS– we tend to focuson:
• Graphics / Games/ Visual
• TextProcessing/ Database
• Logic / Algorithmic / Mathematical
•EarSketchseeksto engagestudents in
CSthrough the art ofmusic.
7/32
Motivation
D
A
Y
3
MAGIC Presenter : Fatemeh Jamshidi. June 17-22 7/36
8/32
Why to learn program?
D
A
Y
3
MAGIC Presenter : Fatemeh Jamshidi. June 17-22 8/36
•Online Programming and Music Mixing Workstation
-Used at
GeorgiaTech to teach Digital Music Mixing.
-Tool for
Programming
-Free!
-Webbased
9/32
What is EarSketch?
D
A
Y
3
MAGIC Presenter : Fatemeh Jamshidi. June 17-22 9/36
Descriptionof EarSketch
•Programming Environment
•Python Based
•Web BasedApp or Installed Systemof
Software
•APIbuilt in Python for MusicMixing
•NSFFundedproject to encourage
computational interest through themixing
and sharing of music.
•Curriculum and SocialMedia Site
10/32
D
A
Y
3
MAGIC Presenter : Fatemeh Jamshidi. June 17-22 10/36
11/32
D
A
Y
3
MAGIC Presenter : Fatemeh Jamshidi. June 17-22 11/36
EarSketchWebsite:WebbasedIDEandDAW
CodingWindow: Programming
Music View: Display and Playback
Documentation
and CurriculumSoundLibrary
Toggle
Views
CS4All Girls Presenter : Fatemeh Jamshidi. June 3-8 12/32MAGIC Presenter : Fatemeh Jamshidi. June 17-22 12/36
•General purpose Computer Programming
Language
•Web development: Googleand Yahoo
•GameDevelopment, Science, Graphics
•In Business:National Weather Service,NASA,
IBM, Disney,and Nokia
•Usedin Development of the GoogleCarand
other RoboticSystems
13/32
WhatisPython?
MAGIC Presenter : Fatemeh Jamshidi. June 17-22 13/36
14/32
Go to“http://earsketch.gatech.edu/earsketch2"
and login with your EarSketch account name
and password.
MakingaccountonEarSketch
D
A
Y
3
MAGIC Presenter : Fatemeh Jamshidi. June 17-22 14/36
15/32
To listen to music examples, use the sound
browser to the left and click on the play icon.
You can browse the music clips using the
Genres and Artists buttons.
D
A
Y
3
MAGIC Presenter : Fatemeh Jamshidi. June 17-22 15/36
Comments
FinishSection
}
}Setup Section
} MusicSection
}
1/16/32
SampleEarSketchProgram
D
A
Y
3
MAGIC Presenter : Fatemeh Jamshidi. June 17-22 16/36
Essential Elements wewilluse inPython:
● Comments
# This is a comment – meant for Humans
● Includes – loading preset methods ordata
from earsketch import *
● Functions– telling the computer “what to do”
fitMedia(drums, 1, 1, 5)
● Variables and data types – Namesfor information
stored by program
Beat1 = “0+++0+++0+0+0+++”
● Tabs:Enclosecode in sections
● Lists:Groups variables into one datastructure
17/32
D
A
Y
3
MAGIC Presenter : Fatemeh Jamshidi. June 17-22 17/36
18/32
SetupSection
● The import statement
sets up the basic EarSketch commands to
be used.
● is a function with no parameter, that
creates a new project in reaper.
● is the function to establish the
tempo for the project by setting the
parameter to number of the beats per
minute.
D
A
Y
3
MAGIC Presenter : Fatemeh Jamshidi. June 17-22 18/36
DefiningVariables
19/32
We will now define three variables for
drums, lead, and bass: (You may pick
three sounds for yourself. Try to select a
drum part, melody, and bass)
D
A
Y
3
MAGIC Presenter : Fatemeh Jamshidi. June 17-22 19/36
20/32
● We will use fitMedia() to place the variables on tracks. Type the
following to begin placing music on track one. In this example we:
a. Locate ‘drums’ on track 1
b. Start the ‘drums’ at measure 1
c. End ‘drums’ at measure 9
● The function can take a number of values that are called
parameters. Parameters provide a way to customize a function in
order to make it do what you want.
fitMedia()Function
fitMedia(file, track, start, end)
Location of
Media
Sound
Which Track
in Reaper Start
measure.
End
measure.
D
A
Y
3
MAGIC Presenter : Fatemeh Jamshidi. June 17-22 20/36
“fitMedia”Function
21/32
D
A
Y
3
MAGIC Presenter : Fatemeh Jamshidi. June 17-22 21/36
22/32
● We will now create a contrasting section of music from measures
9 to 17. Add a new comment and then select 3 or 4 more music
samples:
DefiningVariablesfotMusicSectionB
● Use fitMedia() calls for Section B from measure 9 to 17.
● Click on Run to listen to your music.
D
A
Y
3
MAGIC Presenter : Fatemeh Jamshidi. June 17-22 22/36
23/32
Timetogetrandom
● One way that programming shines is being able to include
randomness into projects, meaning that the music will be different
every time the script runs.
is a simple variable that is being assigned the output from a new function
.
D
A
Y
3
MAGIC Presenter : Fatemeh Jamshidi. June 17-22 23/36
24/32
Looping
For instance, let’s say that we want to insert a single, four measure
long clip of music onto a particular track three times.
● Looping can include multiple executions of some section of code
At first, you might approach this situation this way:
D
A
Y
3
MAGIC Presenter : Fatemeh Jamshidi. June 17-22 24/36
25/32
Looping
● The variable is is the index variable for the loop. As the loop
iterates, or executes the statements inside the loop, will be
assigned numbers from 1 through 12.
● The function can have either two or three parameters,
• The first parameter indicates the starting point.
• The second parameter is for ending the loop.
• The third parameter tells the loop how much to increment the index
variable every iteration.
D
A
Y
3
MAGIC Presenter : Fatemeh Jamshidi. June 17-22 25/36
For Loops: Skip Counting
fillDrum = HIP_HOP_SYNTHDRUMS2_2M
for measure in range(1, 9, 2):
fitMedia(fillDrum, 1, measure, measure +1 )
measure is the “index variable” = assigned values from the
range()
(1, 9, 2) means start counting at 1,
end before 9 [meaning 8] and skip count by 2:
(1, 3, 5, 7)
26/32
D
A
Y
3
MAGIC Presenter : Fatemeh Jamshidi. June 17-22 26/36
27/32
1- How could this code be made more manageable?
QuestionandExercise
D
A
Y
3
MAGIC Presenter : Fatemeh Jamshidi. June 17-22 27/36
28/32
QuestionandExercise
2 - Make a project that's at least 12 measures long, uses
randomness, and has both an A and a B section.
D
A
Y
3
MAGIC Presenter : Fatemeh Jamshidi. June 17-22 28/36
D
A
Y
3
makeBeat() function
29
Musical Rhythm and beats video
MAGIC Presenter : Fatemeh Jamshidi. June 17-22 29/36
D
A
Y
3
30
● In composing or remixing, artists take “slices” of beats and combine
them in rhythmic patterns to create interest and drive.
● One way to make a custom beat pattern in EarSketch is to use
a string to define a pattern.
● Beat patterns in EarSketch use strings to refer to subsections of a
measure in order to place clips at specific places in the measure as
well as define the clip’s play length in one go. Here’s an example of a
beat pattern using a string:
Custom beat patterns and strings
MAGIC Presenter : Fatemeh Jamshidi. June 17-22 30/36
“makeBeat”Method
makeBeat(file, track, measure, BeatString)
Location of
Media
Sound
Which Track
in Reaper
What
measure.
Example: “0+++0+++0+0+0+++”
Example:
makeBeat(drums, 1, 1, “0+0+0+++00-00+++”)
21/32MAGIC Presenter : Fatemeh Jamshidi. June 17-22 31/36
BeatStringnotation
1) “0, 1, 2, 3 . . . “ =Which Media Soundyou
want for the segmentof beat. Correspond
to placement in aList that is onebased.
2) Note: 0 will refer to asound if it is the
only media file in theargument.
3) “+”Means extend or loop the Media
sound 1/16th of a measure.
4) “-” Means 1/16th measure of rest.
22/32MAGIC Presenter : Fatemeh Jamshidi. June 17-22 32/36
“0+++0+++0+0+0+++”
1
makeBeat(ELEKTRO_HOUSE_DRUMS3_2M, 1, 1,
“0+++0+++0+0+0+++”)
23/32MAGIC Presenter : Fatemeh Jamshidi. June 17-22 33/36
“0+++0++00+0+0-00”
1
makeBeat(ELEKTRO_HOUSE_DRUMS3_2M, 1, 1, “0+++0++00+0+0-00”)
24/32MAGIC Presenter : Fatemeh Jamshidi. June 17-22 34/36
“0+++0+++0+0+0+++”
1
makeBeat(ELEKTRO_HOUSE_DRUMS3_2M, 1, 1, “0+++0+++0+0+0+++”)
25/32MAGIC Presenter : Fatemeh Jamshidi. June 17-22 35/36
“0-0-0-0-0-0-0-0-”
1
makeBeat(ELEKTRO_HOUSE_DRUMS3_2M, 1, 1, “0-0-0-0-0-0-0-0-”)
26/32MAGIC Presenter : Fatemeh Jamshidi. June 17-22 36/36

More Related Content

Recently uploaded

How to Add New Custom Addons Path in Odoo 17
How to Add New Custom Addons Path in Odoo 17How to Add New Custom Addons Path in Odoo 17
How to Add New Custom Addons Path in Odoo 17Celine George
 
HMCS Max Bernays Pre-Deployment Brief (May 2024).pptx
HMCS Max Bernays Pre-Deployment Brief (May 2024).pptxHMCS Max Bernays Pre-Deployment Brief (May 2024).pptx
HMCS Max Bernays Pre-Deployment Brief (May 2024).pptxEsquimalt MFRC
 
diagnosting testing bsc 2nd sem.pptx....
diagnosting testing bsc 2nd sem.pptx....diagnosting testing bsc 2nd sem.pptx....
diagnosting testing bsc 2nd sem.pptx....Ritu480198
 
80 ĐỀ THI THỬ TUYỂN SINH TIẾNG ANH VÀO 10 SỞ GD – ĐT THÀNH PHỐ HỒ CHÍ MINH NĂ...
80 ĐỀ THI THỬ TUYỂN SINH TIẾNG ANH VÀO 10 SỞ GD – ĐT THÀNH PHỐ HỒ CHÍ MINH NĂ...80 ĐỀ THI THỬ TUYỂN SINH TIẾNG ANH VÀO 10 SỞ GD – ĐT THÀNH PHỐ HỒ CHÍ MINH NĂ...
80 ĐỀ THI THỬ TUYỂN SINH TIẾNG ANH VÀO 10 SỞ GD – ĐT THÀNH PHỐ HỒ CHÍ MINH NĂ...Nguyen Thanh Tu Collection
 
AIM of Education-Teachers Training-2024.ppt
AIM of Education-Teachers Training-2024.pptAIM of Education-Teachers Training-2024.ppt
AIM of Education-Teachers Training-2024.pptNishitharanjan Rout
 
FSB Advising Checklist - Orientation 2024
FSB Advising Checklist - Orientation 2024FSB Advising Checklist - Orientation 2024
FSB Advising Checklist - Orientation 2024Elizabeth Walsh
 
NO1 Top Black Magic Specialist In Lahore Black magic In Pakistan Kala Ilam Ex...
NO1 Top Black Magic Specialist In Lahore Black magic In Pakistan Kala Ilam Ex...NO1 Top Black Magic Specialist In Lahore Black magic In Pakistan Kala Ilam Ex...
NO1 Top Black Magic Specialist In Lahore Black magic In Pakistan Kala Ilam Ex...Amil baba
 
When Quality Assurance Meets Innovation in Higher Education - Report launch w...
When Quality Assurance Meets Innovation in Higher Education - Report launch w...When Quality Assurance Meets Innovation in Higher Education - Report launch w...
When Quality Assurance Meets Innovation in Higher Education - Report launch w...Gary Wood
 
Unit 3 Emotional Intelligence and Spiritual Intelligence.pdf
Unit 3 Emotional Intelligence and Spiritual Intelligence.pdfUnit 3 Emotional Intelligence and Spiritual Intelligence.pdf
Unit 3 Emotional Intelligence and Spiritual Intelligence.pdfDr Vijay Vishwakarma
 
Wellbeing inclusion and digital dystopias.pptx
Wellbeing inclusion and digital dystopias.pptxWellbeing inclusion and digital dystopias.pptx
Wellbeing inclusion and digital dystopias.pptxJisc
 
UGC NET Paper 1 Unit 7 DATA INTERPRETATION.pdf
UGC NET Paper 1 Unit 7 DATA INTERPRETATION.pdfUGC NET Paper 1 Unit 7 DATA INTERPRETATION.pdf
UGC NET Paper 1 Unit 7 DATA INTERPRETATION.pdfNirmal Dwivedi
 
Michaelis Menten Equation and Estimation Of Vmax and Tmax.pptx
Michaelis Menten Equation and Estimation Of Vmax and Tmax.pptxMichaelis Menten Equation and Estimation Of Vmax and Tmax.pptx
Michaelis Menten Equation and Estimation Of Vmax and Tmax.pptxRugvedSathawane
 
Jamworks pilot and AI at Jisc (20/03/2024)
Jamworks pilot and AI at Jisc (20/03/2024)Jamworks pilot and AI at Jisc (20/03/2024)
Jamworks pilot and AI at Jisc (20/03/2024)Jisc
 
Accessible Digital Futures project (20/03/2024)
Accessible Digital Futures project (20/03/2024)Accessible Digital Futures project (20/03/2024)
Accessible Digital Futures project (20/03/2024)Jisc
 
dusjagr & nano talk on open tools for agriculture research and learning
dusjagr & nano talk on open tools for agriculture research and learningdusjagr & nano talk on open tools for agriculture research and learning
dusjagr & nano talk on open tools for agriculture research and learningMarc Dusseiller Dusjagr
 
QUATER-1-PE-HEALTH-LC2- this is just a sample of unpacked lesson
QUATER-1-PE-HEALTH-LC2- this is just a sample of unpacked lessonQUATER-1-PE-HEALTH-LC2- this is just a sample of unpacked lesson
QUATER-1-PE-HEALTH-LC2- this is just a sample of unpacked lessonhttgc7rh9c
 
Ernest Hemingway's For Whom the Bell Tolls
Ernest Hemingway's For Whom the Bell TollsErnest Hemingway's For Whom the Bell Tolls
Ernest Hemingway's For Whom the Bell TollsPallavi Parmar
 
COMMUNICATING NEGATIVE NEWS - APPROACHES .pptx
COMMUNICATING NEGATIVE NEWS - APPROACHES .pptxCOMMUNICATING NEGATIVE NEWS - APPROACHES .pptx
COMMUNICATING NEGATIVE NEWS - APPROACHES .pptxannathomasp01
 
Graduate Outcomes Presentation Slides - English
Graduate Outcomes Presentation Slides - EnglishGraduate Outcomes Presentation Slides - English
Graduate Outcomes Presentation Slides - Englishneillewis46
 

Recently uploaded (20)

How to Add New Custom Addons Path in Odoo 17
How to Add New Custom Addons Path in Odoo 17How to Add New Custom Addons Path in Odoo 17
How to Add New Custom Addons Path in Odoo 17
 
HMCS Max Bernays Pre-Deployment Brief (May 2024).pptx
HMCS Max Bernays Pre-Deployment Brief (May 2024).pptxHMCS Max Bernays Pre-Deployment Brief (May 2024).pptx
HMCS Max Bernays Pre-Deployment Brief (May 2024).pptx
 
diagnosting testing bsc 2nd sem.pptx....
diagnosting testing bsc 2nd sem.pptx....diagnosting testing bsc 2nd sem.pptx....
diagnosting testing bsc 2nd sem.pptx....
 
80 ĐỀ THI THỬ TUYỂN SINH TIẾNG ANH VÀO 10 SỞ GD – ĐT THÀNH PHỐ HỒ CHÍ MINH NĂ...
80 ĐỀ THI THỬ TUYỂN SINH TIẾNG ANH VÀO 10 SỞ GD – ĐT THÀNH PHỐ HỒ CHÍ MINH NĂ...80 ĐỀ THI THỬ TUYỂN SINH TIẾNG ANH VÀO 10 SỞ GD – ĐT THÀNH PHỐ HỒ CHÍ MINH NĂ...
80 ĐỀ THI THỬ TUYỂN SINH TIẾNG ANH VÀO 10 SỞ GD – ĐT THÀNH PHỐ HỒ CHÍ MINH NĂ...
 
AIM of Education-Teachers Training-2024.ppt
AIM of Education-Teachers Training-2024.pptAIM of Education-Teachers Training-2024.ppt
AIM of Education-Teachers Training-2024.ppt
 
FSB Advising Checklist - Orientation 2024
FSB Advising Checklist - Orientation 2024FSB Advising Checklist - Orientation 2024
FSB Advising Checklist - Orientation 2024
 
VAMOS CUIDAR DO NOSSO PLANETA! .
VAMOS CUIDAR DO NOSSO PLANETA!                    .VAMOS CUIDAR DO NOSSO PLANETA!                    .
VAMOS CUIDAR DO NOSSO PLANETA! .
 
NO1 Top Black Magic Specialist In Lahore Black magic In Pakistan Kala Ilam Ex...
NO1 Top Black Magic Specialist In Lahore Black magic In Pakistan Kala Ilam Ex...NO1 Top Black Magic Specialist In Lahore Black magic In Pakistan Kala Ilam Ex...
NO1 Top Black Magic Specialist In Lahore Black magic In Pakistan Kala Ilam Ex...
 
When Quality Assurance Meets Innovation in Higher Education - Report launch w...
When Quality Assurance Meets Innovation in Higher Education - Report launch w...When Quality Assurance Meets Innovation in Higher Education - Report launch w...
When Quality Assurance Meets Innovation in Higher Education - Report launch w...
 
Unit 3 Emotional Intelligence and Spiritual Intelligence.pdf
Unit 3 Emotional Intelligence and Spiritual Intelligence.pdfUnit 3 Emotional Intelligence and Spiritual Intelligence.pdf
Unit 3 Emotional Intelligence and Spiritual Intelligence.pdf
 
Wellbeing inclusion and digital dystopias.pptx
Wellbeing inclusion and digital dystopias.pptxWellbeing inclusion and digital dystopias.pptx
Wellbeing inclusion and digital dystopias.pptx
 
UGC NET Paper 1 Unit 7 DATA INTERPRETATION.pdf
UGC NET Paper 1 Unit 7 DATA INTERPRETATION.pdfUGC NET Paper 1 Unit 7 DATA INTERPRETATION.pdf
UGC NET Paper 1 Unit 7 DATA INTERPRETATION.pdf
 
Michaelis Menten Equation and Estimation Of Vmax and Tmax.pptx
Michaelis Menten Equation and Estimation Of Vmax and Tmax.pptxMichaelis Menten Equation and Estimation Of Vmax and Tmax.pptx
Michaelis Menten Equation and Estimation Of Vmax and Tmax.pptx
 
Jamworks pilot and AI at Jisc (20/03/2024)
Jamworks pilot and AI at Jisc (20/03/2024)Jamworks pilot and AI at Jisc (20/03/2024)
Jamworks pilot and AI at Jisc (20/03/2024)
 
Accessible Digital Futures project (20/03/2024)
Accessible Digital Futures project (20/03/2024)Accessible Digital Futures project (20/03/2024)
Accessible Digital Futures project (20/03/2024)
 
dusjagr & nano talk on open tools for agriculture research and learning
dusjagr & nano talk on open tools for agriculture research and learningdusjagr & nano talk on open tools for agriculture research and learning
dusjagr & nano talk on open tools for agriculture research and learning
 
QUATER-1-PE-HEALTH-LC2- this is just a sample of unpacked lesson
QUATER-1-PE-HEALTH-LC2- this is just a sample of unpacked lessonQUATER-1-PE-HEALTH-LC2- this is just a sample of unpacked lesson
QUATER-1-PE-HEALTH-LC2- this is just a sample of unpacked lesson
 
Ernest Hemingway's For Whom the Bell Tolls
Ernest Hemingway's For Whom the Bell TollsErnest Hemingway's For Whom the Bell Tolls
Ernest Hemingway's For Whom the Bell Tolls
 
COMMUNICATING NEGATIVE NEWS - APPROACHES .pptx
COMMUNICATING NEGATIVE NEWS - APPROACHES .pptxCOMMUNICATING NEGATIVE NEWS - APPROACHES .pptx
COMMUNICATING NEGATIVE NEWS - APPROACHES .pptx
 
Graduate Outcomes Presentation Slides - English
Graduate Outcomes Presentation Slides - EnglishGraduate Outcomes Presentation Slides - English
Graduate Outcomes Presentation Slides - English
 

Featured

Everything You Need To Know About ChatGPT
Everything You Need To Know About ChatGPTEverything You Need To Know About ChatGPT
Everything You Need To Know About ChatGPTExpeed Software
 
Product Design Trends in 2024 | Teenage Engineerings
Product Design Trends in 2024 | Teenage EngineeringsProduct Design Trends in 2024 | Teenage Engineerings
Product Design Trends in 2024 | Teenage EngineeringsPixeldarts
 
How Race, Age and Gender Shape Attitudes Towards Mental Health
How Race, Age and Gender Shape Attitudes Towards Mental HealthHow Race, Age and Gender Shape Attitudes Towards Mental Health
How Race, Age and Gender Shape Attitudes Towards Mental HealthThinkNow
 
AI Trends in Creative Operations 2024 by Artwork Flow.pdf
AI Trends in Creative Operations 2024 by Artwork Flow.pdfAI Trends in Creative Operations 2024 by Artwork Flow.pdf
AI Trends in Creative Operations 2024 by Artwork Flow.pdfmarketingartwork
 
PEPSICO Presentation to CAGNY Conference Feb 2024
PEPSICO Presentation to CAGNY Conference Feb 2024PEPSICO Presentation to CAGNY Conference Feb 2024
PEPSICO Presentation to CAGNY Conference Feb 2024Neil Kimberley
 
Content Methodology: A Best Practices Report (Webinar)
Content Methodology: A Best Practices Report (Webinar)Content Methodology: A Best Practices Report (Webinar)
Content Methodology: A Best Practices Report (Webinar)contently
 
How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024Albert Qian
 
Social Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie InsightsSocial Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie InsightsKurio // The Social Media Age(ncy)
 
Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024Search Engine Journal
 
5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summary5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summarySpeakerHub
 
ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd Clark Boyd
 
Getting into the tech field. what next
Getting into the tech field. what next Getting into the tech field. what next
Getting into the tech field. what next Tessa Mero
 
Google's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search IntentGoogle's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search IntentLily Ray
 
Time Management & Productivity - Best Practices
Time Management & Productivity -  Best PracticesTime Management & Productivity -  Best Practices
Time Management & Productivity - Best PracticesVit Horky
 
The six step guide to practical project management
The six step guide to practical project managementThe six step guide to practical project management
The six step guide to practical project managementMindGenius
 
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...RachelPearson36
 
Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...
Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...
Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...Applitools
 

Featured (20)

Everything You Need To Know About ChatGPT
Everything You Need To Know About ChatGPTEverything You Need To Know About ChatGPT
Everything You Need To Know About ChatGPT
 
Product Design Trends in 2024 | Teenage Engineerings
Product Design Trends in 2024 | Teenage EngineeringsProduct Design Trends in 2024 | Teenage Engineerings
Product Design Trends in 2024 | Teenage Engineerings
 
How Race, Age and Gender Shape Attitudes Towards Mental Health
How Race, Age and Gender Shape Attitudes Towards Mental HealthHow Race, Age and Gender Shape Attitudes Towards Mental Health
How Race, Age and Gender Shape Attitudes Towards Mental Health
 
AI Trends in Creative Operations 2024 by Artwork Flow.pdf
AI Trends in Creative Operations 2024 by Artwork Flow.pdfAI Trends in Creative Operations 2024 by Artwork Flow.pdf
AI Trends in Creative Operations 2024 by Artwork Flow.pdf
 
Skeleton Culture Code
Skeleton Culture CodeSkeleton Culture Code
Skeleton Culture Code
 
PEPSICO Presentation to CAGNY Conference Feb 2024
PEPSICO Presentation to CAGNY Conference Feb 2024PEPSICO Presentation to CAGNY Conference Feb 2024
PEPSICO Presentation to CAGNY Conference Feb 2024
 
Content Methodology: A Best Practices Report (Webinar)
Content Methodology: A Best Practices Report (Webinar)Content Methodology: A Best Practices Report (Webinar)
Content Methodology: A Best Practices Report (Webinar)
 
How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024
 
Social Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie InsightsSocial Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie Insights
 
Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024
 
5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summary5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summary
 
ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd
 
Getting into the tech field. what next
Getting into the tech field. what next Getting into the tech field. what next
Getting into the tech field. what next
 
Google's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search IntentGoogle's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search Intent
 
How to have difficult conversations
How to have difficult conversations How to have difficult conversations
How to have difficult conversations
 
Introduction to Data Science
Introduction to Data ScienceIntroduction to Data Science
Introduction to Data Science
 
Time Management & Productivity - Best Practices
Time Management & Productivity -  Best PracticesTime Management & Productivity -  Best Practices
Time Management & Productivity - Best Practices
 
The six step guide to practical project management
The six step guide to practical project managementThe six step guide to practical project management
The six step guide to practical project management
 
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
 
Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...
Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...
Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...
 

Day 3( magic camp)

  • 1. Computational Music Mixing with EarSketch D A Y 3 1MAGIC Presenter : Fatemeh Jamshidi. June 17-22 1/36
  • 2. 2/32 N Who are we ? D A Y 3 MAGIC Presenter : Fatemeh Jamshidi. June 17-22 2/36
  • 3. •A Philosophy of Music Education:Bennett Reimer Music allows humans to encode, refine, reflect, and sharenon-verbal thought in a dynamic moving systemthat changesover time. 3/32 Why Music and Programming? D A Y 3 MAGIC Presenter : Fatemeh Jamshidi. June 17-22 3/36
  • 4. •Allows humans to encode, refine, reflect,and share logical thought in adynamic moving systemthat changesover time. •Music and Programming (Computational Thinking) are the sameHuman Skill expressed in two different domains: non- verbal feelings in art/music and logical / motion thought in Programming or Computational Thinking 4/32 What is Programming? D A Y 3 MAGIC Presenter : Fatemeh Jamshidi. June 17-22 4/36
  • 5. Motion / Time / Flow Thinking Non-Verbal Feelings: Music Thought: Programming / Computational 1/5/32 Audiation is to Music as Computer Thinking is to Computer Science D A Y 3 MAGIC Presenter : Fatemeh Jamshidi. June 17-22 5/36
  • 6. Encodingthe Non-Verbal Encodingthe Logic Kalman FilterEine Kliene 6/32 To Put This in another Way D A Y 3 MAGIC Presenter : Fatemeh Jamshidi. June 17-22 6/36
  • 7. •Enhancingthe number of students interested in computer science related topics. •In CS– we tend to focuson: • Graphics / Games/ Visual • TextProcessing/ Database • Logic / Algorithmic / Mathematical •EarSketchseeksto engagestudents in CSthrough the art ofmusic. 7/32 Motivation D A Y 3 MAGIC Presenter : Fatemeh Jamshidi. June 17-22 7/36
  • 8. 8/32 Why to learn program? D A Y 3 MAGIC Presenter : Fatemeh Jamshidi. June 17-22 8/36
  • 9. •Online Programming and Music Mixing Workstation -Used at GeorgiaTech to teach Digital Music Mixing. -Tool for Programming -Free! -Webbased 9/32 What is EarSketch? D A Y 3 MAGIC Presenter : Fatemeh Jamshidi. June 17-22 9/36
  • 10. Descriptionof EarSketch •Programming Environment •Python Based •Web BasedApp or Installed Systemof Software •APIbuilt in Python for MusicMixing •NSFFundedproject to encourage computational interest through themixing and sharing of music. •Curriculum and SocialMedia Site 10/32 D A Y 3 MAGIC Presenter : Fatemeh Jamshidi. June 17-22 10/36
  • 11. 11/32 D A Y 3 MAGIC Presenter : Fatemeh Jamshidi. June 17-22 11/36
  • 12. EarSketchWebsite:WebbasedIDEandDAW CodingWindow: Programming Music View: Display and Playback Documentation and CurriculumSoundLibrary Toggle Views CS4All Girls Presenter : Fatemeh Jamshidi. June 3-8 12/32MAGIC Presenter : Fatemeh Jamshidi. June 17-22 12/36
  • 13. •General purpose Computer Programming Language •Web development: Googleand Yahoo •GameDevelopment, Science, Graphics •In Business:National Weather Service,NASA, IBM, Disney,and Nokia •Usedin Development of the GoogleCarand other RoboticSystems 13/32 WhatisPython? MAGIC Presenter : Fatemeh Jamshidi. June 17-22 13/36
  • 14. 14/32 Go to“http://earsketch.gatech.edu/earsketch2" and login with your EarSketch account name and password. MakingaccountonEarSketch D A Y 3 MAGIC Presenter : Fatemeh Jamshidi. June 17-22 14/36
  • 15. 15/32 To listen to music examples, use the sound browser to the left and click on the play icon. You can browse the music clips using the Genres and Artists buttons. D A Y 3 MAGIC Presenter : Fatemeh Jamshidi. June 17-22 15/36
  • 17. Essential Elements wewilluse inPython: ● Comments # This is a comment – meant for Humans ● Includes – loading preset methods ordata from earsketch import * ● Functions– telling the computer “what to do” fitMedia(drums, 1, 1, 5) ● Variables and data types – Namesfor information stored by program Beat1 = “0+++0+++0+0+0+++” ● Tabs:Enclosecode in sections ● Lists:Groups variables into one datastructure 17/32 D A Y 3 MAGIC Presenter : Fatemeh Jamshidi. June 17-22 17/36
  • 18. 18/32 SetupSection ● The import statement sets up the basic EarSketch commands to be used. ● is a function with no parameter, that creates a new project in reaper. ● is the function to establish the tempo for the project by setting the parameter to number of the beats per minute. D A Y 3 MAGIC Presenter : Fatemeh Jamshidi. June 17-22 18/36
  • 19. DefiningVariables 19/32 We will now define three variables for drums, lead, and bass: (You may pick three sounds for yourself. Try to select a drum part, melody, and bass) D A Y 3 MAGIC Presenter : Fatemeh Jamshidi. June 17-22 19/36
  • 20. 20/32 ● We will use fitMedia() to place the variables on tracks. Type the following to begin placing music on track one. In this example we: a. Locate ‘drums’ on track 1 b. Start the ‘drums’ at measure 1 c. End ‘drums’ at measure 9 ● The function can take a number of values that are called parameters. Parameters provide a way to customize a function in order to make it do what you want. fitMedia()Function fitMedia(file, track, start, end) Location of Media Sound Which Track in Reaper Start measure. End measure. D A Y 3 MAGIC Presenter : Fatemeh Jamshidi. June 17-22 20/36
  • 21. “fitMedia”Function 21/32 D A Y 3 MAGIC Presenter : Fatemeh Jamshidi. June 17-22 21/36
  • 22. 22/32 ● We will now create a contrasting section of music from measures 9 to 17. Add a new comment and then select 3 or 4 more music samples: DefiningVariablesfotMusicSectionB ● Use fitMedia() calls for Section B from measure 9 to 17. ● Click on Run to listen to your music. D A Y 3 MAGIC Presenter : Fatemeh Jamshidi. June 17-22 22/36
  • 23. 23/32 Timetogetrandom ● One way that programming shines is being able to include randomness into projects, meaning that the music will be different every time the script runs. is a simple variable that is being assigned the output from a new function . D A Y 3 MAGIC Presenter : Fatemeh Jamshidi. June 17-22 23/36
  • 24. 24/32 Looping For instance, let’s say that we want to insert a single, four measure long clip of music onto a particular track three times. ● Looping can include multiple executions of some section of code At first, you might approach this situation this way: D A Y 3 MAGIC Presenter : Fatemeh Jamshidi. June 17-22 24/36
  • 25. 25/32 Looping ● The variable is is the index variable for the loop. As the loop iterates, or executes the statements inside the loop, will be assigned numbers from 1 through 12. ● The function can have either two or three parameters, • The first parameter indicates the starting point. • The second parameter is for ending the loop. • The third parameter tells the loop how much to increment the index variable every iteration. D A Y 3 MAGIC Presenter : Fatemeh Jamshidi. June 17-22 25/36
  • 26. For Loops: Skip Counting fillDrum = HIP_HOP_SYNTHDRUMS2_2M for measure in range(1, 9, 2): fitMedia(fillDrum, 1, measure, measure +1 ) measure is the “index variable” = assigned values from the range() (1, 9, 2) means start counting at 1, end before 9 [meaning 8] and skip count by 2: (1, 3, 5, 7) 26/32 D A Y 3 MAGIC Presenter : Fatemeh Jamshidi. June 17-22 26/36
  • 27. 27/32 1- How could this code be made more manageable? QuestionandExercise D A Y 3 MAGIC Presenter : Fatemeh Jamshidi. June 17-22 27/36
  • 28. 28/32 QuestionandExercise 2 - Make a project that's at least 12 measures long, uses randomness, and has both an A and a B section. D A Y 3 MAGIC Presenter : Fatemeh Jamshidi. June 17-22 28/36
  • 29. D A Y 3 makeBeat() function 29 Musical Rhythm and beats video MAGIC Presenter : Fatemeh Jamshidi. June 17-22 29/36
  • 30. D A Y 3 30 ● In composing or remixing, artists take “slices” of beats and combine them in rhythmic patterns to create interest and drive. ● One way to make a custom beat pattern in EarSketch is to use a string to define a pattern. ● Beat patterns in EarSketch use strings to refer to subsections of a measure in order to place clips at specific places in the measure as well as define the clip’s play length in one go. Here’s an example of a beat pattern using a string: Custom beat patterns and strings MAGIC Presenter : Fatemeh Jamshidi. June 17-22 30/36
  • 31. “makeBeat”Method makeBeat(file, track, measure, BeatString) Location of Media Sound Which Track in Reaper What measure. Example: “0+++0+++0+0+0+++” Example: makeBeat(drums, 1, 1, “0+0+0+++00-00+++”) 21/32MAGIC Presenter : Fatemeh Jamshidi. June 17-22 31/36
  • 32. BeatStringnotation 1) “0, 1, 2, 3 . . . “ =Which Media Soundyou want for the segmentof beat. Correspond to placement in aList that is onebased. 2) Note: 0 will refer to asound if it is the only media file in theargument. 3) “+”Means extend or loop the Media sound 1/16th of a measure. 4) “-” Means 1/16th measure of rest. 22/32MAGIC Presenter : Fatemeh Jamshidi. June 17-22 32/36
  • 34. “0+++0++00+0+0-00” 1 makeBeat(ELEKTRO_HOUSE_DRUMS3_2M, 1, 1, “0+++0++00+0+0-00”) 24/32MAGIC Presenter : Fatemeh Jamshidi. June 17-22 34/36
  • 35. “0+++0+++0+0+0+++” 1 makeBeat(ELEKTRO_HOUSE_DRUMS3_2M, 1, 1, “0+++0+++0+0+0+++”) 25/32MAGIC Presenter : Fatemeh Jamshidi. June 17-22 35/36
  • 36. “0-0-0-0-0-0-0-0-” 1 makeBeat(ELEKTRO_HOUSE_DRUMS3_2M, 1, 1, “0-0-0-0-0-0-0-0-”) 26/32MAGIC Presenter : Fatemeh Jamshidi. June 17-22 36/36