Voice Training Karaoke Machine 6.111 Final Project Masood Qazi Zhongying Zhou 6.111 Spring 2006 May 17, 2006 Abstract: A Karaoke has been implemented for the purpose of vocal training. It will have as its two primary inputs the user's singing and the notes from the sheet music of the vocals for a selected song. The user's voice will be recorded through a microphone interfaced to an analog to digital converter. The power spectrum of the user’s voice will be computed and analyzed to infer the note being sung. The system will then compare the user's singing, by pitch and rhythm, with what is described in the sheet music. This comparative analysis is presented in a meaningful way to the user through a VGA display. Finally, the user will also have access to audio outputs such as the sequence of correct tones and the user's recorded voice through headphones. This system demonstrates important design concepts such as modularity and integration. In particular, testing was made more efficient by debugging smaller chunks such as the Fourier Transform or the Video Display at one time. A secondary round of testing was needed once the blocks were integrated.Table of Contents: 1 OVERVIEW.........................................................................................................................................2 1.1 OPERATION .................................................................................................................................. 3 1.2 IMPLEMENTATION ........................................................................................................................ 5 2 AUDIO INTERFACING, SPECTRUM ANALYSIS, NOTE SYNTHESIS (MQ) ........................5 2.1 REPRESENTATION OF NOTES (MQ) .............................................................................................. 5 2.2 AC97 AUDIO INTERFACE (MQ) ................................................................................................... 6 2.3 NOTE SYNTHESIS.......................................................................................................................... 8 2.4 FFT AND NOTE DETECTION (MQ) ................................................................................................ 9 3 MUSIC READING AND COMPARISON DISPLAY (ZZ)...........................................................10 3.1 PULSIFY ..................................................................................................................................... 10 3.2 DIVIDER ..................................................................................................................................... 11 3.3 MUSIC READER FINITE STATE MACHINE ................................................................................... 11 3.4 VIDEO DISPLAY.......................................................................................................................... 12 4 TESTING AND DEBUGGING ........................................................................................................15 5 CONCLUSION ..................................................................................................................................16 List of Figures: FIGURE 1 : LED DISPLAY FOR ADDRESS AND RHYTHM ................................................................................... 4 FIGURE 2: POSITIONING OF OUTPUTS ON VISUAL DISPLAY............................................................................... 4 FIGURE 3: TOP-LEVEL BLOCK DIAGRAM.......................................................................................................... 3 FIGURE 4: CYCLICAL INDEXING OF NOTES ....................................................................................................... 6 FIGURE 5: BLOCK DIAGRAM FOR AC97 AUDIO INTERFACE ............................................................................. 7 FIGURE 6: EXAMPLE TIMING DIAGRAM ILLUSTRATING SERIAL TO PARALLEL CONVERSION............................. 8 FIGURE 7: SYNTHESIZER BLOCK DIAGRAM...................................................................................................... 8 FIGURE 9: FFT CONROL FSM.......................................................................................................................... 9 FIGURE 8: FFT BLOCK DIAGRAM .................................................................................................................. 10 FIGURE 10: SPECTRUM PROCESSING FSM ..................................................................................................... 10 FIGURE 11: STATE TRANSITION DIAGRAM FOR MUSIC READER...................................................................... 12 FIGURE 12: DISPLAY BLOCK DIAGRAM ......................................................................................................... 13 FIGURE 13: DRAW GRAPH BLOCK DIAGRAM................................................................................................. 14 FIGURE 14: DRAW FFT BLOCK DIAGRAM ..................................................................................................... 14 FIGURE 15: PULSIFY MODULE SIMULATION WAVEFORM............................................................................... 15 FIGURE 16: FSM SIVMULATION WAVEFORM DEMONSTRATING PAUSE STATE............................................... 15 List of Tables: TABLE 1 : NOTE DURATION AND SWITCH VALUES FOR DIFFERENT TEMPOS .................................................... 4 TABLE 2: ENCODING OF LOWER 4 BITS OF A NOTE IN HEX .............................................................................. 5 TABLE 3: INFORMATION RELATED TO MUSIC NOTES (EXAMPLE FOR OCTAVE 5) .............................................. 6 TABLE 4: CLOCK CYCLES CORRESPONDING TO TEMPO ................................................................................. 11 TABLE 5 : OUTPUTS FOR FSM STATES........................................................................................................... 11 1 Overview Many times, people cannot distinguish whether they are singing the correct pitch in a song. This is may be due to the inability to hear their own voice, or due to the presence of background instrumentals of a song. As a result, many people might consider themselves to be good singers and embarrass themselves if in reality as they sing off-key. The purpose of this project is to allow users to have a more objective feedback to their singing. There
View Full Document