| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 2293 人关注过本帖
标题:哪位大神帮我把这段语音转文字的VBS代码翻成VFP的,谢谢!
取消只看楼主 加入收藏
jlliushi
Rank: 2
等 级:论坛游民
帖 子:33
专家分:10
注 册:2021-12-24
结帖率:100%
收藏
已结贴  问题点数:30 回复次数:5 
哪位大神帮我把这段语音转文字的VBS代码翻成VFP的,谢谢!
下面是VBS代码的语音识别程序,哪位大神帮我把这段代码翻成VFP的,谢谢!
'VBS语音识别程序
Dim ScriptComplete '程序结束标志
Dim SR '语音识别(Speech Recognition)对象
Dim Grammar '语音识别的命令语法对象
'初始化命令字典对象,可根据自己的需要添加命令
Set WshShell = CreateObject("WScript.Shell") '创建WshShell对象
ScriptComplete = False '初始化程序结束标志
'创建语音识别对象,调用由"Command.XML"所定义的语法,并启动语音识别引擎
Set SR = WScript.CreateObject("SAPI.SpSharedRecoContext", "RecoContext_")
Set Grammar = SR.CreateGrammar
Grammar.CmdLoadFromFile "Command.xml", 0
Grammar.CmdSetRuleIdState 0, 1
'等候你的语音命令(需要安装麦克风),当识别出"命令结束"命令时程序结束
Do
   WScript.Sleep 1000
Loop Until ScriptComplete
'语音命令被识别
Sub RecoContext_Recognition(ByVal StreamNumber,ByVal StreamPosition,ByVal RecognitionType,ByVal Result )
    Text = Result.PhraseInfo.GetText '获取语音识别引擎所识别的命令
    If Text <> "命令结束" Then
       MsgBox Text
     Else
       ScriptComplete = true '程序结束标志
    End If  
End Sub
搜索更多相关主题的帖子: 对象 语音识别 结束 语音 命令 
2021-12-28 07:25
jlliushi
Rank: 2
等 级:论坛游民
帖 子:33
专家分:10
注 册:2021-12-24
收藏
得分:0 
回复 2楼 吹水佬
inkey(1)是等待1秒,让用户键盘输入。
而本任务要等待的是:
SAPI中的ISpeechRecoContext(事件)
Recognition事件:当SR引擎产生一个识别时发生;
它被作为语音识别中最重要的一个事件,因为它返回一次成功识别的结果。一次成功的识别就是一个单词或者短语满足识别上下文的的开发语法的要求或者语音质量满足最低信任值。如果上述两点都不符合,引擎将会返回FalseRecognition事件。被发音的内容不满足信任值有很多原因,如背景干扰、不清晰语音、不常用单词或短语。
结果成员中包括识别结果对象,并且从这些可以得出更多关于语音的信息。

不知道这个事件在VFP中怎么写...


[此贴子已经被作者于2021-12-28 09:58编辑过]

2021-12-28 09:49
jlliushi
Rank: 2
等 级:论坛游民
帖 子:33
专家分:10
注 册:2021-12-24
收藏
得分:0 
回复 4楼 吹水佬
这个博客里有4篇介绍SAPI的博文,可惜我看不太懂,您看能不能把那个事件移植到VFP里写。。。
https://

就是不知道这个事件在VFP里怎么写
Sub RecoContext_Recognition(ByVal StreamNumber,ByVal StreamPosition,ByVal RecognitionType,ByVal Result )     '如果语音命令被识别时发生
    。。。。
End Sub

[此贴子已经被作者于2021-12-28 10:11编辑过]

2021-12-28 10:07
jlliushi
Rank: 2
等 级:论坛游民
帖 子:33
专家分:10
注 册:2021-12-24
收藏
得分:0 
回复 6楼 吹水佬
出错信息:方法程序或事件不能含有嵌套的过程或类定义。
2021-12-30 09:05
jlliushi
Rank: 2
等 级:论坛游民
帖 子:33
专家分:10
注 册:2021-12-24
收藏
得分:0 
回复 7楼 cjc1010
RecoContext不是个控件,是VFP用Set RecoContext = WScript.CreateObject("SAPI.SpSharedRecoContext", "RecoContext_")创建的一个对象;
Recognition是创建的这个对象本身的事件:当Recognition产生一个语音识别时发生,它是语音识别中最重要的一个事件,因为它返回一个成功识别的结果;
现在的问题是,不知道这个事件在VFP中怎么写...
2021-12-30 09:13
jlliushi
Rank: 2
等 级:论坛游民
帖 子:33
专家分:10
注 册:2021-12-24
收藏
得分:0 
回复 10楼 吹水佬
问题已自己解决,谢谢!
2022-01-01 07:12
快速回复:哪位大神帮我把这段语音转文字的VBS代码翻成VFP的,谢谢!
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.019155 second(s), 11 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved