openreader/docs-site/docs/configure/tts-providers.md
Richard R 9b9206f50d refactor(audiobooks): migrate audiobook pipeline to object storage
This commit restructures the audiobook generation and serving layer to rely exclusively on S3-compatible blob storage, removing the dependency on local filesystem paths.

- Bundle `ffmpeg` and `ffprobe` binaries via npm to ensure portability across environments.
- Update API routes to stream audio directly from blob storage instead of local disk.
- Remove legacy migration endpoints and filesystem-based indexing logic.
- Add startup scripts to facilitate the transition from local to remote storage.

BREAKING CHANGE: Audiobook functionality is now strictly dependent on S3 configuration. The previous filesystem-based storage method has been removed.
2026-02-11 02:44:34 -07:00

1.6 KiB

title
TTS Providers

OpenReader WebUI supports OpenAI-compatible TTS providers through a common API shape.

Supported provider patterns

  • OpenAI API
  • DeepInfra
  • Kokoro-FastAPI
  • Orpheus-FastAPI
  • Custom OpenAI-compatible endpoints

Provider dropdown behavior

In Settings, the provider dropdown includes:

  • OpenAI
  • Deepinfra
  • Custom OpenAI-Like (for Kokoro, Orpheus, and other compatible endpoints)

API_BASE guidance:

  • For OpenAI and Deepinfra, OpenReader auto-fills the default endpoint.
  • For Custom OpenAI-Like, set API_BASE to your server endpoint.
  • In practice, you usually only set API_BASE when using a provider/endpoint that is not directly covered by the built-in dropdown defaults.

Custom provider compatibility

For custom providers, OpenReader expects these endpoints:

  • GET /v1/audio/voices
  • POST /v1/audio/speech

If your provider exposes this interface, it can be used as an OpenAI-compatible TTS backend.

Setup flow

  1. Select your provider in the OpenReader Settings modal.
  2. If using Custom OpenAI-Like (or overriding a default), set API_BASE.
  3. Set API_KEY if required by your provider.
  4. Choose model and voice.

For environment variables, see Environment Variables. For TTS quota behavior, see TTS Rate Limiting. For auth behavior, see Auth. For provider-specific integration guides, see Kokoro-FastAPI, Orpheus-FastAPI, Deepinfra, OpenAI, and Custom OpenAI.