Skip to content

Argha-Nilanjon-Nondi/ml_back

Repository files navigation

ML BACK ( made with Termux in Smartphone)

Welcome to ML BACK: Denoising Audio Files

ML BACK is an innovative Django project designed to tackle the challenge of audio denoising using machine learning techniques. Actually the project acts like a client . Real processing takes place in https://github.com/Argha-Nilanjon-Nondi/server .This repository serves as a comprehensive resource for anyone interested in enhancing the quality of audio recordings by removing unwanted noise. Whether you're a developer, researcher, or audio enthusiast, this project provides you with a powerful toolset to dive into the world of audio processing and machine learning

Features

  • Denoise Audio
  • Super User Support
  • Normal User Support
  • User can only access own record
  • Encrypt with ECC before sending for processing

Screenshots





  • Run django server Screenshot 3


  • Run redis server ( As a message broker ) Screenshot 4


  • Run celery with watchfiles Screenshot 5


  • Login to admin . You can use
Email Password User Type
super@django.com django1234 Super
normal@django.com django1234 Regular

Screenshot 6

  • Music table Screenshot 7


  • Submit a noisy audio Screenshot 8


  • denoise process is completed and user is notified by email ( See yellow colored text ) Screenshot 9


  • Go to url and you can see a the denoised version of that audio Screenshot 10


Demo

Original

Denoised

Setup

  • Clone the project
git clone https://github.com/Argha-Nilanjon-Nondi/ml_back
cd ml_back
  • Install packages
pip install -r requirements.txt
npx: installed 22 in 4.629s
your url is: https://busy-insects-mix.loca.lt
 * Serving Flask app 'app'
 * Debug mode: on
WARNING: This is a development server. Do not use it in a production deployment. Use a production WSGI server instead.
 * Running on http://127.0.0.1:5000
Press CTRL+C to quit
 * Restarting with stat
 * Debugger is active!
 * Debugger PIN: 125-349-859
  DENOISE_URL="https://busy-insects-mix.loca.lt/api/upload"
  • Run Redis server
redis-server
  • Run celery task with watchfiles (to stay update)
watchfiles --filter python "python -m celery -A ml_back worker -l info"
  • Start django server
python manage.py runserver

Tech Stack

Python 3.11    Django     django-api-admin     django-rest-framework     djangorestframework     celery     redis     colorama     crypto     cryptography     watchfiles

Future Plans

  • Expose functionality as Rest API
  • Remove password changing form in superuser administration
  • Create a new Web UI
  • Enhance celery error handling

Lessons Learned

  • Django is all about customization
  • Basic of OOP is must to work with Django
  • If you don't like anything , just overwrite it ( Of course in project , not in actual framework)
  • Anything can be customized but has a limit
  • Always read documentation carefully
  • Write comment in code , otherwise you will forget
  • Test ai generated code before applying them in project
  • If you can't figure out anything , just leave it , take rest and back with a fresh mind

License

This project is licensed under the Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License.

You are free to:

  • Share: Copy and redistribute the material in any medium or format.
  • Adapt: Remix, transform, and build upon the material.

The licensor cannot revoke these freedoms as long as you follow the license terms.

Under the following terms:

  • Attribution: You must give appropriate credit, provide a link to the license, and indicate if changes were made. You may do so in any reasonable manner, but not in any way that suggests the licensor endorses you or your use.

  • NonCommercial: You may not use the material for commercial purposes.

  • ShareAlike: If you remix, transform, or build upon the material, you must distribute your contributions under the same license as the original.

Read the full license here.

This license is intended to ensure that the project is used exclusively for educational and non-commercial purposes.

Acknowledgements

Documentation Websites

Websites and Resources

I would like to acknowledge that during the development of this project, I received valuable coding assistance from AI and chatbot services. The services that contributed to my coding process include:

  • chat.openai.com: This AI-powered chatbot service provided me with suggestions, explanations, and code snippets that helped me overcome coding challenges in various parts of the project.

  • perplexity.ai: I utilized the capabilities of perplexity.ai to refine my code by evaluating its readability and complexity, ensuring that the codebase follows best practices.

These AI and chatbot services significantly enhanced my productivity and problem-solving capabilities. While the assistance from these services played a role in my development process, I reviewed, customized, and integrated all code in this repository to ensure its correctness and alignment with the project's goals.

I extend my gratitude to the developers and teams behind chat.openai.com and perplexity.ai for creating tools that provide innovative solutions for coding challenges.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published