{"id":27559943,"url":"https://github.com/dachosen1/common-voice","last_synced_at":"2025-04-20T02:55:42.509Z","repository":{"id":37947854,"uuid":"241512365","full_name":"dachosen1/Common-Voice","owner":"dachosen1","description":"Audio Classification with machine learning ","archived":false,"fork":false,"pushed_at":"2023-03-06T22:03:49.000Z","size":70785,"stargazers_count":18,"open_issues_count":14,"forks_count":5,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-04-20T02:55:38.070Z","etag":null,"topics":["audio-processing","machine-learning","streaming-audio","voice"],"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/dachosen1.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}},"created_at":"2020-02-19T02:14:20.000Z","updated_at":"2025-03-26T01:35:49.000Z","dependencies_parsed_at":"2023-02-13T03:30:54.546Z","dependency_job_id":null,"html_url":"https://github.com/dachosen1/Common-Voice","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dachosen1%2FCommon-Voice","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dachosen1%2FCommon-Voice/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dachosen1%2FCommon-Voice/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dachosen1%2FCommon-Voice/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/dachosen1","download_url":"https://codeload.github.com/dachosen1/Common-Voice/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":249841728,"owners_count":21333099,"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-processing","machine-learning","streaming-audio","voice"],"created_at":"2025-04-20T02:55:41.560Z","updated_at":"2025-04-20T02:55:42.504Z","avatar_url":"https://github.com/dachosen1.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"## Common Voice\n[![Total alerts](https://img.shields.io/lgtm/alerts/g/dachosen1/Common-Voice.svg?logo=lgtm\u0026logoWidth=18)](https://lgtm.com/projects/g/dachosen1/Common-Voice/alerts/)\n[![Language grade: JavaScript](https://img.shields.io/lgtm/grade/javascript/g/dachosen1/Common-Voice.svg?logo=lgtm\u0026logoWidth=18)](https://lgtm.com/projects/g/dachosen1/Common-Voice/context:javascript)\n[![Language grade: Python](https://img.shields.io/lgtm/grade/python/g/dachosen1/Common-Voice.svg?logo=lgtm\u0026logoWidth=18)](https://lgtm.com/projects/g/dachosen1/Common-Voice/context:python)\n\n**Live Deployment**: [Commvoice](https://commvoice.me/)\n\n### Data  \nThe data for this project is sourced from [Common Voice](https://commonvoice.mozilla.org/en), which is a crowdsourcing project started by Mozilla to create a free database for speech recognition software. The project is supported by volunteers who record sample sentences with a microphone and review recordings of other users. The transcribed sentences will be collected in a voice database available under the public domain license CC0. This license ensures that developers can use the database for voice-to-text applications without restrictions or costs. Common Voice appeared as a response to the language assistants of large companies such as Amazon Echo, Siri or Google Assistant\n\n# Overview\nThe goal for this project is to create an end to end machine learning appliacation that records and processes audio in real time and stream prediction via a socket API. There's a 1 second delay delay between the audio recording and the output prediction.\n\n![Common Voice](https://user-images.githubusercontent.com/40616129/107158901-bd05d980-6941-11eb-92b5-12d7c001d5a1.PNG)\n\nThe application generates prediction in 3 categories: Gender, Age and Country of Origin. \n\n## Todo:\nTraing and implement models for Country and Age\n\n# Getting Started: \n## Train Model \n\nModify the Data Directory to your own direcory \n\n```\nclass DataDirectory:\n    DATA_DIR = r\"C:\\Users\\ander\\Documents\\common-voice-data\"\n    DEV_DIR = r\"C:\\Users\\ander\\Documents\\common-voice-dev\"\n    CLIPS_DIR = r\"C:\\Users\\ander\\Documents\\common-voice-data\\clips\"\n```\n\nRun machine learning pipeline\n```\npython run_pipeline.py\n```\n## Deploy Model\nWindows Machine \n\n```\npip3 install -r requirements.txt\npython3 run_app.py\n```\n\nLinux \nInstall the below on the server prior to running the docker images \n\n**Step 1:** Install Docker and Docker  Compose \n\n```\n# Install Docker compose \nsudo curl -L \"https://github.com/docker/compose/releases/download/1.28.2/docker-compose-$(uname -s)-$(uname -m)\" -o /usr/local/bin/docker-compose\nsudo chmod +x /usr/local/bin/docker-compose\n\nsudo ln -s /usr/local/bin/docker-compose /usr/bin/docker-compose\n\n# Install Docker \nsudo apt-get update\n\nsudo apt-get install \\\n    apt-transport-https \\\n    ca-certificates \\\n    curl \\\n    gnupg-agent \\\n    software-properties-common\n\ncurl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -\n\nsudo apt-key fingerprint 0EBFCD88\n\nsudo add-apt-repository \\\n   \"deb [arch=amd64] https://download.docker.com/linux/ubuntu \\\n   $(lsb_release -cs) \\\n   stable\"\n\nsudo apt-get update\nsudo apt-get install docker-ce docker-ce-cli containerd.io\n```\n\n**Step 2:** Install Nginx \n\n```\n# Install NGINX \nsudo apt install certbot python3-certbot-nginx\nsudo nano /etc/nginx/sites-available/commvoice.me\n...\nserver_name WEBSITE_NAME WEBSITE_NAME;\n...\n\n```\n\n**Step 3:** Install Certbot \n\n```\n# Install Certbot \nsudo certbot --nginx -d commvoice.me -d www.commvoice.me\n\n# Install Dhparam \nopenssl dhparam -out /etc/nginx/dhparam.pem 2048\n\n# Install Certbot Auto Renew \nsystemctl status certbot.timer\n```\n\n**Step 4:** Install and audio Drive \nEnabled a snd-aloop modules \n\n```\nmodprobe snd-aloop\n```\nThe below devices should have been added to you dev/snd directory.\n\n```\nls /dev/snd/\n\n    -  pcmC0D0c\n    -  pcmC0D0p\n    -  pcmC0D1c\n```\n\n**Step 5:** Run Docker Compose \n\n```\ndocker-commpose up --build\n```\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdachosen1%2Fcommon-voice","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fdachosen1%2Fcommon-voice","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdachosen1%2Fcommon-voice/lists"}