⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 overview of sapi bordern 随笔.htm

📁 OverView of SAPI Bordern
💻 HTM
字号:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>OverView of SAPI :: Bordern 随笔</title>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" >

<link rel="alternate" type="application/rss+xml" title="RSS" href="http://www.blogbus.com/blogbus/blog/rdf.php?blogid=8946" >
<BASE HREF="http://www.blogbus.com/blogbus/blog/">

<STYLE TYPE="TEXT/CSS">
A{
	color:#4A664D; 
	text-decoration:none; 
}
SELECT    {
	BACKGROUND-COLOR: #ffffff; 
	COLOR: #000000; 
	FONT-FAMILY: MS Shell Dlg,Tahoma, sans-serif; 
	FONT-SIZE: 9pt ; 
	border: 0px #CCCCCC double;
}
INPUT     {	
	color: #333333; 
	background-color: #FFFFFF; 
	border: 1px #CCCCCC double; 
	FONT-FAMILY: MS Shell Dlg,Tahoma, sans-serif; 
	FONT-SIZE: 9pt;
}
TEXTAREA  {
	BACKGROUND-COLOR: #ffffff; 
	COLOR: #000000; 
	FONT-FAMILY: MS Shell Dlg,Tahoma, sans-serif; 
	FONT-SIZE: 9pt ; 
	border: 1px #CCCCCC double;
	overflow: auto;
} 
OPTION    {
	FONT-SIZE: 9pt; 
	BACKGROUND-COLOR: #F3F3F3; 
	COLOR: #51485f;
}
FORM    {
	FONT-FAMILY: MS Shell Dlg,tahoma; 
	font-style: normal; 
	line-height: normal; 
	font-weight: normal;
}

body{
}

td,body{
	font-size:9pt;
	color:#666666;
	font-family: Verdana,Helvetica,Arial;
}

.calendar{
	background-color:#A0A0A0;
}
.week{
	font-size:9px;
	background-color: #EFEFEF;
	}
.day{
	background-color: #FFF;
	}
.today{
	font-size:9px;
	background-color:#CCFF99
	}
.time{
	font-size:10px;
	color: #990033;
}

.diaryTitleBg{
	vertical-align: top;
	padding:3px;
	border:dotted 1px #DDDDDD;
	color:#000000;
	font-weight:bold;
	}

.diaryTime{
	font-weight:normal;
}
.diaryBody{
	padding:4px;
	border-right:dotted 1px #DDDDDD;
	border-left:dotted 1px #DDDDDD;
	}
.postBy{
	padding:3px;
	border:dotted 1px #DDDDDD;
}

.blogname{
	width:750px;
	color:#FFFFFF;
	text-align:left;
	font-weight:bold;
	font-size:20px;
	}
.blogdescr{
	width:750px;
	color:#FFFFFF;
	font-size:12px;
	text-align:left;
}

.bar{

	padding:1px;
	border:dotted 1px #006666;
	background-color:#339900;
	color:#FFF;
	/* font-weight:bold; */
}
.barBody{

	padding:3px;
	border-left:dotted 1px #006666;
	border-right:dotted 1px #006666;
	border-bottom:dotted 1px #006666;
}

.nav{
	border:solid 1px #DDDDDD;
	text-align:left;
	width:750px;
	}
.cmtBody{
	padding:3px;
	border:solid 1px #DDDDDD;
	}
.recmtBody{
	padding:3px;
	border:solid 1px #DDDDDD;
	background-color:#EFEFEF;
}
.cmtPost{
	padding:2px;
	border-left:solid 1px #DDDDDD;
	border-right:solid 1px #DDDDDD;
	border-bottom:solid 1px #DDDDDD;
}
.calendar_h{
	font-weight:bold;
	background-color:#339900;
	color:#FFFFFF;
}
.c_a{
	color:#0099CC;
	font-weight:bold;
	font-style: italic;
}
.quote{
	width:80%;
	background:#EFEFEF;
	color:#000000;
}
</style>
<script language="javascript" type="text/javascript">
function OpenComments (c) {
    window.open(c,
                    'comments',
                    'width=480,height=480,scrollbars=yes,status=yes');
}

function OpenTrackback (c) {
    window.open(c,
                    'trackback',
                    'width=480,height=480,scrollbars=yes,status=yes');
}
</script>
</head>

<body style='margin-top:12px'>
<center>

