Skip to content

Add CAMB AI integration for TTS, transcription, translation, and end-to-end dubbing#76

Open
neilruaro-camb wants to merge 1 commit into
Kedreamix:mainfrom
neilruaro-camb:feat/camb-ai-integration
Open

Add CAMB AI integration for TTS, transcription, translation, and end-to-end dubbing#76
neilruaro-camb wants to merge 1 commit into
Kedreamix:mainfrom
neilruaro-camb:feat/camb-ai-integration

Conversation

@neilruaro-camb

Copy link
Copy Markdown

Summary

Hi there! 👋 We're the team at CAMB AI — the localization engine behind major sports brands including the Premier League, NBA, NASCAR, and the Australian Open.

We'd love to contribute a CAMB AI integration to Linly-Dubbing. This PR adds CAMB AI as an option across the entire pipeline:

  • End-to-end dubbing — single API call via /dub endpoint replaces the full pipeline
  • Text-to-Speech — voice cloning + synthesis via /tts-stream
  • Transcription/ASR — speech-to-text via /transcribe
  • Translation — batch translation via /translate

All features are opt-in and require a CAMB_API_KEY (free to get at camb.ai). Existing functionality is untouched — CAMB AI is simply added as an additional option alongside the current methods.

简要说明

我们是 CAMB AI 团队,为英超联赛、NBA、NASCAR、澳网等知名体育品牌提供本地化服务。

此 PR 将 CAMB AI 作为可选项集成到 Linly-Dubbing 的各个环节:端到端配音、语音合成(TTS)、语音识别(ASR)和翻译。所有功能均为可选,需要 CAMB_API_KEY,不影响现有功能。

Changes

New files

File Description
tools/camb_utils.py Shared CAMB AI utilities (API key, polling, language IDs)
tools/step_camb_dub.py End-to-end video dubbing via CAMB AI /dub API
tools/step023_asr_camb.py Speech-to-text via CAMB AI /transcribe API
tools/step037_translation_camb.py Batch translation via CAMB AI /translate API
tools/step045_tts_camb.py TTS with voice cloning via CAMB AI /tts-stream API

Modified files

File Change
tools/do_everything.py Added "CambAI Dub" early-exit path for end-to-end dubbing; lazy imports for optional dependencies
tools/step020_asr.py Added CambAI as ASR option; lazy imports for WhisperX/FunASR
tools/step030_translation.py Added CambAI as translation backend (batch mode)
tools/step040_tts.py Added CambAI to TTS language support; lazy imports
webui.py Added CambAI to all relevant dropdowns (ASR, translation, TTS)
env.example Added CAMB_API_KEY

Test plan

  • TTS: Generated speech via python -m tools.step045_tts_camb
  • Translation: Batch-translated text via python -m tools.step037_translation_camb
  • End-to-end dubbing: Dubbed a YouTube video (English → Chinese) via step_camb_dub.py
  • Web UI: Verified all CambAI options appear in Gradio dropdowns
  • Backwards compatibility: Existing methods unaffected by changes

…to-end dubbing

Integrate CAMB AI as an optional backend across the Linly-Dubbing pipeline:
- End-to-end dubbing via /dub API (single API call replaces full pipeline)
- Text-to-Speech with voice cloning via /tts-stream API
- Speech-to-text transcription via /transcribe API
- Batch translation via /translate API

All features are opt-in and require a CAMB_API_KEY environment variable.
Existing functionality is untouched.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant