120 likes | 201 Views
Beethoven’s Ear - Software Narrative. Nick Kwolek David Duemeler Martin Pendergast Stephen Edwards. Outline. Project Overview Signal Processing Code MIDI Transcription Code User Interface Code. Project Overview. A music composition and instruction tool
E N D
Beethoven’s Ear - Software Narrative Nick Kwolek David Duemeler Martin Pendergast Stephen Edwards
Outline • Project Overview • Signal Processing Code • MIDI Transcription Code • User Interface Code
Project Overview • A music composition and instruction tool • Records audio of a musical instrument and creates MIDI sheet music of the audio • Files transferred via SD card
Project-Specific Success Criteria • An ability to sample an audio signal with appropriate input filtering. • An ability to transform an audio signal to the frequency domain in finite length sample windows. • An ability to determine the note names and durations based on the frequency spectrum and an internal metronome. • An ability to generate a musical score stored in a MIDI file, based on the analyzed data. • An ability to transfer the completed music file to a removable storage medium.
Signal Processing Software • Currently a Matlab script • Possibility of Using Microchip IDE to directly comply code to dsPIC • If not, port code to C, then compile to dsPIC • Uses an FFT to create frequency spectrum • Window size: 4096 • Decimation and window lag can be varied • Selects the highest amplitude frequency as the fundamental
DSP Software Frequency Window Index
MIDI Transcription Software • Takes output of Signal Processing Software • Composes MIDI file header • BPM – Set By User • Time Signature – Set By User • Key Signature – Default to C major • Writes music data to SD card over SPI line
User Interface Software • Menu Based Display on the LCD • Beats Per Minute • Time Signature • Reads Data from RPG and push buttons • Processes Start and Stop Recording Signals