dechorder - automatic recognition of chords in music

12
Dechorder Automatic Recognition of Chords in Music Yuriy Guts

Upload: yuriy-guts

Post on 16-Apr-2017

1.027 views

Category:

Software


4 download

TRANSCRIPT

Page 1: Dechorder - Automatic Recognition of Chords in Music

DechorderAutomatic Recognition of Chords in Music

Yuriy Guts

Page 2: Dechorder - Automatic Recognition of Chords in Music

ProblemFor amateur musicians, ear training is hard

Page 3: Dechorder - Automatic Recognition of Chords in Music

Requires Years of Practice

I’ve heard this so many times.It’s a II – V – I blues progression

starting with a B flat minor

Umm… it sounds minor-ish...Or is it a minor 7th?

How do I know for sure?

Page 4: Dechorder - Automatic Recognition of Chords in Music

Maybe a Machine Can HelpAnalyze any piece of music through frequency decomposition

Detect the chords it’s built on

Provide insights into the structure of the song

Page 5: Dechorder - Automatic Recognition of Chords in Music

System Scope

• Recording / importing audio• Submitting audio to the server• Playback and visualization

• Audio feature extraction• Learning and prediction model• Web API services

Client Side Server Side

Page 6: Dechorder - Automatic Recognition of Chords in Music

Recognition: Step 1

Convert time domain to frequency domain(Fast Fourier Transform)

Produce chromagrams

Page 7: Dechorder - Automatic Recognition of Chords in Music

Recognition: Step 2

Classify chromagrams with a Feed-Forward Neural Network

chord probabilities

chromastrengths

Page 8: Dechorder - Automatic Recognition of Chords in Music

Client: iOS App

Audio Recording Data Persistence Audio Playback

Waveform VisualizationAsync Networking

Page 9: Dechorder - Automatic Recognition of Chords in Music
Page 10: Dechorder - Automatic Recognition of Chords in Music

Technology: Client

• Programming Language: Swift 2.1• Audio operations: AVFoundation, EZAudio• Persistence: CoreData (SQLite)• Network: Alamofire, SwiftyJSON

Page 11: Dechorder - Automatic Recognition of Chords in Music

Technology: Server

• Programming language: Python 2• Preprocessing and feature extraction: scipy.signal• Machine Learning: scikit-learn, ffnet• API services: Flask-RESTful

Page 12: Dechorder - Automatic Recognition of Chords in Music

Coming Soon to App Store :)

Dechorder