jacbz/Lofi

ML-supported lo-fi music generator

What it solves

It provides a way to automatically generate lo-fi music tracks by representing musical elements like chords and melodies as mathematical vectors that can be manipulated to create different sounds.

How it works

The project uses a Variational Autoencoder (VAE) model built with PyTorch, trained on datasets from Spotify and Hooktheory. This model compresses a lo-fi track into a vector of 100 features. A Flask server hosts the model, and a TypeScript web client uses Tone.js to translate these feature vectors back into audible music.

Who it’s for

Musicians, developers, or hobbyists interested in AI-generated music and the intersection of machine learning and audio synthesis.

Highlights

  • Uses a VAE to represent music as a 100-feature vector.
  • Integrates Tone.js for real-time audio generation in the browser.
  • Supports custom model training and deployment via Docker.

Related

  • Project
  • Project
  • Project
  • Project