corgi musical algrhythms The Team Philippe-Guillaume Losembe - - PowerPoint PPT Presentation

corgi
SMART_READER_LITE
LIVE PREVIEW

corgi musical algrhythms The Team Philippe-Guillaume Losembe - - PowerPoint PPT Presentation

corgi musical algrhythms The Team Philippe-Guillaume Losembe Alisha Sindhwani Justin Zhao Melissa OSullivan Motivation Music is complex, but there are interesting patterns Patterns in notes and harmonies that


slide-1
SLIDE 1

corgi

musical alg’rhythms

slide-2
SLIDE 2

The Team

  • Philippe-Guillaume Losembe
  • Alisha Sindhwani
  • Justin Zhao
  • Melissa O’Sullivan
slide-3
SLIDE 3

Motivation

  • Music is complex, but there are interesting patterns
  • Patterns in notes and harmonies that can be

analyzed

  • Top-down and Bottom-up approaches
  • Our goal was to develop a language to

algorithmically generate music, and analyze these patterns in music.

slide-4
SLIDE 4

Uses

  • corgi’s main selling point is its ability to

search through music.

  • Data structures make it easy to identify and

return the location of specific instances in a given composition

  • Ability to programmatically generate music.
slide-5
SLIDE 5

Hello World

int main() { print("Hello, world!"); }

slide-6
SLIDE 6

Types

  • Fractions
  • Durations
  • Pitch
  • Pitch/Duration Tuples
  • Chords
  • Track
  • Composition
slide-7
SLIDE 7

Flexible Data Type Conversion

duration d; d = $1/2$; fraction f; f = $1/3$ pitch p; p = 5; chord c; c = [(5,$1/4$), (3,d), (p,f)];

slide-8
SLIDE 8

Structure

slide-9
SLIDE 9

Java Implementation

  • Use of the jFugue Library (not that great)

○ Limitations

  • Translate well into Java class objects
  • Added flexibility for greater abstraction
slide-10
SLIDE 10

Lessons Learned

  • Identify individual strengths earlier
  • Start earlier, don’t procrastinate
  • Do not underestimate how much time it takes to do

even the small things

  • Testing along the way is essential
  • The more you distribute, the more you have to unify
  • Be mindful of the limitations of the libraries that you use