async Task StartInitTTS() { await _tts.GetTTS(this); //if (string.IsNullOrEmpty(ttsConfig.lang)) //{ // await tts.SetLang(new Java.Util.Locale(ttsConfig.lang)); //} }
//private IList<String> _voices; protected override void OnCreate(Bundle savedInstanceState) { base.OnCreate(savedInstanceState); SetContentView(Resource.Layout.Layout_Speech_Setting); SetBehavior(); ttsLib = TextToSpeechLib.Instance(); _listLang = new List <string> { }; btn_getInstance.Click += delegate { ttsLib = TextToSpeechLib.Instance(); }; btn_getEngines.Click += async delegate { await GetEngines(); }; spn_engines.ItemSelected += async(object sender, AdapterView.ItemSelectedEventArgs e) => { _selectEngine = _listEngines[(int)e.Id]; int i = await GetLanguageSupportByEngine(_selectEngine); await ttsLib.GetTTS(this); }; spn_lang.ItemSelected += async(object sender, AdapterView.ItemSelectedEventArgs e) => { //var s = ((Spinner)sender).GetItemAtPosition((int)e.Id); //Log.Debug(TAG, s.ToString()); //_selectLang = new Locale("en-US"); //_selectLang = _languageSupport.F(t => t.DisplayLanguage == langAvailable[(int)e.Id]); _selectLang = new Locale(_listLang[(int)e.Id]); Log.Debug(TAG, _listLang[(int)e.Id]); ttsLib.SetLang(_selectLang); }; btn_Speak.Click += async delegate { //ttsLib.CreateTtsAsync(this,); int i = await ttsLib.SpeakMessenger("ss"); Log.Info(TAG, "result speak " + i.ToString()); }; // Create your application here }
protected override void OnCreate(Bundle savedInstanceState) { base.OnCreate(savedInstanceState); //Load Font CalligraphyConfig.InitDefault(new CalligraphyConfig.Builder() .SetDefaultFontPath("Fonts/HELR45W.ttf") .SetFontAttrId(Resource.Attribute.fontPath) .Build()); SetContentView(Resource.Layout.Speech); _changeEngine = false; _tts = TextToSpeechLib.Instance(); _config = Config.Instance(); // Create your application here Button btn_engine = FindViewById <Button>(Resource.Id.item_1); Button btn_test = FindViewById <Button>(Resource.Id.item_3); Button btn_ok = FindViewById <Button>(Resource.Id.item_4); spn_eng = FindViewById <Spinner>(Resource.Id.spinner_engine); spn_lang = FindViewById <Spinner>(Resource.Id.spinner_lang); btn_engine.Click += async delegate { await BtnEngineClick(); //GetLangSTT(); }; btn_test.Click += async delegate { var locale = new Locale(_config.GetTtsLang()); if (_changeEngine) { await _tts.GetTTS(this); } _changeEngine = false; //await SampleText(); /*TODO * ADD funtion get messenger sample for test tts config */ _tts.SetLang(locale); _config.RunningSMSHandle = false; var k = await _tts.SpeakMessenger("this is messenger test"); }; spn_eng.ItemSelected += async(object sender, AdapterView.ItemSelectedEventArgs e) => { Log.Info(TAG, "Select Engine"); _changeEngine = true; _selectEngine = _listEngine[(int)e.Id]; _listLangDisplayName = new List <string>(); _listLangCode = new List <string>(); _listLangCollect = await _tts.GetLanguageSupportByEngineAsync(this, _selectEngine); foreach (var it in _listLangCollect) { tmp = it; _listLangDisplayName.Add(it.DisplayName); _listLangCode.Add(it.ISO3Language); } var adapter = new ArrayAdapter <string>(this, Android.Resource.Layout.SimpleSpinnerDropDownItem, _listLangDisplayName); spn_lang.Adapter = adapter; }; spn_lang.ItemSelected += (object sender, AdapterView.ItemSelectedEventArgs e) => { _selectLang = _listLangCode[(int)e.Id]; }; btn_ok.Click += delegate { _config.SetTtsLang(_selectLang); _config.SetTtsEngine(_selectEngine); _config.UpdateConfig = true; _config.WriteConfig = true; }; }