摘要:杜建蔚
在开发软件时,由于在不同的操作系统中实现技术上的区别,可能某一软件的功能仅局限于单一的操作系统环境,例如windows98或是windowsnt,为此,我们需要在用户使用软件时给予相应提示。
我们需要编写一段小程序用于在软件启动时来判断当前软件所运行的环境到底是哪个操作系统,并当用户在错误的环境中运行软件时给予报警。本文将详细介绍实现的方法及过
程。
osversi......
摘要:静态文本控件的功能比较简单,可作为显示字符串,图标,位图用。创建一个窗口可以使用成员函数:
bool cstatic::create( lpctstr lpsztext, dword dwstyle, const rect& rect, cwnd* pparentwnd, uint nid = 0xffff );
其中dwstyle将指明该窗口的风格,除了子窗口常用的风格ws_ch......
利用SAPI 5.0进行音素分解1.引言
随着计算机网络,智能家电,多通道用户界面的飞速发展,人脸与语音相结合的人性化的交互方式,将成为未来人们使用计算机的主要趋势.在基于网络的人-人交互系统中,用户的语音输入可以直接在网络上作为音频流传输,在播放的一端进行音素切分,驱动人脸动画.这样做的优点是直接播放原始声音,声音失真小,缺点是传输的数据量大.需要占用较大的网络带宽,当虚拟环境中用户数量较多时网络与服务器可能不堪重负.另一种可行的方法是在发言的用户一端将语音输入切分为音素流,在播放的一端将音素流重新合成为语音,驱动人脸动画.这样做需要传输的数据量就小得多,网络与服务器的负载都要小得多,缺点是用户听到的是合成语音.本文旨在说明如何利用sapi5.0对输入音频进行音素切分. 【程序编程相关:
从网上找到的VC+ADO常用操作的示例
】
【推荐阅读:
从一个快速排序程序而想到的
】
【扩展信息:
H3C 802.1x兼容客户端编程简述(】
2.sapi5.0 及其语音识别(sr)简介
微软的 speech sdk 5.0是微软视窗环境的开发工具包.该开发工具包包括了先前的以"whistler"与 "whisper"命名的语音识别与语音合成引擎的最新版本.这个sdk中含有语音应用设计接口(sapi).微软的连续语音识别引擎(mcsr)以及微软的串联语音合成(又称语音到文本(tts))引擎等等.sapi中还包括对于低层控制与高度适应性的直接语音管理.训练向导.事件.语法编译.资源.语音识别(sr)管理以及tts管理,其中应用程序接口(api)与设备驱动接口(ddi),结构如图2所示.应用程序通过api层与sapi(speechapi)通信,语音引擎则通过ddi层与sapi(speechapi)进行交互.通过使用这些api,可以加快在语音识别或语音合成方面应用程序的开发.
sapi5在语音识别方面提供的基本服务:
a)管理语音输入,诸如从麦克风,文件等方式,并负责将语音转化成引擎所能接受的特定格式.
b)加载文法并负责解析与编辑.
c)编译用标准xml文件定义的文法,转换定制文法等.
d)使多个应用共享一个识别引擎.
f)返回结果与必要的信息给应用程序.
g)保存输入音频与序列化结果以便分析.
h)进行适当的错误异常处理,增加应用程序的健壮性.
sr引擎提供的基本服务:
a)可使用sapi的文法接口,加载所需文法.
b)进行语音识别
c)可调用sapi来处理文法与识别状态的改变.
d)产生识别结果并得到相应事件,以便给应用开发提供必要的信息.
3. 设计思想
由于sapi5.0不提供直接的方法将中文语音输入直接分解成相应的音素,故采用这种折衷的办法来处理.
具体步骤:
a)初始化引擎并使其工作在连续语音识别方式下(dictation mode),即非特定词汇的连续语音识别,同时建立一个从汉字到拼音的映射数据库....
下一页 摘要:在串口通讯程序中,经常要收到数据包,常有网友问及如何从这些数据包中提取需要的数据,如何处理校验等,在这篇文章里我举两个例子予以说明,程序说明为vc++6.0。关于串口编程建立程序的细节,请参阅我主页上的其它文章。同时,此文也适于其它通讯程序中艰数据报文的处理。
首先,应该指出的是,所有这些处理均在串口事件处理函数oncommunication()中进行。每当串口缓冲区中有一个或一个以上字符时......