Android TTS parity with iOS (reuse ttsBaseURL endpoints?)
Author: brenorbCreated Feb 24, 2026Updated Aug 25, 2026
Context README says “Text to speech (iOS only)”. I couldn’t find any TTS implementation in the Android app, while iOS has a full pipeline.
iOS implementation (references)
apple/OmnivoreKit/Sources/Services/AudioSession/SpeechSynthesizer.swift- Builds a request to
appEnvironment.ttsBaseURLand POSTs utterance payloads - Downloads audio + speech marks, stores local MP3
- Builds a request to
apple/OmnivoreKit/Sources/Models/AppEnvironment.swift- Defines
ttsBaseURL(https://tts-prod.omnivore.work,tts-demo…)
- Defines
Question / Request
Is there a specific reason TTS is iOS‑only? If not, would you accept a PR to add Android TTS using the same ttsBaseURL API (OkHttp + ExoPlayer/Media3) to achieve feature parity?
Why this matters Many Android users want hands‑free reading. Right now the server already exposes TTS endpoints used by iOS, so Android could reuse that backend.
If you want, I can draft an Android implementation plan (API calls + caching + player + speech marks). Thanks!
Source: omnivore-app/omnivore