当前位置: 首页 > 编程语言 > C#

分享_111116

时间:2023-04-10 18:34:55 C#

使用GoogleSpeechAPI使用GoogleSpeechAPI在基于C#的应用程序中实现GoogleSpeechAPI的代码是什么?我发现可以创建一个音频文件并将其发送到http://slides.html5rocks.com/#speech-input并以文本形式接收它。如果你以前试过这个,你能解释一下如何做到这一点或提供代码吗?被困在这里一段时间了,非常感谢。代码到目标前为停止:SpeechRecognitionEnginerec=newSpeechRecognitionEngine();SpeechSynthesizerdummy=newSpeechSynthesizer();publicForm1(){InitializeComponent();Choicessearching=newChoices("保时捷");GrammarBuildersearchService=newGrammarBuilder("搜索");searchService.Append(搜索);//从GrammarBuilder创建语法对象并将其加载到识别器。语法googleGrammar=newGrammar(searchService);;rec.RequestRecognizerUpdate();rec.LoadGrammar(googleGrammar);//为语音识别事件添加处理程序。rec.SpeechRecognized+=newEventHandler(_recognizer_SpeechRecognized);//配置语音识别器的输入。rec.SetInputToDefaultAudioDevice();//启动异步、连续的语音识别。rec.RecognizeAsync(RecognizeMode.Multiple);}privatevoid_recognizer_SpeechRecognized(objectsender,SpeechRecognizedEventArgse){try{FileStreamFS_Audiofile=newFileStream("temp.flac",FileMode.Open,FileAccess.Read);BinaryReaderBR_Audiofile=newBinaryReader(FS_Audiofile);byte[]BA_AudioFile=BR_Audiofile.ReadBytes((Int32)FS_Audiofile.Length);FS_Audiofile.Close();BR_Audiofile.Close();HttpWebRequest_HWR_SpeechToText=null;_HWR_SpeechToText=(HttpWebRequest)WebRequest.Create("http://www.google.com/speech-api/v1/recognize?xjerr=1&client=chromium&lang=de-DE&maxresults=1&pfilter=0");_HWR_SpeechToText.Method="POST";_HWR_SpeechToText.ContentType="音频/x-flac;速率=44100";_HWR_SpeechToText.ContentLength=BA_AudioFile.Length;_HWR_SpeechToText.GetRequestStream().Write(BA_AudioFile,0,BA_AudioFile.Length);HttpWebResponseHWR_Response=(HttpWebResponse)_HWR_SpeechToText.GetResponse();如果(HWR_Response.StatusCode==HttpStatusCode.OK){StreamReaderSR_Response=newStreamReader(HWR_Response.GetResponseStream());textBox1.Text=SR_Response.ToString();}}catch(Exceptionex){}}这不会从Google返回任何值以下在curl中工作...只要发送的文件不太长,不到5秒。curl-XPOST-H"Content-Type:audio/x-flac;rate=16000"-Tseg_1.flac"https://www.google.com/speech-api/v1/recognize?xjerr=1&client=speech2text&maxResults=1&lang=en-us&key=...48593″{"status":0,"id":"","assumptions":[{"utterance":"现在是最喜欢的消遣","confidence":0.95148802}]}因此编码为speechX或flac在记录中包含一个带有采样率的参数包含您的密钥以保持文件持续时间短(您必须在API访问之前拆分文件)您发送给Google的FS_Audiofile文件流为空,这就是为什么你没有得到任何回复。你错过了这个电话:以上是C#学习教程:使用GoogleSpeechAPI分享所有内容,如果对大家有用需要进一步了解C#学习教程,希望大家多多关注—recognizedAudio.WriteToAudioStream(FS_Audiofile);本文整理自网络,不代表立场,如涉及侵权,请点击右边联系管理员删除。如需转载请注明出处: