Savant - PowerPoint PPT Presentation

1 / 20
About This Presentation
Title:

Savant

Description:

Savant. Tony Wu Jay Ni Deri Kusuma. Automated music improvisation. 1. Special Thanks to: ... and our testers: Tim Lambert, Adriana Miu, Jon Lau, and You ... – PowerPoint PPT presentation

Number of Views:264
Avg rating:3.0/5.0
Slides: 21
Provided by: jay85
Category:
Tags: jay | savant

less

Transcript and Presenter's Notes

Title: Savant


1
Savant
Automated music improvisation
  • Tony Wu Jay Ni Deri Kusuma

Special Thanks to Prof. Plummer and Cristina
Pop and our testers Tim Lambert, Adriana Miu,
Jon Lau, and You Li
2
Architecture
3
Algorithms
4
Music Representation
Note
Pitch
- Screenshot of Cakewalk Music Creator 3
Time
5
Note Representation
Velocity struck volume
Volume (db)
Pitch
Time
Struck time
Release time
6
Music Timing
Tempo (beats per minute)
120
1 tick 125 ms
_at_ 4 ticks per beat
1 beat 0.5 sec
_at_ 120 beats per minute
1 measure
7
Architecture
MIDI controller
MIDI input file
Input manager
Input thread
Input buffer
Logic
Decision Engines
Libraries and intermediate data structures
Analyzers
Logic thread
Improvisers
Output buffer
Output manager
Output thread
GUI
GUI thread
Synthesizer
Audible sound
Visualization
MIDI output file
8
Real-time Music Storage
Circular chunklist
A number of answers n avg. number of notes per
tick N total number of notes stored L avg.
length of notes in tick
9
Chord analysis basic chord types
major
minor
dim
aug
dom
half dim
sus4
C
These are like basic colors in painting
Other chords are simply enrichment / inversion /
transposition of these basic feels
Enrichment
Inversion
Transposition
(of C major)
10
Chord analysis note domains
These are all C major chords
C I
d VIIb
G IV
Affinity to A, B Distance from F, Ab
Affinity to F, Ab
Affinity to F
Important for generation!
11
Chord Analysis Note Desirability
F and F only sound good with high octaves
Higher pitch has less chord determining capability
D,A,B sound good if not too low
C major
Only C,E,G will sound good down here
12
Chord Analysis Capturing Richness
C, Db, D, E, F, A, Bb
Absent
Higher notes
Ab
Eb
Strong notes
B
F
G dominant 7 b9 b13
Bass
G
Storing the note distribution of input captures
richness beyond basic types (e.g. major, minor)
13
Chord Analysis Capturing Ambiguity
We compute a score for each possible chord
interpretation, and then pick the highest score
to determine chord.
14
Decoupling Motif and Chord
C major


G 7



Bb minor 7 9 / F

The same motif
15
Offline Motif Fitting
C B Bb A Ab G F F E Eb D Db C B Bb A Ab G F F E
Eb D Db C
One-to-one pitch mapping algorithm with dynamic
programming
Maximize objective function REWARD chordal
fitness as a function of motif and destination
chord PENALTY absolute displacement , relative
displacement TIME BUDGET 60-120 ms per motif
16
Real-time Motif Fitting
Maximize objective function per assignment, given
assistance level REWARD chordal fitness as a
function of destination chord, consistency to
assignment history PENALTY absolute
displacement, collision with assignment history
for neighboring notes TIME BUDGET lt 1 ms per note
Pitch
input
mapped
Time
The present
17
Determining Key of Piece
HOW? The current key is determined by the
discrete convolution of the input notes with each
major / minor filter.
Performing Key Changes
  • Abrupt Using dominant chord of new tonic
  • Smooth Leverage current chord progression

C I V vi iii FI V vi -
(CIV I ii - )
18
Pleasant Chord Transitions
Chord State Machine
Chord type heuristic
(From music theory)
19
Chord Phrasing
Forcing a phrase to end in a chord (e.g. V7)
produces clearer phrase boundaries.
C I iii vi IV ii V7 I V7
If this isnt possible
C I iii vi IV ii I iii V7
Take 2 steps back!
C I iii vi IV ii V7
20
Savant Modes
Write a Comment
User Comments (0)
About PowerShow.com