Spaces:
Running on Zero
A newer version of the Gradio SDK is available: 6.26.0
title: MeanVC2 Voice Conversion
emoji: 🎙️
colorFrom: blue
colorTo: red
sdk: gradio
sdk_version: 6.22.0
app_file: app.py
short_description: Streaming zero-shot voice conversion with MeanVC2
python_version: '3.12'
startup_duration_timeout: 30m
MeanVC2 — Streaming Zero-Shot Voice Conversion
Gradio / ZeroGPU demo of ASLP-lab/MeanVC2: an 18M-parameter, low-latency streaming zero-shot voice conversion system built on a mean-flow conditional-flow-matching objective with Future-Receptive Chunking (FRC) and a Universal Timbre Token Encoder (UTTE).
Give it a source clip (the speech content you want to keep) and a reference clip (the voice you want to hear), and it returns the source content spoken in the reference speaker's voice at 16 kHz.
Pipeline
Ported 1:1 from the authors' src/infer/infer_e2e.py
(github.com/ASLP-lab/MeanVC2):
| Stage | Component |
|---|---|
| Content | Fast-U2++ streaming ASR encoder (fastu2pp_80ms.pt, JIT) → bottleneck features |
| Timbre | WavLM-Large + ECAPA-TDNN → 256-d speaker embedding |
| Decoder | 4-layer chunked DiT, mean-flow CFM, KV-cached streaming inference |
| Vocoder | Vocos (JIT) → 16 kHz waveform |
Two decoders are preloaded: 120 ms + 40 ms (best quality) and 40 ms + 40 ms
(lowest latency).
Ethics
MeanVC2 is Apache-2.0 licensed and released for research and legitimate applications. Obtain consent from anyone whose voice you convert or use as a reference. Do not use this for impersonation, fraud, or misleading audio.