This project implements a MATLAB-based musical note recognition system that identifies musical notes from recorded or uploaded audio using FFT and digital signal processing techniques.
The system extracts the dominant frequency of each segmented note and maps it to the nearest musical pitch and octave.
This project was completed as part of the Signals and Systems (BECE202L) laboratory course.
- Time-domain and frequency-domain analysis of audio signals
- Automatic note segmentation using amplitude-based windowing
- FFT-based dominant frequency detection
- Musical note & octave mapping
- Noise handling and normalization
- Visualizations for waveform, FFT spectrum, and extracted peaks
- Supports
.wavaudio input
- User uploads or records a
.wavfile - Converted into a time-domain signal
- Normalization
- Basic noise reduction
- Windowing to separate individual notes
- Time-domain → Frequency-domain
- Find the dominant frequency peak
- Visualize magnitude spectrum
Detected frequency is mapped to the closest musical note using standard A440 tuning.
Example:
- 440 Hz → A4
- 261.63 Hz → C4
- Time-domain signal
- FFT spectrum
- Dominant frequency marker
- Final identified notes
addpath(genpath('musical-note-identification'));musical_note_identifier.m
The script displays:
- FFT plot
- Dominant frequency
- Musical note + octave classification
- Bojja Divya
- Sujithra S
- Thershna T K
- T Lasya
- Dr. S. Sivakumar (Supervisor)
- MATLAB
- Fast Fourier Transform (FFT)
- Signal Preprocessing
- Peak Detection
This project is licensed under the MIT License.