2011-11-01 5 views
0

음 Microsoft 음성 플랫폼 SDK 10.2를 사용하고 있습니다.webservices의 Microsoft 음성 인식 결과를 반환하지 않습니다.

asp.Net WebService 응용 프로그램을 만들었고 대부분의 WebServices가 제대로 작동합니다 (HelloWorld() 등 ...). 그러나 SpeechRecognitionEngine을 사용하는 서비스가 하나 있는데이 응용 프로그램을 배포하고이를 실행하려고하면 webservice 나는 결과를 얻지 못한다. 즉, 리턴 라인에 도달하는 디버그 모드를 볼 수있다.하지만 브라우저를 호출하면 페이지가 응답없이 영원히 로딩된다.

[WebMethod] 

public bool voiceRecognition() {  
    SpeechRecognitionEngine sre = new SpeechRecognitionEngine(new System.Globalization.CultureInfo("pt-PT")); 
    Choices c = new Choices(); 
    c.Add("test"); 
    GrammarBuilder gb = new GrammarBuilder(); 
    gb.Append(c); 
    Grammar g = new Grammar(gb); 
    sre.LoadGrammar(g); 
    sre.InitialSilenceTimeout = TimeSpan.FromSeconds(5); 

    //// just for Testing 
    RecognitionResult result = null; 

    if (result != null) { 
     return true; 
    } else { 
     return false; 
    } 
} 

참고 :

다음은 코드의 샘플의 내가 WebService에 응용 프로그램을 배포하는 IIS를 사용하고 있습니다.

누군가에게 의견이 있으면 알려 주시기 바랍니다.

답변

0

답을 찾았는지 모르겠다. 며칠 전에 나 자신을 풀려고 할 때, 나는 당신의 질문을 우연히 발견했고 그것은 우리의 상황을 "T"와 일치 시켰습니다. 그것은 우리가 투입해야했던 모든 문제를 해결하기 위해

...

sre.RecognizeAsyncStop(); 
sre.Dispose(); 

"SRE는"당신의 SpeechRecognitionEngine 변수입니다

. 웹 서비스가 끝날 때 웹 서비스를 중단하고 처리하지 않으면 웹 서비스가 반환되지 않습니다.

희망이 도움이됩니다. :)

관련 문제