1. This site uses cookies. By continuing to use this site, you are agreeing to our use of cookies. Learn More.
  2. Donation with Paypal!!!

    Go to your paypal account and send directly donation to [email protected]

    1 month - 10 $ - Standart VIP

    6 months - 20 $- Standart VIP

    1 year - 30 $- Standart VIP

    2 years - 50 $- Standart VIP

    Gold member for life - 150 $- Standart VIP

    High Vip (Standart VIP include) group please send PM or email to [email protected] for info

    After Donation please send email to [email protected]

  3. Donation Ways 2020


    Paysend
  4. Telegram

  5. Delphifan Magazine
Dismiss Notice

Donation with Paypal!!!

Go to your paypal account and send directly donation to [email protected]

1 month - 10 $ - Standart VIP

6 months - 20 $- Standart VIP

1 year - 30 $- Standart VIP

2 years - 50 $- Standart VIP

Gold member for life - 150 $- Standart VIP

High Vip (Standart VIP include) group please send PM or email to [email protected] for info

After Donation please send email to [email protected]

Dismiss Notice
For open hidden message no need write thanks, thank etc. Enough is click to like button on right side of thread.

Text To Speech (TTS) Wrapper For Android

Discussion in 'Delphi Android And IOS' started by AdminDF, Feb 2, 2014.

  1. AdminDF
    Online

    AdminDFAdminDF is a Verified Member Delphifan Staff Member DF Staff

    Embarcadero has a blog post from September 2013 that highlights a Text To Speech (TTS) unit that was created by Jeff Overcash. The TTS unit wraps the native Android Text to Speech API and gives you access to it from your Delphi XE5 Firemonkey application. You can take a look at the Android SDK information for android.speech.tts to see the full help on using the API. The interfaces that are implemented in the wrapper are listed below:

      JSynthesisCallback = interface; // android.speech.tts.SynthesisCallback
    JSynthesisRequest = interface; // android.speech.tts.SynthesisRequest
    JTextToSpeech = interface; // android.speech.tts.TextToSpeech
    JTextToSpeech_Engine = interface; // android.speech.tts.TextToSpeech$Engine
    JTextToSpeech_EngineInfo = interface; //android.speech.tts.TextToSpeech$EngineInfo
    JTextToSpeech_OnInitListener = interface; // android.speech.tts.TextToSpeech$OnInitListener
    JTextToSpeech_OnUtteranceCompletedListener = interface; // android.speech.tts.TextToSpeech$OnUtteranceCompletedListener
    JTextToSpeechService = interface; // android.speech.tts.TextToSpeechService
    JUtteranceProgressListener = interface; // android.speech.tts.UtteranceProgressListener

    And here is a sample from the demo that is included with the wrapper:

    procedure TForm1.TttsOnInitListener.onInit(status: Integer);
    var
    Result : Integer;
    begin
    if (status = TJTextToSpeech.JavaClass.SUCCESS) then
    begin
    result := FParent.tts.setLanguage(TJLocale.JavaClass.US);
    if (result = TJTextToSpeech.JavaClass.LANG_MISSING_DATA) or
    (result = TJTextToSpeech.JavaClass.LANG_NOT_SUPPORTED) then
    ShowMessage(‘This Language is not supported’)
    else
    begin
    FParent.Button1.Enabled := true;
    FParent.button2.Enabled := false;
    end;
    end
    else
    ShowMessage(‘Initilization Failed!’);
    end;

    procedure TForm1.SpeakOut;
    var
    text : JString;
    begin
    text := StringToJString(Memo1.Lines.Text);
    tts.speak(text, TJTextToSpeech.JavaClass.QUEUE_FLUSH, nil);
    end;

    [​IMG]

    Download Source Code
     
    XoreDev and arty like this.
  2. ilsouza
    Offline

    ilsouza DF Junior

    RE:

    How to say in portuguese Brazil?
     
  3. racehv
    Online

    racehv Guest

    RE:

    Thanks
     
  4. vedatpala
    Offline

    vedatpala DF Junior

    RE:

    thanks
     
  5. peek_c
    Offline

    peek_c DF Member

    thanks
     

Share This Page