Tag: 语音到文本

使用SemanticResultKey时的TargetInvocationException

我想建立我的语法以接受多个数字。 当我重复这个数字就像说’二十一’时,它有一个错误。 所以我不断减少我的代码以找到问题。 我为语法构建器提供了以下代码: string[] numberString = { “one” }; Choices numberChoices = new Choices(); for (int i = 0; i < numberString.Length; i++) { numberChoices.Add(new SemanticResultValue(numberString[i], numberString[i])); } gb[1].Append(new SemanticResultKey("op1", (GrammarBuilder)numberChoices), 1, 2); 现在,当我发出“one one”时,它仍然给了我这个例外 当我搜索它时,它声明这是我的代码之外的一个例外,我想知道这是Microsoft.Speech dll中的错误还是我遗漏了一些东西 编辑1: 我玩了代码,并将识别为Async,如下所示: sre.RecognizeAsync(RecognizeMode.Multiple); 代替 sre.Recognize(); 现在,当我说’二十一’时,它会得到这个例外:base = {“规则’root中的重复语义键’op1’。”} 我知道问题在于语法,但我确实为’op1’重复了这个问题。 我错过了什么?

C#system.speech.recognition交替出现

我正在使用system.speech.recognition识别来自许多人的单个单词。 因为准确性不是很好,我想考虑引擎给我的更多选项。 但是,e.Result.Alternates只包含一个与e.Result.word相同的结果。 有没有办法强迫引擎给我更多选择? 谢谢!

如何使用C#在SAPI 5.4的听写中获得备用单个单词?

我正在进行语音识别和新技术的用户研究。 在实验室测试期间,我需要使用我编程的界面显示所有口述的文本。 目前,我可以在C#中获得备用整句,但我需要得到单个单词。 例如,如果有人说“你好,我的名字是安德鲁”,我想得到“你好”,“我的”,“名字”,“是”和“安德鲁”的替代词,而不是完整的替代词。句子。 这是我正在使用的处理程序的代码片段。 public void OnSpeechRecognition(int StreamNumber, object StreamPosition, SpeechRecognitionType RecognitionType, ISpeechRecoResult Result) { int NUM_OF_ALTERNATES = 5; // Number of alternates sentences to be read string recognizedSentence = Result.PhraseInfo.GetText(0, -1, true); // Get alternate sentences ISpeechPhraseAlternates phraseAlternates = Result.Alternates(NUM_OF_ALTERNATES); } 任何想法都表示赞赏。

如何在我的c#项目中添加自定义词典

我正在开发一个基于语音识别的c#项目。 我想识别印度英语口音中的单词,所以我想为词典然后在该文件中添加发音但是我没有得到如何在我的项目中添加词典以及如何创建词典?

使用System.Speech将mp3文件转换为文本

我正在尝试使用.net中的语音识别来识别mp3文件中播客的语音,并将结果作为字符串。 我见过的所有例子都与使用麦克风有关但我不想使用麦克风并提供一个示例mp3文件作为我的音频源。 任何人都可以指向任何资源或发布示例。 编辑 – 我将音频文件转换为wav文件并在其上尝试此代码。 但它只提取前68个单词。 public class MyRecognizer { public string ReadAudio() { SpeechRecognitionEngine sre = new SpeechRecognitionEngine(); Grammar gr = new DictationGrammar(); sre.LoadGrammar(gr); sre.SetInputToWaveFile(“C:\\Users\\Soham Dasgupta\\Downloads\\Podcasts\\Engadget_Podcast_353.wav”); sre.BabbleTimeout = new TimeSpan(Int32.MaxValue); sre.InitialSilenceTimeout = new TimeSpan(Int32.MaxValue); sre.EndSilenceTimeout = new TimeSpan(100000000); sre.EndSilenceTimeoutAmbiguous = new TimeSpan(100000000); RecognitionResult result = sre.Recognize(new TimeSpan(Int32.MaxValue)); return result.Text; } }

从Speech获取用户输入?

我刚刚开始在C#.Net中尝试Windows Speech to Textfunction。 我目前有基础工作(IE – 说些什么,它会根据你说的提供输出)。 但是,我正在努力弄清楚如何实际接收用户输入作为变量。 我的意思是,例如。 如果用户说: “Call me John” 然后我希望能够将John这个词作为变量,然后将其存储为人员用户名。 我目前的SpeechRecognized事件如下: void zeusSpeechRecognised(object sender, SpeechRecognizedEventArgs e) { writeConsolas(e.Result.Text, username); switch (e.Result.Grammar.RuleName) { case “settingsRules”: switch (e.Result.Text) { case “test”: writeConsolas(“What do you want me to test?”, me); break; case “change username”: writeConsolas(“What do you want to be called?”, me); break; case […]

语音/语音到文本

我需要一个API或库(最好是免费的),它将通过麦克风将语音/语音转换为文本(字符串)。 另外,我需要一个可以进行文本到语音转换的API或库。 我想使用C#和.NET,但其他语言就足够了。 谢谢。

良好的语音识别API

我正在开展一个大学项目,我正在使用语音识别。 目前我正在Windows 7上开发它,我正在使用与.net一起提供的system.speech API包,我正在C#上进行。 我面临的问题是口述识别不够准确。 然后每当我启动应用程序时,桌面语音识别都会自动启动。 这对我来说是一个很大的麻烦。 正如我所说的话已经不够清楚,并且冲突的识别被解释为正在执行诸如应用程序切换最小化之类的命令和动作。 这是我的应用程序的一个关键部分,我恳请你为我提出任何好的语音API,除了这个微软的错误。 即使它只能理解简单的听写语法也会很好。