{"id":13737394,"url":"https://github.com/TomSchimansky/GuitarTuner","last_synced_at":"2025-05-08T13:33:51.634Z","repository":{"id":38371772,"uuid":"269478015","full_name":"TomSchimansky/GuitarTuner","owner":"TomSchimansky","description":"Guitar tuner program made with Python, Tkinter and PyAudio.","archived":false,"fork":false,"pushed_at":"2024-02-20T15:21:31.000Z","size":48120,"stargazers_count":168,"open_issues_count":5,"forks_count":50,"subscribers_count":3,"default_branch":"master","last_synced_at":"2025-05-07T15:51:50.695Z","etag":null,"topics":["audio-analysis","chromatic-tuner","dark-mode","gui-application","guitar","guitar-tuner","macos","macos-app","music","numpy","py2app","pyaudio","python","python3","tkinter","tkinter-gui","tkinter-python","tuner","ui-design"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/TomSchimansky.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE.txt","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2020-06-04T22:26:15.000Z","updated_at":"2025-05-03T13:51:23.000Z","dependencies_parsed_at":"2024-10-03T21:50:54.284Z","dependency_job_id":"5450070f-2f88-47e5-a35c-574b9623c5f6","html_url":"https://github.com/TomSchimansky/GuitarTuner","commit_stats":null,"previous_names":[],"tags_count":3,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/TomSchimansky%2FGuitarTuner","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/TomSchimansky%2FGuitarTuner/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/TomSchimansky%2FGuitarTuner/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/TomSchimansky%2FGuitarTuner/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/TomSchimansky","download_url":"https://codeload.github.com/TomSchimansky/GuitarTuner/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":253077664,"owners_count":21850361,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["audio-analysis","chromatic-tuner","dark-mode","gui-application","guitar","guitar-tuner","macos","macos-app","music","numpy","py2app","pyaudio","python","python3","tkinter","tkinter-gui","tkinter-python","tuner","ui-design"],"created_at":"2024-08-03T03:01:46.263Z","updated_at":"2025-05-08T13:33:51.615Z","avatar_url":"https://github.com/TomSchimansky.png","language":"Python","funding_links":[],"categories":["Python"],"sub_categories":[],"readme":"![GitHub release (latest by date)](https://img.shields.io/github/v/release/TomSchimansky/GuitarTuner)\n![GitHub all releases](https://img.shields.io/github/downloads/TomSchimansky/GuitarTuner/total?color=green\u0026label=macOS%20release%20downloads)\n![GitHub Release Date](https://img.shields.io/github/release-date/TomSchimansky/GuitarTuner?color=green)\n\n# GuitarTuner App\n\n![](documentation/readme_images/Preview_Dark.png)\n\nThis is a simple **chromatic tuner** designed for guitar tuning, but it should also work with every other instrument.\nThe played note is automatically recognized through the microphone, and an acoustic signal is\nheard when the tuning is correct. If you want you can also change the reference-tone to another\nfrequency. At the moment, a compiled version is only available for macOS, but you can use it on\nWindows too if you run it in the command line.\n\n* Automatic tone detection\n* High accuracy: \u003c 0.5 cents (around the A4 area)\n* Working from 60 to 2000 Hz (C2 to C7)\n* High stability of the pitch indicator\n* Support for macOS light and dark-mode\n\n### **➜️ Download macOS app (Intel only):** [\u003cu\u003eDownload here\u003c/u\u003e](https://github.com/TomSchimansky/GuitarTuner/releases/tag/3.2)\n\n![](documentation/readme_images/Icon_Banner.png)\n\n### Functionality\n\nThe app is written in Python with Tkinter, PyAudio and numpy. It uses PyAudio to get access to the raw audio-stream coming from the microphone.\nThen a **fast-fourier-transformation** (```numpy.fft```) is applied on the audio-data, which is buffered for about 1.5 seconds.\nThen a HPS (Harmonic Product Spectrum) operation is applied to filter the harmonic frequencies.\nFrom the HPS output, you can get the loudest frequency and convert it to a musical note by applying the following\nformula: ```12 * numpy.log2(f / a4_frequency) + 69```.\n\n### Run GuitarTuner with python\nFirst you need to install all necessary libraries:\n```\npip3 install -r requirements.txt\n```\nThen you can do:\n```\npython3 main.py\n```\n\n### Create standalone application\nYou can also create a standalone application for macOS or Windows by yourself. For macOS you can use py2app:\n```\npython3.8 setup.py py2app\n```\nFor windows, you would need to use py2exe instead and modify the setup.py file.\n\nTo keep application size as small as possible, make sure you create a virtual environment where you install\nonly the necessary libraries. The macOS dark-mode currently **only** works with the **anaconda python** Version.\nIf you compile the app with a python.org version, you have to disable the dark-mode by deleting\nthe ```'NSRequiresAquaSystemAppearance': False```entry in setup.py, which causes the application window to go\ninto dark-mode.\n\n![](documentation/readme_images/Preview_Light.png)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FTomSchimansky%2FGuitarTuner","html_url":"https://awesome.ecosyste.ms/projects/github.com%2FTomSchimansky%2FGuitarTuner","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FTomSchimansky%2FGuitarTuner/lists"}