my beats karen tipping dylan barrett mike smith. overview goal: to dynamically create tracks for...
Post on 19-Dec-2015
215 views
TRANSCRIPT
![Page 1: My Beats Karen Tipping Dylan Barrett Mike Smith. Overview Goal: To dynamically create tracks for guitar hero using any song as input. Terminology for](https://reader030.vdocuments.mx/reader030/viewer/2022032800/56649d3f5503460f94a18ba6/html5/thumbnails/1.jpg)
My BeatsMy BeatsKaren TippingDylan BarrettMike Smith
![Page 2: My Beats Karen Tipping Dylan Barrett Mike Smith. Overview Goal: To dynamically create tracks for guitar hero using any song as input. Terminology for](https://reader030.vdocuments.mx/reader030/viewer/2022032800/56649d3f5503460f94a18ba6/html5/thumbnails/2.jpg)
Overview
Goal: To dynamically create tracks for guitar hero using any song as input.
Terminology for our project Song Track Button Segment
![Page 3: My Beats Karen Tipping Dylan Barrett Mike Smith. Overview Goal: To dynamically create tracks for guitar hero using any song as input. Terminology for](https://reader030.vdocuments.mx/reader030/viewer/2022032800/56649d3f5503460f94a18ba6/html5/thumbnails/3.jpg)
Technology
Frets on Fire (FoF) Analyze by The Echo Nest Java
![Page 4: My Beats Karen Tipping Dylan Barrett Mike Smith. Overview Goal: To dynamically create tracks for guitar hero using any song as input. Terminology for](https://reader030.vdocuments.mx/reader030/viewer/2022032800/56649d3f5503460f94a18ba6/html5/thumbnails/4.jpg)
Timeline: Sept. 17 – Oct. 1
Mike: Create functions to gather data from Analyze, which outputs an XML description file Uses description to create list of song notes
Dylan: Reverse engineer the MIDI file format used by Frets on Fire Generate our own FoF tracks
Karen: Convert MP3 to OGG Embed conversion within Java tool
![Page 5: My Beats Karen Tipping Dylan Barrett Mike Smith. Overview Goal: To dynamically create tracks for guitar hero using any song as input. Terminology for](https://reader030.vdocuments.mx/reader030/viewer/2022032800/56649d3f5503460f94a18ba6/html5/thumbnails/5.jpg)
Using Analyze's XML File
Parse XML to: Locate song segments
Each segment corresponds to a note Find common song structures
Create Musical Data Structure Linked List
Sequential nodes define note progression
![Page 6: My Beats Karen Tipping Dylan Barrett Mike Smith. Overview Goal: To dynamically create tracks for guitar hero using any song as input. Terminology for](https://reader030.vdocuments.mx/reader030/viewer/2022032800/56649d3f5503460f94a18ba6/html5/thumbnails/6.jpg)
Segment XML File<?xml version="1.0" encoding="UTF-8"?><response version="2"> <status> <code>0</code> <message>Success</message> </status> <thingID>TRLFPPE11C3F10749F</thingID> <method>segmentslt;/method> <analysis> <segment start="2.54562" duration="0.29587"> <loudness> <dB time="0">-29.707</dB> <dB type="max" time="0.03483">-25.351</dB> </loudness> <pitches> <pitch>0.009</pitch> <pitch>0.090</pitch> <pitch>0.010</pitch> <pitch>0.018</pitch> <pitch>1.000</pitch> <pitch>0.017</pitch> <pitch>0.005</pitch> <pitch>0.005</pitch> <pitch>0.028</pitch> <pitch>0.383</pitch> <pitch>0.010</pitch> <pitch>0.016</pitch> </pitches>
<timbre> <coeff>31.132</coeff> <coeff>-51.574</coeff> <coeff>92.135</coeff> <coeff>60.049</coeff> <coeff>77.614</coeff> <coeff>-17.629</coeff> <coeff>-47.819</coeff> <coeff>6.888</coeff> <coeff>17.400</coeff> <coeff>-0.635</coeff> <coeff>-8.109</coeff> <coeff>-45.552</coeff> </timbre> </segment> </analysis></response>
Example
![Page 7: My Beats Karen Tipping Dylan Barrett Mike Smith. Overview Goal: To dynamically create tracks for guitar hero using any song as input. Terminology for](https://reader030.vdocuments.mx/reader030/viewer/2022032800/56649d3f5503460f94a18ba6/html5/thumbnails/7.jpg)
MIDI Format in Frets on Fire
SuperEasy
Easy
Medium
Hard
60 61 62 63 64
72 73 74 75 76
84 85 86 87 88
96 97 98 99 100
![Page 8: My Beats Karen Tipping Dylan Barrett Mike Smith. Overview Goal: To dynamically create tracks for guitar hero using any song as input. Terminology for](https://reader030.vdocuments.mx/reader030/viewer/2022032800/56649d3f5503460f94a18ba6/html5/thumbnails/8.jpg)
Timeline: Oct. 1 – Oct. 8
Dylan, Karen, Mike: Integration Generate preliminary simple test track
Each song note mapped to a single button Timing test
![Page 9: My Beats Karen Tipping Dylan Barrett Mike Smith. Overview Goal: To dynamically create tracks for guitar hero using any song as input. Terminology for](https://reader030.vdocuments.mx/reader030/viewer/2022032800/56649d3f5503460f94a18ba6/html5/thumbnails/9.jpg)
Timeline: Oct. 8 – Oct. 22
Two weeks Karen: Mapping notes to buttons
Different for each song
Mike: Build a Suffix Tree Way to identify common sequences
![Page 10: My Beats Karen Tipping Dylan Barrett Mike Smith. Overview Goal: To dynamically create tracks for guitar hero using any song as input. Terminology for](https://reader030.vdocuments.mx/reader030/viewer/2022032800/56649d3f5503460f94a18ba6/html5/thumbnails/10.jpg)
SuperEasy, Easy, Medium, and Hard Easy Difficulty
Common repetitive structures Low frequency of notes
Harder Difficulties Includes more notes and less common structures Building on what's already in the lower difficulties
![Page 11: My Beats Karen Tipping Dylan Barrett Mike Smith. Overview Goal: To dynamically create tracks for guitar hero using any song as input. Terminology for](https://reader030.vdocuments.mx/reader030/viewer/2022032800/56649d3f5503460f94a18ba6/html5/thumbnails/11.jpg)
Timeline: Oct. 22 – Nov. 12
All of us: Making better tracks you'd like to play Heuristics remove notes from song for track
Note frequency, and concurrency Remove more for easier difficulties
Curve Sampling
![Page 12: My Beats Karen Tipping Dylan Barrett Mike Smith. Overview Goal: To dynamically create tracks for guitar hero using any song as input. Terminology for](https://reader030.vdocuments.mx/reader030/viewer/2022032800/56649d3f5503460f94a18ba6/html5/thumbnails/12.jpg)
Mathematical Curve Sampling
Determines which notes are needed to get across the same basic musical structure
![Page 13: My Beats Karen Tipping Dylan Barrett Mike Smith. Overview Goal: To dynamically create tracks for guitar hero using any song as input. Terminology for](https://reader030.vdocuments.mx/reader030/viewer/2022032800/56649d3f5503460f94a18ba6/html5/thumbnails/13.jpg)
Timeline: Nov. 12 – End of Semester
Karen, Mike, Dylan: Final integration Play our dynamically created tracks on FoF Tweak heuristics Fix bugs
![Page 14: My Beats Karen Tipping Dylan Barrett Mike Smith. Overview Goal: To dynamically create tracks for guitar hero using any song as input. Terminology for](https://reader030.vdocuments.mx/reader030/viewer/2022032800/56649d3f5503460f94a18ba6/html5/thumbnails/14.jpg)
Questions?Questions?