{"id":16610453,"url":"https://github.com/sreyasaju/harmonize","last_synced_at":"2025-08-19T10:07:20.779Z","repository":{"id":247259758,"uuid":"823866581","full_name":"sreyasaju/harmonize","owner":"sreyasaju","description":"A Python app that converts vocal recordings into MIDI files. Transform your singing into digital music!","archived":false,"fork":false,"pushed_at":"2025-07-18T14:03:14.000Z","size":4612,"stargazers_count":12,"open_issues_count":1,"forks_count":1,"subscribers_count":2,"default_branch":"main","last_synced_at":"2025-07-18T14:14:06.920Z","etag":null,"topics":["audio-analysis","audio-processing","midi","music-composition","music-generation","pitch-detection","voice-to-midi"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/sreyasaju.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","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,"zenodo":null}},"created_at":"2024-07-03T22:24:17.000Z","updated_at":"2025-07-18T14:03:18.000Z","dependencies_parsed_at":"2024-07-20T20:24:58.261Z","dependency_job_id":"ac8da73a-bb88-4983-b94a-84d335fdcb16","html_url":"https://github.com/sreyasaju/harmonize","commit_stats":null,"previous_names":["sreyasaju/harmonize"],"tags_count":1,"template":false,"template_full_name":null,"purl":"pkg:github/sreyasaju/harmonize","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sreyasaju%2Fharmonize","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sreyasaju%2Fharmonize/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sreyasaju%2Fharmonize/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sreyasaju%2Fharmonize/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/sreyasaju","download_url":"https://codeload.github.com/sreyasaju/harmonize/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sreyasaju%2Fharmonize/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":271134808,"owners_count":24705100,"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","status":"online","status_checked_at":"2025-08-19T02:00:09.176Z","response_time":63,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"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","audio-processing","midi","music-composition","music-generation","pitch-detection","voice-to-midi"],"created_at":"2024-10-12T01:30:15.438Z","updated_at":"2025-08-19T10:07:20.754Z","avatar_url":"https://github.com/sreyasaju.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# harmonize\n\n![preview.png](assets/preview.png)\n\n\u003e Under development!\n\nharmonize is a voice-to-MIDI python App to convert any human voice recording to MIDI tracks.\nThis uses `librosa` and `mido` for audio analysis and pitch detection, `PyAudio` for recording and `pydub` for playback tasks.\nIt is designed to minimally convert  vocal sounds into MIDI data for use in various musical applications.\n\n## Features \n- Live Audio Recording 🎤: Capture vocal input directly through the application.\n- Pitch Detection 🎵 : Analyze vocal pitch and convert it into MIDI notes.\n- MIDI File Generation 🎹: Save the detected pitches as MIDI files.\n\n## Installation:\n\nClone the repository:\n\n```bash\ngit clone https://github.com/sreyasaju/harmonize.git\ncd harmonize\n```\n\nSetup a Virtual Environment:\n```bash\npython3 -m venv venv\nsource venv/bin/activate  # On Windows use `venv\\Scripts\\activate`\n```\n\nInstall dependencies:\n```bash\npip install -r requirements.txt\n```\nRun the script: \n```bash\npython3 main.py\n```\n## Usage \n\n1. Input the parameters: Enter the filename for saving the voice and the MIDI file \n2. Start Recording!\n3. Play and hear your voice\n4. Convert to MIDI\n5. Listen the MIDI file in your favorite audio editor!\n\n## Contributing\nContributions are welcome! Please submit a pull request or open an issue to discuss potential improvements.\nAdd do star the repo ⭐️\n\n\n## License\n```\nMIT License\n\nCopyright (c) 2024 Sreya Saju\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n```\n\n\u003chr\u003e\nCopyright © 2024 Sreya Saju\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsreyasaju%2Fharmonize","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fsreyasaju%2Fharmonize","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsreyasaju%2Fharmonize/lists"}