Skip to content

rodrickcalvin/Musical-note-identifier-Chromatic-tuner

Repository files navigation

Musical-note-identifier-Chromatic-tuner

Go to Theory.md to get the indepth explanation of the theory behind the system.

After:

  • Clone the project to your local computer.

  • Make sure have a stable python

  • Install the following packages

    For GUI:

    Choose your favorite GUI library to build. The options are:

    • Kivy
    • KivyMD
    • PyQT
    • tKinter

    !!! Disclaimer-1: Choose wisely considering ease of use and quality output...

    For the logic and backend:

    Take note to always use a python version compatible with the libraries. At inintial development we used python version 3.6 because pyAudio wouldn't install on later versions of python 3.7+. I am currently running python 3.8.10 from WSL2 and it works fine.

    • Create a virtual environment using virtualenv or virtualenvwrapper
    • If using windows make sure your visual c++ and build tools are installed. Hence you may need to have visual studio installed on your computer.
    • If you are using WSL/WSL2 OR linux, you may need to install the following packages:
      • libasound2-dev
      • portaudio19-dev
      • libportaudio2
      • libportaudiocpp0
      • ffmpeg
      • libav-tools
      • libavcodec-extra Run the following command to install the required packages:
    $ sudo apt-get install libasound-dev portaudio19-dev libportaudio2 libportaudiocpp0
    $ sudo apt-get install ffmpeg
    • activate your environment: "myenv\Scripts\activate" for virtualenv and "workon myenv" for virtualenvwrapper.
    • install the requirements needed for the project: "pip install -r requirements.txt"
    • Run the multithreading.py file.

    !!! Disclaimer-2: WSL2 might have issues with connecting to audio devices from a windows machine. Solution would be using a USB device or IP

    😊😊😊😊😊😊Enjoy yourself😊😊😊😊😊😊

    Contributions:

    You are welcome to contribute to this project. Just star the project and cite it in your work

    We developed it during a process to find a solution to an assignment in the course: Audio and Speech Signal Processing under the Computer Engineering undergraduate programme at university.

    We were asked to develop a simple audio processing application using what we had learnt. And so we came up with the idea as a small project.

    A big shoutout Matt Zucker from Philadelphia for the repository that guided us through the creation of this application.....

    MINI-PROJECT YOU CAN PLAY WITH:

    As I was building the tuner or note identifier, I also build a recorder that takes in the length of the recording(time in seconds) & the name of the file as imputs. You can also use this to your advantage.

    $ cd recorder
    $ python recorder.py

    Contact:

    You can get the contact details of the developers from the site:

About

Audio and Speech Signal Processing project about musical note identification.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages