Skip to content

IrunguNjagi/splitz

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

24 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

🎧 SONIC_SPLIT

AI-powered audio manipulation platform that separates and enhances music tracks directly in the browser.


🚀 Overview

SONIC_SPLIT is a full-stack web application that allows users to:

  • 🎤 Extract vocals from songs
  • 🥁 Isolate drums, bass, and instrumentals
  • 🔊 Apply bass boost enhancements
  • 🎧 Play and download processed audio in real-time

Built with Flutter Web for the frontend and FastAPI + Demucs (AI) for backend processing.


🧠 Features

🎼 AI Stem Separation

  • Powered by Facebook's Demucs model

  • Extract:

    • Vocals
    • Drums
    • Bass
    • Other instruments

🔊 Audio Enhancement

  • Bass boost processing using FFmpeg
  • Download enhanced tracks instantly

🌐 Web-Based Playback

  • Stream processed audio directly in browser
  • No downloads required to preview

📦 File Export

  • Download individual stems
  • Clean API-driven file handling

🏗️ Tech Stack

Frontend

  • Flutter Web
  • Provider (State Management)
  • Audioplayers

Backend

  • FastAPI
  • Demucs (PyTorch)
  • FFmpeg

Infrastructure

  • Local processing (CPU-based)
  • Static file serving via FastAPI
  • GitHub for version control

📂 Project Structure

splitter_app/
│
├── backend/
│   ├── main.py
│   ├── processor.py
│   ├── storage.py
│   ├── uploads/
│   └── outputs/
│
├── splitz/ (Flutter Web)
│   ├── lib/
│   ├── web/
│   └── pubspec.yaml
│
└── README.md

⚙️ How It Works

  1. User uploads an audio file (MP3/WAV)

  2. Backend processes file using:

    • Demucs → stem separation
    • FFmpeg → audio enhancement
  3. API returns downloadable URLs

  4. Flutter UI displays and streams results


🧪 Running Locally

Backend

cd backend
python -m venv venv
venv\Scripts\activate
pip install -r requirements.txt

uvicorn main:app --reload

Frontend

cd splitz
flutter pub get
flutter run -d chrome

🌍 Future Improvements

  • Payment Options for upgrading usage tier
  • ☁️ Cloud deployment (serverless GPU)

📸 Screenshots

Upload Screen Upload Screen 2 Upload Screen 3 Upload Screen 4 Upload Screen 5 Upload Screen 6 Upload Screen 7 Upload Screen 8

💡 Inspiration

Built as a portfolio project exploring:

  • AI in music processing
  • Real-time web audio applications
  • Full-stack Flutter + Python architecture

🧑‍💻 Author

GitHub: https://github.com/IrunguNjagi


⭐️ Show your support

If you like this project, consider starring the repo!

About

AI-powered audio stem separation & enhancement web app built with Flutter and FastAPI. Extract vocals, drums, bass, and apply real-time audio processing on an MP3 file directly in the browser.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors