// the find
dlutton/flutter_tts
Flutter Text to Speech package
A Flutter plugin wrapping the native TTS engine on each platform — AVSpeechSynthesizer on Apple, Android TTS, Web SpeechSynthesis, and WinRT on Windows. Covers the obvious use cases: speak, stop, pause, language/voice selection, pitch/rate/volume control. If you need TTS in a Flutter app without shipping a third-party voice model, this is the go-to.
Real cross-platform reach (Android, iOS, macOS, Windows, Web) with a consistent Dart API despite wildly different native implementations. The progress handler gives you word-level callbacks, which is essential for read-aloud highlighting. Synthesize-to-file on iOS and Android is genuinely useful for offline or caching scenarios. The iOS audio session configuration (category, options, mode) is exposed properly, which most competing packages skip entirely.
Android pause is a workaround — it works by tracking the word offset via onRangeStart and re-submitting the remaining text, which means your progress offsets reset and you have to manage state yourself. No Linux support, which matters for desktop Flutter apps. The API returns dynamic/int result codes (1 for success) instead of typed responses or exceptions, so error handling is awkward and easy to ignore. Kotlin Gradle plugin version is pinned to 1.9.10 in the docs, which will conflict with projects on newer AGP versions.