From 0e3ed60c8b85e5c0184e36ea67f6730e63436032 Mon Sep 17 00:00:00 2001 From: dev-Develope Date: Wed, 10 Jun 2026 18:08:01 +0530 Subject: [PATCH] feat(60db): add voice provider integration with STT, TTS, and WebSocket streaming --- README.md | 16 ++++ backend/routes/settings.js | 35 ++++++++- backend/routes/sixtydb.js | 145 +++++++++++++++++++++++++++++++++++++ backend/server.js | 4 + 4 files changed, 197 insertions(+), 3 deletions(-) create mode 100644 backend/routes/sixtydb.js diff --git a/README.md b/README.md index 7117597..9e4dc51 100644 --- a/README.md +++ b/README.md @@ -154,8 +154,24 @@ The visual style is fully customisable: expand **Advanced — Customize System P | Provider | Capability | |---|---| | **ElevenLabs** | Scene-by-scene narration voiceover + SFX generation | +| **60db** | Cloud TTS peer of ElevenLabs (this fork — `/api/sixtydb/voices` + `/tts` + `/tts/scene`; no SFX surface) | | **Local TTS** | Bring your own (QWEN TTS, Kokoro, etc.) — zero cost | +#### 60db provider (alongside ElevenLabs) + +This fork adds `backend/routes/sixtydb.js` as a parallel route module. It mirrors the ElevenLabs route shape so the frontend can swap providers per request by changing endpoint URLs only: + +| ElevenLabs | 60db equivalent | +|---|---| +| `GET /api/elevenlabs/voices` | `GET /api/sixtydb/voices` | +| `POST /api/elevenlabs/tts` | `POST /api/sixtydb/tts` | +| `POST /api/elevenlabs/tts/scene` | `POST /api/sixtydb/tts/scene` | +| `POST /api/elevenlabs/sfx` | _no equivalent — 60db has no SFX endpoint_ | + +Both providers return `data:audio/mp3;base64,…` URLs so `AudioGeneration.jsx`'s `