Skip to content

A real-time guitar tuner application written in C++ using PortAudio for audio input and FFTW for frequency analysis. It captures audio from the microphone, computes the dominant frequency using FFT, and identifies the closest musical note to help tune your guitar accurately.

License

Notifications You must be signed in to change notification settings

aashishbishow/Guitar-Tuner

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

8 Commits
 
 
 
 
 
 
 
 

Repository files navigation

Guitar Tuner Application

This project is a guitar tuner application built for Linux and WSL. It uses the PortAudio library for real-time audio input and the FFTW library for frequency analysis. The application detects the frequency of the played guitar string and matches it to the closest musical note.

Features

  • Real-time audio input processing using PortAudio.
  • Frequency analysis using FFTW.
  • Detection of the closest musical note to the detected frequency.
  • User-friendly console output displaying the detected frequency and closest note.

Prerequisites

Before you begin, ensure you have met the following requirements:

Installing Dependencies

To install the necessary libraries, run the following commands:

# Install PortAudio
sudo apt-get install portaudio19-dev

# Install FFTW
sudo apt-get install libfftw3-dev

Usage

  1. Clone this repository to your local machine.
git clone https://github.com/aashishbishow/tuner.git
cd tuner
  1. Compile the application using g++.
g++ -o guitar_tuner tuner.cpp -lportaudio -lfftw3
  1. Run the application.
./guitar_tuner
  1. Play a note on your guitar. The application will display the detected frequency and the closest musical note.

  2. Press Enter to quit the application.

Contribution

Contributions are always welcome! Please adhere to the following guidelines:

  1. Fork the repository.
  2. Create a new branch (git checkout -b feature-foo).
  3. Make your changes.
  4. Commit your changes (git commit -m 'Add some foo').
  5. Push to the branch (git push origin feature-foo).
  6. Open a pull request.

License

This project is licensed under the MIT License. See the LICENSE file for details.

About

A real-time guitar tuner application written in C++ using PortAudio for audio input and FFTW for frequency analysis. It captures audio from the microphone, computes the dominant frequency using FFT, and identifies the closest musical note to help tune your guitar accurately.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages