vllm-project/vllm-omni

[New Model] Fun-CineForge (Zero-Shot Movie Dubbing)

Open

#2,002 opened on Mar 19, 2026

View on GitHub
 (7 comments) (0 reactions) (1 assignee)Python (1,067 forks)github user discovery
good first issuehelp wantednew model

Repository metrics

Stars
 (4,990 stars)
PR merge metrics
 (PR metrics pending)

Description

Model

Fun-CineForge by FunAudioLLM — an MLLM-based zero-shot movie dubbing model for diverse cinematic scenes (monologue, narration, dialogue, multi-speaker).

Architecture

Built on CosyVoice 3 with two generation stages:

  • Stage 0 - MLLM: text + facial frames + lip frames + speaker reference audio → speech semantic tokens. Uses BPE tokenization, facial/lip encoders, and contrastive learning for lip-sync alignment.
  • Stage 1 - Flow Matching (DiT): speech tokens + speaker embeddings → mel-spectrograms. Uses speaker switching concatenation for multi-speaker dialogue. HiFiGAN vocoder converts mel to waveform.

Fit with vllm-omni

The two-stage pipeline (AR → flow matching + vocoder) is the same pattern as CosyVoice / Qwen3 TTS. Main additions would be:

  • Multimodal input (video/lip frames) into Stage 0
  • Speaker switching support in the flow matching stage

References

cc @lishunyang12 @divyanshsinghvi — since this is built on CosyVoice 3, would either of you be interested in taking a look?

Contributor guide