以文本方式查看主题

-  计算机科学论坛  (http://bbs.xml.org.cn/index.asp)
--  『 XML在语音技术中的应用 』   (http://bbs.xml.org.cn/list.asp?boardid=47)
----  VXItelInterface()实现的问题  (http://bbs.xml.org.cn/dispbbs.asp?boardid=47&rootid=&id=48432)


--  作者:叶子凝
--  发布时间:6/12/2007 4:29:00 PM

--  VXItelInterface()实现的问题
在将语音板卡集成到OpenVXI中的时候遇到的疑惑,希望大家指点一二:
在OpenVXI整个工程的运行过程当中,首先是对于平台的初始化(VXIplatformInit),这其中包含了对电话接口的初始化(VXItelInit)....具体的初始化动作应该是在VXItel.cpp文件中完成的,具体是放在哪个函数当中我还不确定,是VXItelWaitForCall()?VXItelEnableCall()?VXItelCreateResource().....?想听听高手的建议,先谢咯!现在我倾向于放在VXItelWaitForCall()当中,这个初始化的动作在我理解应该只是完成打开板卡、等待电话呼入....之后在VXIprompt.cpp文件中,如果需要用板卡播放语音文件或TTS后的语音数据的话再调用板卡的播放函数即可。
现在的问题是:
在VXItel项目下,打开板卡的时候可以获得相关channel的句柄devhandle,
然而,
在VXIprompt项目下,再次调用板卡执行播放等功能的时候,依然需要在VXItel项目当中获得的那个句柄devhandle
对于这个跨项目的句柄传递问题,想请教大家,有没有好的解决办法,谢谢!!!!
不知我的问题阐述清楚了没有,我自个儿也很晕晕


--  作者:叶子凝
--  发布时间:7/4/2007 10:14:00 AM

--  
没有人回答:( 我现在的情况是将调用板卡的代码放在几个地方都可以实现用板卡播放语音文件,但还是不确定放在那个函数下面是最合理的,有人能够指点一二吗???
--  作者:yuyuanb7
--  发布时间:8/28/2007 3:46:00 PM

--  
兄台,我遇到类似的问题!我也有板卡驱动程序的接口函数,能实现录放音等功能,但我不知道加在哪个函数下面!最近研究了下,谈谈一些建议:
  在channel线程中,先是调用VXIplatformCreateResources()函数创建平台资源(主要包括对个接口类的操作),然后VXIplatformEnableCall(),VXIplatformWaitForCall(),如你所说我也觉在VXIplatformWaitForCall()函数中加入响应呼叫的接口函数,接下来VXIplatformProcessDocument()这个函数貌似对解析后的文档进行操作,进入这个函数内部查看,发现:
1   platform->VXIinet->SetCookieJar (platform->VXIinet, cookieJar);
2   platform->VXItel->BeginSession(platform->VXItel, NULL);
3   platform->VXIprompt->BeginSession(platform->VXIprompt, pProps);
4  platform->VXIrec->BeginSession(platform->VXIrec, NULL);
5   interpreterResult = platform->VXIinterpreter->Run(platform->VXIinterpreter,
                                                    finalUrl, *sessionScript,
                                                    documentResult);
估计,应该在第5步中加入自己的接口函数吧!
仅表示个人意见!
W 3 C h i n a ( since 2003 ) 旗 下 站 点
苏ICP备05006046号《全国人大常委会关于维护互联网安全的决定》《计算机信息网络国际联网安全保护管理办法》
46.875ms