Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Flutter: Text to Voice Array

I have an Android App that converts text to voice. each word/string on the array is a button that when selected it converts to voice. I am looking to implement this in Flutter.

private TextToSpeech tts; 

GridView grid;

String[] words = {

        "Flutter",
        "Dart",
        "React,
        "Java"
};


@Override

protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    tts =new TextToSpeech(this, this);
    setContentView(R.layout.activity_main);
    grid = (GridView) findViewById(R.id.grid);

Can anyone provide a solution in Dart/Flutter?

Thank you.

like image 921
Dev Ed Avatar asked Sep 19 '25 14:09

Dev Ed


1 Answers

You can not use tts package as it is INCOMPATIBLE with Dart 2.0:

go for "flutter_tts " as it's working with Dart 2.0

https://pub.dartlang.org/packages/flutter_tts

     FlutterTts flutterTts = new FlutterTts();

     Future _speak() async{
        var result = await flutterTts.speak("Hello World");
        if (result == 1) setState(() => ttsState = TtsState.playing);
     }

     Future _stop() async{
       var result = await flutterTts.stop();
       if (result == 1) setState(() => ttsState = TtsState.stopped);
     }

     List<dynamic> languages = await flutterTts.getLanguages;

     await flutterTts.setLanguage("en-US");

     await flutterTts.setSpeechRate(1.0);

     await flutterTts.setVolume(1.0);

     await flutterTts.setPitch(1.0);

     await flutterTts.isLanguageAvailable("en-US");
like image 142
Arun R. Prajapati Avatar answered Sep 22 '25 03:09

Arun R. Prajapati