2010-12-20 8 views
2

이 질문에 대한 답은 잘 모르지만, 저는이 문제에 관해 도움이 될 것 같습니다. 파이썬에서 Microsoft의 Speech API를 다루는 코드 스 니펫을 발견하고 W3C의 "Speech Recognition Grammar Specification Version 1.0"에 대해 알게되었습니다. 내가 발견 할 수있었습니다 어떤에서Python Microsoft Speech API 오류 : SPERR_NO_DRIVER from CmdLoadFromFile

>>> import win32com.client 
>>> listener = win32com.client.Dispatch("SAPI.SpSharedRecognizer") 
>>> context = listener.CreateRecoContext() 
>>> grammar = context.CreateGrammar() 
>>> grammar.DictationSetState(0) 
>>> grammar.CmdLoadFromFile("C:\\grammar.grxml") 
Traceback (most recent call last): 
    File "<pyshell#1>", line 1, in <module> 
    grammar.CmdLoadFromFile("C:\\grammar.grxml") 
    File "C:\Python26\lib\site-packages\win32com\gen_py\C866CA3A-32F7-11D2-9602-00C04F8EE628x0x5x4.py", line 2372, in CmdLoadFromFile 
    , LoadOption) 
com_error: (-2147352567, 'Exception occurred.', (0, None, None, None, 0, -2147201021), None) 

은, 위의 오류 코드는 "There is no wave driver installed."

함께 할 수있는 뭔가가에 "SPERR_NO_DRIVER을"해당합니다

나는이에 내려 삶은

나는 지금 붙어있다. 이 컨텍스트에서 웨이브 드라이버가 무엇인지, 어디에서 어떻게 디버깅하는지 등을 알지 못합니다. 의견이 있으십니까?

답변

0

.wav 데이터는 가장 기본적인 종류의 사운드 데이터입니다. 파형의 원시 샘플링은 "소리가 얼마나 큰가" "초당 8000 회에서 44000 회까지입니다.

웨이브 드라이버를 사용하면 컴퓨터에서이 원시 데이터를 마이크에서 가져 오거나 스피커로 보낼 수 있습니다.

컴퓨터에 사운드 카드가있는 경우이 카드가 이미 설치되어 있어야합니다. 사운드 하드웨어가없는 컴퓨터에서 개발하고 있습니까?

편집 : 문서를 조금 더보고 난 후에 오류가 잘못 식별 된 것 같습니다. -2147201021은 SPERR_UNSUPPORTED_FORMAT 인 0x80045003입니다 (http://msdn.microsoft.com/en-us/library/ms717306%28VS.85%29.aspx 참조)

사용중인 Speech API 버전이 grxml 파일을 지원합니까? http://msdn.microsoft.com/en-us/library/ee125091%28v=VS.85%29.aspx에서 .xml 또는 .cfg를 요구할 수 있습니다. 확장자를 .grxml에서 .xml로 변경해보십시오.

+0

아니요 ... 저는 웨이브 드라이브가 문법 파일을로드하는 기능에 어떤 영향을 주는지 보지 못했습니다 ... – skeggse

+0

오랫동안 응답을 받아 들인 것에 대해 사과드립니다. .xml하지만 동일한 오류가 계속 발생합니다. – skeggse

+0

이 기능을 사용하려면 Visual Studio가 설치되어 있어야합니까? – skeggse