dynamically generated music tracks a new approach to the modern guitar hero

25
Dynamically Generated Music Tracks A New Approach to the Modern Guitar Hero

Upload: grace-marsh

Post on 17-Dec-2015

215 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Dynamically Generated Music Tracks A New Approach to the Modern Guitar Hero

Dynamically Generated Music

TracksA New Approach to the Modern Guitar Hero

Page 2: Dynamically Generated Music Tracks A New Approach to the Modern Guitar Hero

Our Team

•Michael Smith (myself)

•Dylan Barrett

•Karen Tipping

Page 3: Dynamically Generated Music Tracks A New Approach to the Modern Guitar Hero

Currently

•Current play along music games allow:

•Instrumental controllers (guitar, drums)

•Different difficulty levels

•Variety of pre-made songs

Page 4: Dynamically Generated Music Tracks A New Approach to the Modern Guitar Hero

Examples

•“Guitar Hero” - Activision

•“Rock Band” - Harmonix

•“Frets of Fire” - Open Source Project

Page 5: Dynamically Generated Music Tracks A New Approach to the Modern Guitar Hero

Watch

QuickTime™ and a decompressor

are needed to see this picture.

Page 6: Dynamically Generated Music Tracks A New Approach to the Modern Guitar Hero

Music Tracks

•All the current games function the same.

•Tracks pre-coded by hand.

•Can only play songs that have been composed.

•Composed tracks are ‘perfect’.

Page 7: Dynamically Generated Music Tracks A New Approach to the Modern Guitar Hero

Downside

•Limited song selection

•Song ownership

Page 8: Dynamically Generated Music Tracks A New Approach to the Modern Guitar Hero

Alternative

•Dynamically create music tracks

•For song of players choice

Page 9: Dynamically Generated Music Tracks A New Approach to the Modern Guitar Hero

Imagine A New Game

•When a user plays the game:

•Can play any song they own

•At a desired difficulty level

•Can play any instrument in song

•If they have the add-on for it

Page 10: Dynamically Generated Music Tracks A New Approach to the Modern Guitar Hero

Instrument Add-On•Each instrument fundamentally

different from others.

•Different handlers for different functionality.

•Similar to device drivers.

•Ex: Guitar add-on lets user play any guitar track found in any song

Page 11: Dynamically Generated Music Tracks A New Approach to the Modern Guitar Hero

So....•User will choose a song

•User will choose a difficulty setting

•User will choose an instrument

•Game will generate a track for that song

•For that instrument

•At that difficulty setting

Page 12: Dynamically Generated Music Tracks A New Approach to the Modern Guitar Hero

Project Scope•Described game very complex

•Only have a single semester

•Narrow down the focus to create an effective Proof of Concept demonstration

•Take advantage of tools already available to save time

Page 13: Dynamically Generated Music Tracks A New Approach to the Modern Guitar Hero

Existing Framework

•Open Source “Frets of Fire”

•Designed for guitar

•Playable track stored as MIDI file

•MIDI file basically a musical XML

Page 14: Dynamically Generated Music Tracks A New Approach to the Modern Guitar Hero

Our Goal

•Create a tool that:

•Takes a Guitar only song

•Analyzes the song

•Outputs a playable track

•In Frets of Fire format

•At a selected difficulty setting

Page 15: Dynamically Generated Music Tracks A New Approach to the Modern Guitar Hero

Data Gathering

•Need location and values of musical notes

•Similar to creating a music visualization

•Tool called Analyze from The Echo Nest

•Returns XML file with comprehensive data about a submitted song

•the.echonest.com/analyze/

Page 16: Dynamically Generated Music Tracks A New Approach to the Modern Guitar Hero

Analyze Demo•Music visualizer created by Anita Lillie

of MIT using this tool shows its power.

QuickTime™ and a decompressor

are needed to see this picture.

Page 17: Dynamically Generated Music Tracks A New Approach to the Modern Guitar Hero

Data Recording•Parse the XML to:

•locate notes

•find song structure (solo’s, chorus, etc...)

•Create a Musical Data Structure to record the information

•Linked List

•Node contains Note and Timing

Page 18: Dynamically Generated Music Tracks A New Approach to the Modern Guitar Hero

Track Generation•Range of notes need to be

compressed

•Need to fit range of controller

•Ex: Current Guitar games have 5 notes

•Not all notes should be put into track

•Ex: Hendrix vs Average Player

•Variations between difficulty levels

Page 19: Dynamically Generated Music Tracks A New Approach to the Modern Guitar Hero

Difficulty Levels•Easy (least note density, more repetitive)

•Find common repeated note structures

•Fewest notes needed for that structure

•Medium

•Greater density, less repetitive notes

•Hard

•Solo’s, high note density, least predictable

•For harder levels, add in more of

Page 20: Dynamically Generated Music Tracks A New Approach to the Modern Guitar Hero

How to Decide•Structural analysis on the song

•A Suffix Tree can find common sub-sequences/patterns of notes

•Use a set of Heuristics to make decisions

•Evaluate note density, timing, etc...

•Heuristic values can be adjusted

•Player response = better gameplay

Page 21: Dynamically Generated Music Tracks A New Approach to the Modern Guitar Hero

First Stage Tasks•Timeline: 2 - 3 weeks

•Reverse Engineer FoF MIDI file format

•Use javax.sound.midi to create MIDI files

•Simple music clips to understand Analyze

•Create java functions to extract the data

Page 22: Dynamically Generated Music Tracks A New Approach to the Modern Guitar Hero

Second Stage Tasks

•Timeline: 3 - 4 weeks

•Define Musical Structure

•Create a set of plausible Heuristics

•Consult with School of Music

Page 23: Dynamically Generated Music Tracks A New Approach to the Modern Guitar Hero

Third Stage Tasks

•Timeline: 1 - 2 weeks

•Generate FoF formatted songs

•using all previously created tools

Page 24: Dynamically Generated Music Tracks A New Approach to the Modern Guitar Hero

Fourth Stage Tasks

•Timeline: remaining time

•Test code for errors

•Run game to tweak heuristics for better play

Page 25: Dynamically Generated Music Tracks A New Approach to the Modern Guitar Hero

Questions?