<table border='0' bgcolor='#006666' cellspacing='1' cellpadding='4' style='width:750px;height:100px'>
<tr>
<td style='background:url(./images/spring_top2.jpg)' valign='top'>
<div><a href='http://bordern.blogbus.com' class='blogname'>
Bordern 随笔</a>
</div>
<div class='blogdescr'>
边看、边做、边想、边写
</div>


</td>
</tr>
</table>

<br>

<div class='nav'>
<a href='diary.php?diaryid=118711'>&lt;&lt;&lt;XML Schema For TTS</a>&nbsp;|&nbsp;<a href='http://bordern.blogbus.com'>首页</a>&nbsp;|&nbsp;<a href='diary.php?diaryid=118723'>第一次看立体电影&gt;&gt;&gt;</a>
</div>

<br>

<div style='text-align:left;WIDTH:750px;'><!-- name='mainFrame' -->

<div style='width:530px;padding-left:0;FLOAT:left;'>

<div class='diaryTitleBg'>
OverView of SAPI
</div>

<div class='diaryTime'>
时间:2004-03-11
</div>
<div class='diaryBody'>
<STRONG><FONT color=#3366cc>
<DIV><FONT size=2>&nbsp;&nbsp;&nbsp; 不知道blogbus什么时候才能恢复正常,我暂且把这些写在信箱里吧。</FONT></DIV>
<DIV><FONT size=2>&nbsp;&nbsp;&nbsp; 今天早上手机一开机,就收到mokaiyu发来的sm,问我起床了没有,估计他一会儿就到了吧,赶紧起床洗脸刷牙。果然等我刚刚坐定,他就到门口了。唠叨了好一会儿,开始商量去哪里吃饭。最后说定去江南春吃饭。</FONT></DIV>
<DIV><FONT size=2>&nbsp;&nbsp;&nbsp; 一起吃饭的还有mokaiyu的女朋友,他同学以及他同学的女朋友江南春的菜味道果然不错,就是贵了一点。吃饭前天色就阴沉沉的,果然吃完午饭外面就下起了朦朦细雨。初春的细雨虽然不大,冰冷冰冷。昨天的天气还是阳光灿烂,不要太好了,天有不测风云,今天就这样了。出了饭店,他们一对一把伞亲亲我我地走了,那一刻,觉得有点感慨^_^</FONT></DIV>
<DIV><FONT size=2>&nbsp;&nbsp;&nbsp; 回宿舍,上线碰到wintergrass,跟我要linzhe的mail地址。linzhe,大学本科的时候跟我一个窝的,自从毕业后,他去了汉城,给窝寄过一封mail,记不清我有没有回信了。所以,答应给wintergrass找找,没有想到回消息给他的时候,居然说“现在老板来了,一会儿给你回消息!”“我靠,这么胆小啊”我嘀咕道,转念一想,啊,他老板不就是我老板吗!岂不是又让老板发现我不在实验室了。想到这里,拔腿就往实验室跑去啊~到了实验室,看到wintergrass悠闲的在那里看新闻呢,原来是这个zt把自动回复功能打开了,我ft!</FONT></DIV>
<DIV><FONT size=2>&nbsp;&nbsp;&nbsp; SAPI for TTS 的核心API就是ISpVoice了,使用这个接口,应用程序可以根据实时的事件来合成语音,编辑合成语音的特性,改变合成语音的音色。实际上大多数应用只需要使用这个一个接口就可以完成基本的TTS需要了。应用程序通过建立一个COM对象来获取到对ISpVoice的接口方法。每个COM对象都是独立的实例,通过名字区别。所以,加入如果同时有两个COM对象,则这两个对象的工作是完全独立的,互相不会干扰。</FONT></DIV>
<DIV><FONT size=2>&nbsp;&nbsp;&nbsp; 一旦应用程序第一次获取到一个ISpVoice对象,这个对象就被初始化成默认的设置。这个默认的设置具体值是在系统控制面板里设置的。这也就意味着一个新建立的这样的对象就可以立即被使用来合成语音了。可以使用Speak或者SpeakStream来把任何Unicode编码的字符串合成语音输出了。这两个函数都可以以两种方式工作,一种是同步合成,一种是异步合成。简单的使用中默认的就是同步合成方式。</FONT></DIV>
<DIV><FONT size=2>&nbsp;&nbsp;&nbsp; 在异步合成过程中,应用程序可以通过两个方法获得当前合成语音流的各种状态。方法一采用周期性地调用GetStatus函数,另外一个方法初始化对象时,设置参数使得对象在合成过程中自动向应用程序发送实时地事件来向程序报告程序感兴趣的状态参数。为了方便应用程序响应用户的动作,对象提供了Pause和Resume这两个函数实现了流的控制。</FONT></DIV>
<DIV><FONT size=2>&nbsp;&nbsp;&nbsp; 前面已经提到,一旦ISpVoice对象建立后,就以一套默认的设置工作,那么在运行过程中我们还能对这些工作参数进行修改吗?of course ,you can !也有两个方法来实现。程序可以调用ISpVoice API函数来设置,也可以使用XML Schema For TTS 对输入的字符串进行标注。一般地,API函数使用于全局的设定,而XML标注一些特定范围的内容。</FONT></DIV>
<DIV><FONT size=2>&nbsp;&nbsp;&nbsp; 尽管对桌面应用而言,TTS输出并不严格指向目标硬件声卡,但是,直接地或者间接地,SAPI 支持输出到PC声卡、缓冲、或者某个特定的电话硬件。ISpVoice提供了音频输出控制函数来对输出进行设置。</FONT></DIV>
<DIV><FONT size=2>&nbsp;&nbsp;&nbsp; 下午四点就被liusp拉去打球,一直到七点才同意去吃饭。最近发现跟他打球没有办法提高自己的水平,唉。晚上早早地回去洗澡就去412睡觉了,以便把床让给mokaiyu。又回到原来的宿舍睡觉,感觉好亲切^_^</FONT></DIV></FONT></STRONG>
</div>

