ServeurpersoCom/acestep.cpp
Portable C++17 implementation of ACE-Step 1.5 AI Music Generator using GGML. Text + lyrics in, stereo 48kHz MP3 or WAV out. Runs on CPU, CUDA, ROCm, Metal, Vulkan.
What it solves
It provides a high-performance, local server for generating AI music from text descriptions. It allows users to create stereo 48kHz audio tracks on their own hardware without relying on cloud services, supporting a wide range of hardware backends including CPUs and various GPUs.
How it works
The project is a native C++ implementation powered by GGML, serving as a backend for the ACE-Step 1.5 models. It uses a pipeline consisting of a Language Model (LM) to generate lyrics and audio codes, a Diffusion Transformer (DiT) to render those codes, and a Variational Autoencoder (VAE) to produce the final audio. The system includes a browser-based WebUI for easy interaction and an API for advanced users to integrate the generation process into other applications.
Who it’s for
- Musicians and creators who want to generate AI music locally with a simple interface.
- Developers looking to integrate music generation capabilities via a REST API.
- Power users who prefer running models on diverse hardware (NVIDIA, AMD, Intel, or Apple Silicon).
Highlights
- Broad Hardware Support: Runs on CPU, CUDA, Metal, and Vulkan.
- Flexible Model Options: Supports multiple LM sizes (0.6B to 4B) and various DiT variants (turbo for speed or sft for quality).
- Local Control: Full local execution with a browser UI for writing captions, setting lyrics, and downloading tracks.
- C++ Implementation: Optimized for performance using GGML and GGUF model formats.
- Advanced Features: Supports LoRA adapters for style tuning and a reverse pipeline to extract metadata and lyrics from existing audio.
Related
- Project
- Project
- Project
- Project
- Project