Original PR: https://github.com/open-webui/open-webui/pull/22175 Author: @neilruaro-camb Created: 3/3/2026 Status: ❌ Closed
Base: main ← Head: feat/camb-ai-tts
main
feat/camb-ai-tts
7b65676
5 files changed (+269 additions, -1 deletions)
📝 Dockerfile (+1 -1) 📝 backend/open_webui/config.py (+15 -0) 📝 backend/open_webui/main.py (+5 -0) 📝 backend/open_webui/routers/audio.py (+164 -0) 📝 src/lib/components/admin/Settings/Audio.svelte (+84 -0)
Dockerfile
backend/open_webui/config.py
backend/open_webui/main.py
backend/open_webui/routers/audio.py
src/lib/components/admin/Settings/Audio.svelte
/tts-stream
/translated-tts
config.py
main.py
routers/audio.py
Audio.svelte
NODE_OPTIONS
🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.
No dependencies set.
The note is not visible to the blocked user.
📋 Pull Request Information
Original PR: https://github.com/open-webui/open-webui/pull/22175
Author: @neilruaro-camb
Created: 3/3/2026
Status: ❌ Closed
Base:
main← Head:feat/camb-ai-tts📝 Commits (1)
7b65676feat: add CAMB AI as TTS engine📊 Changes
5 files changed (+269 additions, -1 deletions)
View changed files
📝
Dockerfile(+1 -1)📝
backend/open_webui/config.py(+15 -0)📝
backend/open_webui/main.py(+5 -0)📝
backend/open_webui/routers/audio.py(+164 -0)📝
src/lib/components/admin/Settings/Audio.svelte(+84 -0)📄 Description
Summary
/tts-streamand translated TTS via/translated-ttswith configurable target languageChanges
config.py— CAMB AI config variables (API base URL, API key, target language)main.py— Wire configs to app staterouters/audio.py— TTS handler, voice/model listing, config endpoints, async poll helperAudio.svelte— CAMB AI option in TTS dropdown, API key input, target language field, voice/model selectorsDockerfile— EnableNODE_OPTIONSfor build memory🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.