Buscar pacotes, repositórios e categorias de apps

Detalhes do pacotev1.0.3

flutter_tts_improved

Uma fork do plugin Flutter_TTS que usa os relatórios de progresso das APIs Utterance, tanto no Android quanto no iOS.

Downloads em 30 dias
43
Curtidas
21
Pontos Pub
40

Instalar pacote

flutter pub add flutter_tts_improved

Visão geral do pacote

Orientação gerada a partir de informações públicas. Apenas para referência.

Flutter_TTS_Improved é um fork do plugin original Flutter_TTS, aprimorando a funcionalidade de texto para fala com relatórios integrados de progresso das APIs de Utterance no Android e no iOS. Permite que desenvolvedores acompanhem em tempo real o progresso da síntese de fala, melhorando a experiência do usuário em aplicativos voltados para voz. O pacote mantém compatibilidade com o original, adicionando feedback granular para cada utterance, como eventos de início, fim e erro. Ideal para assistentes de voz interativos, livros falados ou ferramentas de acessibilidade que exigem controle preciso de tempo.

Casos de uso

  • Rastreamento em tempo real do progresso da fala
  • Recursos de acessibilidade em aplicativos
  • Assistentes de voz interativos
  • Reprodução de áudio-book
  • Aplicativos educacionais de aprendizagem de idiomas

Principais recursos

  • Relatório de progresso por meio das APIs de Utterance
  • Suporte multiplataforma (Android e iOS)
  • Callbacks de evento em tempo real
  • Controle aprimorado sobre síntese de fala
  • Compatível com Flutter_TTS

Indicado para

  • Desenvolvedores de aplicativos com recursos de voz
  • Aplicativos que exigem tempo preciso de fala
  • Aplicações focadas em acessibilidade
  • Tutoriais interativos e ferramentas de aprendizagem

Considerações

  • Requer configuração de plataforma nativa
  • Limitado a plataformas que suportam APIs de Utterance
  • Pode ser necessário permissões adicionais em alguns dispositivos
  • Depende da estabilidade do mecanismo de fala do sistema operacional subjacente

README original

Snapshot do README original do repositório-fonte vinculado. Consulte o repositório para o conteúdo mais recente.

Flutter Text To Speech Improved

The flutter_tts plugin (https://github.com/dlutton/flutter_tts) is GREAT! Thanks @dlutton for all your hard work on getting it up and running. Now it is time to improve it by allowing for the Utterances API to report the 'progress' of the speech of the Utterance. This is relatively new for Android, only introduced in Android 26. It has been around on iOS for quite some time though, back around iOS 7.0.

My goal with this plugin is to allow everyone in flutter to track where the speech is currently at. This can be used to print words on the screen as they are spoken, highlight words of a paragraph as they are uttered, for timing how long each word takes to say at a given speed, or really any other weird reason you may need it. This API is powerful, and I know people are asking for it, and there is simply not a plugin yet that covers it. Surprise! Now there is. You are welcome.

Features

  • [x] Android & iOS
    • [x] speak
    • [x] stop
    • [x] get languages
    • [x] set language
    • [x] is language available
    • [x] set speech rate
    • [x] set speech volume
    • [x] set speech pitch
    • [x] get voices
    • [x] set voice
    • [x] #NEW track what word is currently being said (on all iOS 7+ and Android 26+)
  • [x] Android
    • [x] set Silence

Usage

Android

Change the minimum Android sdk version to 21 (or higher) in your android/app/build.gradle file.

minSdkVersion 21

iOS

There's a known issue with integrating plugins that use Swift into a Flutter project created with the Objective-C template. Flutter#16049

Example

To use this plugin :

  dependencies:
    flutter:
      sdk: flutter
    flutter_tts_improved:
  • instantiate a FlutterTtsImproved instance
FlutterTtsImproved tts = new FlutterTtsImproved();
speak, stop, getLanguages, setLanguage, setSpeechRate, setVolume, setPitch, isLanguageAvailable
Future _speak() async{
    var result = await tts.speak("Hello World");
    if (result == 1) setState(() => ttsState = TtsState.playing);
}

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

List<dynamic> languages = await tts.getLanguages;

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

await tts.setSpeechRate(1.0);

await tts.setVolume(1.0);

await tts.setPitch(1.0);

await tts.isLanguageAvailable("en-US");
Listening for platform calls
// #NEW
tts.setProgressHandler((String fullPhrase, int wordOffset, int endOfWordOffset, String currentWord) {
  setState(() {
    _wordToDisplay = currentWord;
  });
});

tts.setStartHandler(() {
  setState(() {
    ttsState = TtsState.playing;
  });
});

tts.setCompletionHandler(() {
  setState(() {
    ttsState = TtsState.stopped;
  });
});

tts.setErrorHandler((msg) {
  setState(() {
    ttsState = TtsState.stopped;
  });
});

Getting Started

For help getting started with Flutter, view our online documentation.

For help on editing plugin code, view the documentation.

Categorias

Repositório-fonte

Projetos que usam este pacote

Ainda não há dados.