internal virtual void ExecutarAudioAsync(FalaModel model, Delegate callbackFalaFinalizada = null) { if (model.TextoPrompFala == null && string.IsNullOrEmpty(model.TextoParaFala)) { return; } var sintetizador = new SpeechSynthesizer { Volume = 100 }; sintetizador.SelectVoice("Microsoft Maria Desktop"); sintetizador.SetOutputToDefaultAudioDevice(); sintetizador.SpeakCompleted += (speakersender, se) => { if (EncadeiaReacao) { var player = new SoundPlayer(); player.LoadCompleted += (playersender, pe) => { var sp = (SoundPlayer)playersender; if (sp.IsLoadCompleted) { sp.Play(); callbackFalaFinalizada?.DynamicInvoke(model); } }; var audios = AudiosList.ObterReacoes(); var audioAleatorio = new Random().Next(audios.Count); var audio = audios[audioAleatorio]; player.SoundLocation = audio; player.LoadAsync(); } else { callbackFalaFinalizada?.DynamicInvoke(model); } }; if (!string.IsNullOrEmpty(model.TextoParaFala)) { sintetizador.SpeakAsync(model.TextoParaFala); } else if (model.TextoPrompFala != null) { sintetizador.SpeakAsync(model.TextoPrompFala); } }
// Get audios data file (.json format) IEnumerator GetData() { UnityWebRequest request = UnityWebRequest.Get(api); yield return(request.SendWebRequest()); if (request.isNetworkError || request.isHttpError) { Debug.Log(request.error); audiosJson = File.ReadAllText(Application.dataPath + "/audios1.json"); } else { AudiosList = JsonUtility.FromJson <AudiosList>(request.downloadHandler.text); } Debug.Log("audioDone"); //LoadAudio("Joe", 101); }
// Get audios data file (.json format) IEnumerator GetData() { UnityWebRequest request = UnityWebRequest.Get(MainController._rootAPI + api + "act" + MainController._act + "/audios.json?d=" + (Random.value * 10).ToString()); yield return(request.SendWebRequest()); if (request.isNetworkError || request.isHttpError) { Debug.Log(request.error); // Do nothing... } else { AudiosList = JsonUtility.FromJson <AudiosList>(request.downloadHandler.text); if (autoStart) { LoadAudio("", -1, true, true, false); } } }
string ObterMeme(int idMeme) { var memes = AudiosList.ObterMemes(); var memeSaida = string.Empty; switch (idMeme) { case 1: memeSaida = memes.SingleOrDefault(a => a.Contains("acabou.wav")); break; case 2: memeSaida = memes.SingleOrDefault(a => a.Contains("agora_entendi.wav")); break; case 3: memeSaida = memes.SingleOrDefault(a => a.Contains("arquivo_x.wav")); break; case 4: memeSaida = memes.SingleOrDefault(a => a.Contains("chora_nao_bebe.wav")); break; case 5: memeSaida = memes.SingleOrDefault(a => a.Contains("erro.wav")); break; case 6: memeSaida = memes.SingleOrDefault(a => a.Contains("eu_nao_entendi.wav")); break; case 7: memeSaida = memes.SingleOrDefault(a => a.Contains("faustao_errou.wav")); break; case 8: memeSaida = memes.SingleOrDefault(a => a.Contains("foto_feia.wav")); break; case 9: memeSaida = memes.SingleOrDefault(a => a.Contains("hora_alegria.wav")); break; case 10: memeSaida = memes.SingleOrDefault(a => a.Contains("MLG_buzina.wav")); break; case 11: memeSaida = memes.SingleOrDefault(a => a.Contains("nada_haver_irmao.wav")); break; case 12: memeSaida = memes.SingleOrDefault(a => a.Contains("nao_faz_mal.wav")); break; case 13: memeSaida = memes.SingleOrDefault(a => a.Contains("pede_pra_nerfar.wav")); break; case 14: memeSaida = memes.SingleOrDefault(a => a.Contains("quero_cafe.wav")); break; case 15: memeSaida = memes.SingleOrDefault(a => a.Contains("senna.wav")); break; case 16: memeSaida = memes.SingleOrDefault(a => a.Contains("ta_bom.wav")); break; case 17: memeSaida = memes.SingleOrDefault(a => a.Contains("ver_filme_pele.wav")); break; case 18: memeSaida = memes.SingleOrDefault(a => a.Contains("voce_vergonha_profissao.wav")); break; case 19: memeSaida = memes.SingleOrDefault(a => a.Contains("cavalo.wav")); break; case 20: memeSaida = memes.SingleOrDefault(a => a.Contains("aplausos.wav")); break; case 21: memeSaida = memes.SingleOrDefault(a => a.Contains("ta_trollando.wav")); break; case 22: memeSaida = memes.SingleOrDefault(a => a.Contains("ce_e_o_bichao_hein.wav")); break; default: memeSaida = string.Empty; break; } return(memeSaida); }