Dragon NaturallySpeakingをイベント駆動型プログラムに組み込む方法はありますか?DNSを使用して、画面に書き込んだりXMLに直接保存したりせずに、ユーザーの音声入力を録音した場合、上司は本当にそれを望んでいます。私は数日間研究を続けていますが、(本当に高価な)SDKなしではこれを実現する方法がわかりません。それが機能するかどうかさえわかりません。
Microsoftには、音声認識機能が音声イベントを検出するまで待機して処理できる(Python)プログラムを作成する機能があります。また、最良の推測であると思われるフレーズに代わるフレーズを提案し、後で使用するために.wavファイルを記録できるという便利な品質も備えています。サンプルコード:
spEngine = MsSpeech()
spEngine.setEventHandler(RecoEventHandler(spEngine.context))
class RecoEventHandler(SpRecoContext):
def OnRecognition(self, StreamNumber, StreamPosition, RecognitionType, Result):
res = win32com.client.Dispatch(Result)
phrase = res.PhraseInfo.GetText()
#from here I would save it as XML
# write reco phrases
altPhrases = reco.Alternates(NBEST)
for phrase in altPhrases:
nodePhrase = self.doc.createElement(TAG_PHRASE)
DNSにこれを行わせることができないようです。私ができる最も近い-それをヒッキーすることは:
while keepGoing == True:
yourWords = raw_input("Your input: ")
transcript_el = createTranscript(doc, "user", yourWords)
speech_el.appendChild(transcript_el)
if yourWords == 'bye':
break
すべての文の後にユーザーに「改行」と言わせるという恐ろしい副作用さえあります!まったく好ましい解決策ではありません!DNSにMicrosoftSpeechの機能を実行させる方法はありますか?
参考までに:論理的な解決策は単にMicrosoft Speechに切り替えることだと思いますが、ニヤリと笑うためだけに、それはオプションではないと仮定しましょう。
更新-SDKを購入した人はいますか?役に立ちましたか?