PackageTrack
Sign in Get early access

speech_to_text

A Flutter plugin that exposes device specific speech to text recognition capability.

7.4.0 495K downloads/mo #517 most downloaded on pub.dev csdcorp/speech_to_text

What this package is like to depend on

Last release 1 months ago

02 Jul 2026

Ships unpredictably

gaps range from 8 days to 9 months

Nearly every release is documented

notes for 56 of 58 stable releases

Nothing withdrawn

no release was ever pulled

7 years old

79 releases · first in 2019

6 releases in the last 12 months

see the full history below

Release timeline

79 releases · Oct 2019 to Jul 2026
2020 2021 2022 2023 2024 2025 2026
Release Pre-release

Releases

latest 60 of 79
  1. 7.5.0-beta.1 02 Jul 2026 pre-release
    Release notes
    • Updates minimum supported SDK version to Flutter 3.44/Dart 3.12.
    • Migrates to built-in Kotlin
    Open source →
  2. 7.4.0 19 May 2026
    Release notes

    New

    • Android now respects the pauseFor value

    Fix

    • Fixed Swift concurrency error with captured variables in Task closure on iOS - resolves build failure with "Reference to captured var 'localeStr' in concurrently-executing code"
    • Fixed communication threading issue for Windows version of the plugin
    • Fixed conditional compilation for Windows version of the plugin
    Open source →
  3. 7.4.0-beta.8 16 Dec 2025 pre-release

    Nothing published for this version

  4. 7.4.0-beta.6 03 Sep 2025 pre-release

    Nothing published for this version

  5. 7.4.0-beta.4 02 Sep 2025 pre-release

    Nothing published for this version

  6. 7.4.0-beta.3 02 Sep 2025 pre-release

    Nothing published for this version

  7. 7.4.0-beta.2 21 Aug 2025 pre-release

    Nothing published for this version

  8. 7.3.0 12 Aug 2025
    Release notes

    New

    • Partial Windows speech support thanks to @asherchok for the PR. This is the first draft. version of Windows support and is not yet working properly. However it should now be possible to build for Windows without even if speech recognition does not work properly.

    Fix

    • Issue with numeric conversion for Web thanks to @uniqdev-id for the PR.
    • iOS now performs speech work on a separate thread to avoid UI pauses
    Open source →
  9. 7.3.0-beta.4 30 Jul 2025 pre-release

    Nothing published for this version

  10. 7.3.0-beta.3 15 Jul 2025 pre-release

    Nothing published for this version

  11. 7.3.0-beta.2 14 Jul 2025 pre-release

    Nothing published for this version

  12. 7.3.0-beta.1 14 Jul 2025 pre-release

    Nothing published for this version

  13. 7.2.0 14 Jul 2025
    Release notes

    New

    • Updated to latest build configuration for Android
    • Updated to use Swift packages instead of pods

    Fix

    • Address incorrect language tag format on Android
    Open source →
  14. 7.2.0-beta.1 25 Jun 2025 pre-release

    Nothing published for this version

  15. 7.1.0 23 Jun 2025
    Release notes

    New

    • support for web search recognition type on Android thanks to @vongrad for the PR
    • example app improvements to expose more options, provide help, and improve behaviour on smaller devices.

    Fix

    • on iOS there is a new bug in their speech recognition that resets the transcription after a pause in the users' speech. This version attempts a mitigation by using meta information from the recognizer to concatenate subsequent transcriptions so the whole is not lost. There are problems with this approach, notably extra capitalization and possibly incorrects spaces being added. The concatenated transcription is added as the first result but all other results are still the same. See issue #552 for details.
    Open source →
  16. 7.1.0-beta.3 09 Oct 2024 pre-release

    Nothing published for this version

  17. 7.1.0-beta.2 03 Oct 2024 pre-release

    Nothing published for this version

  18. 7.1.0-beta.1 20 Sep 2024 pre-release

    Nothing published for this version

  19. 7.0.0 19 Aug 2024
    Release notes

    New

    • support for speech recognition on MacOS
    • supports WASM compliation for web

    Fix

    • Remove support for deprecated v1 Android registration #545
    • Update deprecated Android build settings
    • Improves handling of possible duplicates from the locales() method to ensure they are removed
    • Language codes are properly handled for on device recognition on Android
    Open source →
  20. 7.0.0-beta.3 14 Aug 2024 pre-release

    Nothing published for this version

  21. 7.0.0-beta.2 14 Aug 2024 pre-release

    Nothing published for this version

  22. 7.0.0-beta.1 13 Aug 2024 pre-release

    Nothing published for this version

  23. 6.6.2 05 Jun 2024
    Release notes

    New

    • on iOS now mixes audio with other uses to allow multiple audio plugins to coexist

    Fix

    • Second iOS listen now starts faster
    Open source →
  24. 6.6.1 20 Feb 2024
    Release notes

    New

    • More detailed error returns on iOS
    • Updated JS dependency to 0.7.1 (would it kill you to release a 1.0 version?)
    Open source →
  25. 6.6.0 30 Jan 2024
    Release notes

    New

    • listen now has a new SpeechListenOptions listenOptions parameter to specify the recognizer options for the listen session. Some of the separate parameters have been deprecated as a result. See the listen method for documentation.
    • SpeechListenOptions.enableHapticFeedback is a new option which allows haptic feedback during speech recognition on iOS. Usually haptics are disabled to avoid interfering with the microphone.
    • SpeechListenOptions.autoPunctuation is a new option which turns on automatic punction inference during speech recognition on iOS.
    Open source →
  26. 6.6.0-dev 25 Jan 2024 pre-release

    Nothing published for this version

  27. 6.5.1 13 Dec 2023
    Release notes

    What's Changed

    New Contributors

    Full Changelog: v6.2.0...v6.5.1

    Open source →
    Release notes

    Fix

    • Removed BLUETOOTH_CONNECT permission from the plugin Android manifest, should be in apps
    Open source →
  28. 6.5.0 08 Dec 2023
    Release notes

    New

    • SpeechToText.webDoNotAggregate option for use in the option parameter of the initialize method. This can be used to change the behaviour on some browsers that implement the speech API differently. Test the user agent to decided whether to set this option. Currently it seems to be required on mobile Android to prevent duplicate results.
    Open source →
  29. 6.4.1 15 Nov 2023
    Release notes

    Fix

    • Removed incorrect MODIFY_PHONE_STATE permission from Android manifest
    Open source →
  30. 6.4.0 30 Oct 2023
    Release notes

    Fix

    • Fix web handling of alternates and multiple phrases was incorrect. Before this change multiple phrases were being seen as alternates. This properly combines those phrases into a single set of recognized words and produces alternates as appropriate.

    • Android 33+ now returns a valid list from locales. It returns the supported on device languages. This is (probably) smaller than the full list of online languages but better than the current list that only has the default language in it. It also seems to be the only option that's available.

    Open source →
  31. 6.3.0 30 Jun 2023
    Release notes

    New

    • New changePauseFor method allows the pause duration to be modified during a listen session.

    Fix

    • Documentation cleanup and improvements, thanks @Bungeefan
    • Crash on Android versions 11 and below
    Open source →
  32. 6.2.0 25 Jun 2023
    Release notes

    New

    • Upgrades and fixes for Flutter 3.0

    Fix

    • Error status is cleared on each listen call.

    Fix

    • Bluetooth permission check no longer crashes on some Android devices
    Open source →
  33. 6.1.1 01 Dec 2022

    Nothing published for this version

  34. 6.1.0 19 Oct 2022
    Release notes

    New

    • Updated to the latest Kotlin version to meet newer build requirements
    Open source →
  35. 6.0.0 19 Sep 2022
    Release notes

    New

    • Now has minimal support for Mac apps where it will always report speech as unavailable. This allows the plugin to be used in apps where speech is an optional capability without blocking the deploy to the Mac platform.

    Fix

    • Cleanup BT code on Android for clarity
    Open source →
  36. 5.6.1 07 Aug 2022
    Release notes

    Fix

    • Bluetooth permission not granted no longer crashes on Android
    Open source →
  37. 5.6.0 25 Jun 2022
    Release notes

    New

    • Rejecting Bluetooth permission no longer blocks subsequent recognition using non-bluetooth inputs.

    Fix

    • onDevice recognition for Android should handle switching from onDevice between recognition sessions.
    Open source →
  38. 5.5.0 14 May 2022
    Release notes

    New

    • initialize method on the SpeechToTextProvider adds the finalTimeout and options parameters that match the same parameters on SpeechToText
    • onDevice support added for Android
    • example app now supports pauseFor and waitFor parameters

    Fix

    • example app updated for new Android build requirements
    • Result method signature fixed in Android override
    Open source →
  39. 5.4.3 11 Feb 2022
    Release notes

    New

    • new Android option androidNoBluetooth can be used in initialize to disable Bluetooth support on Android devices which removes the need for Bluetooth permission.
    Open source →
  40. 5.4.2 21 Dec 2021
    Release notes

    New

    • Now asks for Bluetooth permission on SDK 31 and above. When upgrading an already installed app the permission will not be requested. Users will have to manually set the permission or clear their app cache to force a re-request. See this issue
    Open source →
  41. 5.4.1 19 Dec 2021
    Release notes

    New

    • Android permission documentation
    Open source →
  42. 5.4.0 18 Dec 2021
    Release notes

    New

    • Support for bluetooth headsets in Android
    Open source →
  43. 5.3.0 10 Dec 2021
    Release notes

    New

    • Documentation improvements for listen parameters
    • iOS error handling improvements

    Fix

    • lastRecognizedWords now cleared before each listen call
    • web issue resolve #242
    Open source →
  44. 5.2.0 08 Nov 2021
    Release notes

    New

    • Requires compileSdkVersion 31 to build, check your build.gradle
    • Changed the error_unknown return to error_unknown ({error_code}) so that the native Android error code is visible. This is a potentially breaking change if you behaviour for the error_unkown value.
    • Added new SDK 31 error messages for Android
      • error_language_not_supported
      • error_language_unavailable
      • error_server_disconnected
      • error_too_many_requests

    Fix

    • Fix for Android to handle list end on unrecognized content properly #253
    Open source →
  45. 5.1.1 18 Sep 2021
    Release notes

    Fix

    • Fix for Android compile issue on latest SDK #259
    Open source →
  46. 5.1.0 13 Sep 2021
    Release notes

    New

    • The example app now supports Web as a run target
    • Improved the example app and its documentation
    • Improved the provider example app
    • Android now handles the done condition better, especially in case of error
    • Updated the minimal example in the README file

    Fix

    • Fix for listing available Locales on some Android devices
    Open source →
  47. 5.0.0 09 Aug 2021
    Release notes

    New

    • Bluetooth headsets now supported on iOS
    • onStatus now receives the new done status after all listening is complete. This is a potentially breaking change as it adds a new status to handle.
    • initialize and hasPermission now checks if speech is supported on web

    Fix

    • removed duplicate not listening status sent on iOS
    • iOS now restores all audio options after listening
    • iOS returns speech results faster when also playing a stop sound
    Open source →
  48. 4.2.2 10 Jul 2021
    Release notes

    Fix

    • handle deprecation of setMockMethodHandler #229
    Open source →
  49. 4.2.1 30 May 2021
    Release notes

    Fix

    • minor code format issue that lost me 10 points, this shall not stand!
    Open source →
  50. 4.2.0 30 May 2021
    Release notes

    New

    • Flutter 2.0 / Dart 2.12 null safety features are now the main release

    Fix

    • iOS is now faster starting to listen #207
    • fix for sample rate issue on iOS #109
    • systemLocale now reports the device locale rather than the app locale. Previously it was constrained to only be one of the localized languages of the application. #200
    Open source →
  51. 4.1.1-nullsafety 18 Apr 2021 pre-release
    Release notes

    Fix

    • Web support has changed to use the Flutter class definitions and now works in release mode
    • pauseFor and listenFor accuracy improved
    Open source →
  52. 4.1.0-nullsafety 22 Mar 2021 pre-release
    Release notes

    New

    • New property finalTimeout on the initialize method to set how long the plugin will wait for a final result from the device before manuafacturing one. This used to be a pre-defined value of 100 ms in earlier releases. The default is now 2 seconds.
    Open source →
  53. 4.0.0-nullsafety 14 Mar 2021 pre-release
    Release notes

    New

    • Now supports Flutter 2.0 / Dart 2.12 null safety features.
    • Now supports the web platform
    Open source →
  54. 3.2.0 19 Mar 2021
    Release notes

    New

    • New property finalTimeout on the initialize method to set how long the plugin will wait for a final result from the device before manuafacturing one. This used to be a pre-defined value of 100 ms in earlier releases. The default is now 2 seconds.
    Open source →
  55. 3.1.0 07 Dec 2020
    Release notes

    New

    • now compatible with Android SDK 30
    • initialize now supports the options parameter to supply platform specific options during initialization.
    • SpeechToText.androidAlwaysStop supported as an option. Forces the plugin to use the speech recognizer stop method even on SDK versions where that might fail. See https://github.com/csdcorp/speech_to_text/issues/150
    • SpeechToText.androidIntentLookup looks up the intent name instead of using the default. This can work around some issues with security exceptions when trying to use the default. See https://github.com/csdcorp/speech_to_text/issues/153

    Fix

    • Phones that don't report extra languages no longer hang on locales call
    Open source →
  56. 3.0.1 22 Nov 2020
    Release notes

    Fix

    • Minor static code analysis improvements (addicted to pub points)
    Open source →
  57. 3.0.0 22 Nov 2020
    Release notes

    New

    • Now using a platform interface to prepare for web support. Although this should not cause any functional changes it is a major refactoring.

    Fix

    • Android stop now completes even if not initialized
    • iOS onDevice initialization is more reliable
    • No longer crashes on iOS version < 10
    Open source →
  58. 2.7.0 21 Sep 2020
    Release notes

    New

    • the example had onDevice true which is a rarely used flag and was causing confusion
    • the partialResults option for the SpeechToTextProvider.listen was defaulted to false which is a less common usage and didn't match the default for SpeechToText.listen so it has been changed to true
    Open source →
  59. 2.6.0 17 Sep 2020
    Release notes

    New

    • new parameter onDevice on the SpeechToTextProvider listen method supports forcing offline recognition.
    • Added a new Tips section to the README doc to answer some common questions.

    Fix

    • Android now correctly returns multiple possible matches with confidence
    • Android now supports the onDevice flag properly, note that at least some Android devices need an offline language pack installed for each target language to enable offline recognition.
    Open source →
  60. 2.5.0 27 Aug 2020
    Release notes

    New

    • new parameter localeId on the SpeechToTextProvider listen method supports selecting a non default languge for the recognizer when using the provider.

    Fix

    • A work around for a bug in Android 10(29) that made stop and cancel not work. The plugin now calls destroy on the Android SpeechRecognizer which terminates the listen session immediately. There is a downside to this approach in that it does not always report results that were in process when destroy was called, however it does mean that stop works.
    • The example for SpeechToTextProvider, provider_example.dart had an error that made it always use the default language and ignore the drop-down selection. This has been corrected.
    Open source →

Every package, every release, already written down.

The archive is open and free. Watching your own project is what we are building next.

Browse the archive