/// <summary> /// Normalize text with service provider. /// </summary> /// <param name="language">Language.</param> /// <param name="languageDataPath">Input data path.</param> /// <param name="speakStr">Input sentence.</param> /// <param name="sayAs">Say as string.</param> /// <param name="words">Words.</param> public static void NormalizeWithESP(Microsoft.Tts.Offline.Language language, string languageDataPath, string speakStr, string sayAs, Collection<string> words) { using (TtsEspHelper espHelper = new TtsEspHelper(language, string.Empty, string.Empty, languageDataPath, TtsEspHelper.ProcessMode.TextProcess)) { foreach (SP.TtsUtterance utt in espHelper.EspUtterances(speakStr, sayAs)) { using (utt) { foreach (SP.TtsWord ttsWord in utt.Words) { if (IsCommonWord(ttsWord)) { if (!string.IsNullOrEmpty(ttsWord.WordText)) { words.Add(ttsWord.WordText); } if (ttsWord.TNBreak > 0) { words.Add("<break>"); } } } } } } }
/// <summary> /// Separate sentence with ESP. /// </summary> /// <param name="language">Language.</param> /// <param name="languageDataPath">Input data path.</param> /// <param name="paragraph">Input paragraph.</param> /// <param name="result">Result sentence.</param> public static void SeparateSentenceWithESP(Language language, string languageDataPath, string paragraph, Collection<string> result) { using (TtsEspHelper espHelper = new TtsEspHelper(language, string.Empty, string.Empty, languageDataPath, TtsEspHelper.ProcessMode.TextProcess)) { espHelper.SeparateSentenceWithESP(paragraph, result); } }
/// <summary> /// Separate word with service provider. /// </summary> /// <param name="language">Language.</param> /// <param name="languageDataPath">Input data path.</param> /// <param name="sentence">Input sentence.</param> /// <param name="words">W.</param> public static void BreakWordsWithESP(Microsoft.Tts.Offline.Language language, string languageDataPath, string sentence, Collection<string> words) { using (TtsEspHelper espHelper = new TtsEspHelper(language, string.Empty, string.Empty, languageDataPath, TtsEspHelper.ProcessMode.TextProcess)) { espHelper.BreakWordsWithESP(sentence, words); } }