<div class='postBy' align='right'>
<a href='mailto:zlsu@ustc.edu'>bordern</a>&nbsp;&nbsp;发表于&nbsp;&nbsp;<span class='time'>2004-03-11&nbsp;00:04&nbsp;&nbsp;<a href='tb_show.php?diaryid=118717' onclick="OpenTrackback(this.href); return false">引用Trackback(0)</a>&nbsp;|&nbsp;<a href='cpdiary.php?blogid=8946&amp;mode=edit&amp;diaryid=118717'>编辑</a>&nbsp;</span>
</div>

<br>

<div class='diaryTitleBg'>
评论
</div>

<!-- ~ cmts ~ -->
</div>

<div style='padding-left:40px;FLOAT:left;'>

<table cellpadding='4' cellspacing='1' border='0' class='border' width='100%'>
<tr>
<td class='bar' width='100%'>
发表评论
</td>
</tr>
</table>

<table>
<tr>
<td align='left'>
<FORM METHOD=POST ACTION="addcomment.php">
<br>

用户名:
<br>
<INPUT TYPE="text" NAME="name" value=''>
<br>

Email:
<br>
<INPUT TYPE="text" NAME="email" value=''>
<br>

主页: <br>
<INPUT TYPE="text" NAME="homepage" value=''>
<br>

<TEXTAREA NAME="cmt" ROWS="4" COLS="20"></TEXTAREA><br>
<INPUT TYPE="hidden" name='parentid' value='118717'>
<INPUT TYPE="hidden" name='jumpto' value='diary.php?diaryid=118717'>
<INPUT TYPE="submit" name='addsub' value='发表'>&nbsp;&nbsp;&nbsp;<INPUT TYPE="reset" value='重写'>
</FORM>
</td>
</tr>
</table>


<div class='bar'>
最后更新
</div>

<a href='diary.php?diaryid=524025'>收到生日礼物</a><br><a href='diary.php?diaryid=518552'>面条中的汤圆</a><br><a href='diary.php?diaryid=518405'>去年的今天</a><br><a href='diary.php?diaryid=471635'>过完万圣节</a><br><a href='diary.php?diaryid=469793'>使用 DirectSound API 编程</a><br><a href='diary.php?diaryid=455657'>我要渡周末</a><br><a href='diary.php?diaryid=446148'>最长的一个工作周</a><br><a href='diary.php?diaryid=433200'>这个假期不太长</a><br><a href='diary.php?diaryid=392398'>郁闷</a><br><a href='diary.php?diaryid=391623'>回收内存</a><br>
<br>
<br>
<iframe width=0 height=0 src="http://mail.ustc.edu.cn/~bordern/statistic.htm" frameborder=no border=0 MARGINWIDTH=0 MARGINHEIGHT=0 SCROLLING=no></iframe>


</div>

</div>
</center></body></html>

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -