HTTP proxy TTS backend that delegates synthesis to a GPU inference server.
Source: screencastgen/providers/tts/remote_tts.py
Implements the TTSBackend protocol by proxying requests to a GPU inference server over HTTP. This is the TTS piece of the CPU/GPU split architecture.
At startup it queries GET /health to discover:
output_formatmax_chunk_bytesThose values are then used by local chunking and output handling.
RemoteTTS| Property | Source | Description |
|---|---|---|
max_chunk_bytes |
Server /health |
Remote backend chunk limit |
output_format |
Server /health |
Remote backend output format |
RemoteTTS(
server_url="http://localhost:8100",
language="en-US",
timeout=300,
ref_audio_path=None,
ref_text=None,
)
On init, the backend:
server_urlGET /health| Method | Description |
|---|---|
synthesize(text, output_path) |
Send one request to /synthesize and write returned audio bytes |
Sends application/json:
textlanguageSends multipart/form-data:
textlanguageref_audioref_text when availableThe server is responsible for batching compatible requests.
| Field | Value |
|---|---|
| Name | remote |
| Contexts | cli |
| Capabilities | remote, server_managed_reference |
| Arg | Type | Default | Description |
|---|---|---|---|
--tts-server-url |
str |
http://localhost:8100 |
GPU server URL |
Remote TTS
├── urllib.request (HTTP)
├── TTS Base (BackendSpec, BackendArg)
└──▶ registered in TTS Registry
└──▶ talks to Inference Server