语音播报程序的设计与实现
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
8
录制准备有关的声音文件
系统首先在网站主目录下建立一个子目录
然后进行有关声音的录制, 如数字 “8=> ” 、 9:;4<, “十” 、 “ 百” 、 “ 小时” 、 “ 分钟” 、 “ 秒” 、 “ 您好”等的录 制, 再通过 ’::1$<?@ 等声音编辑软件把各个声音分
现 代 生成一个文本文件 (102J?6@.FH; ,然后在该文件中 计 写入要播放的文件列表 (程序用 OP9N3?G@ 语言实 算 现) 。 机 QR ( 总 5;4N@?:4 S/@9:;4<)31AP2C01 @/FGI:;3TP2C01 @/FG!?4;@/T 第 P2C01 @/FG9/N:4< D 一 <?F 6@3*/FG5?1/T 6@39/3C/3U(T*/FGV3?@/*?F/T6@3%/F0?<W 八 *?F/T6@3J?4/ 五 ! 期 !! " # $ % & ’ "! ( ) * $ % +,,-.- " )
在 (56759:;.<=2 文 件 中 写 入 要 播 放 的 列 表 声 / 步骤二: 音文件
(+ ) 网页中嵌入 % ?65 (567?> 对象 在网页中设置一个全局变量 :;>01234)>5 , 用于 即 (56759:;.<=2 的 )%8。然 返回 V?;01234)>5 的值, 后在网页中嵌入一个 %?65 (567?> 对象,并设置其
割成不同的文件 A.B0C 文件 D, 并且在保证声音清晰 如有必要还可以 的前提下, 使声音文件的 9?E/ 最小, 把.B0C 文件转换为.FGH 或.3F 文件, 最后以 “8.B0C” 、 、 “H.B0C ” … “@/4.B0C ” 、 “I:;3.B0C ” 等文件名 “+.B0C ” 保存在 9:;4< 子目录下。
实践与经验
网站语音播报程序的设计与实现
杨尚真 , 王 鹰 , 刘中宇
(中南大学现代教育技术中心 (网络中心) , 长沙 -8,,XH ) 摘 (% /01" 4/ (102/3 ) 控件的 要:本文详细介绍了两种实现网站语音播报程序的设计与实现方法。内嵌 % /01 (102/3 方法通过自动播放 K9( 程序生成的一个播放语音列表文件来实现播音; 内嵌 51067 对象则通过其库文件的 在动画中通过脚本调用库文件中相应的声音文 J?4Y0S/ (3:G/3@2 属性建立音频库文件与动画脚本的链接, 件实现播音。 关键词: K9( ; % /01 (102/3; 51067 ;音频;对象
实践与经验
/
通过内嵌 01 2 3 4 对象实现播音
01234 !5 (678933:7;21 +,,- 能够通过库文件的
() Q26 ?12A37G;HM;9P C7G;H S
TT 新建一个声音实例 Q26 1:3@MY ZS
用于记录播放声音文件的列表 TT 定义一个空数列,
<:;=2>9 (67?96@A 属性建立库文件与动画脚本的链
"DS?G;FI
(:;>*?<OR95?I !:;>"DS*?U;(6;NB:?>@?>.<6O(6;N
/ 确认并保证 01234 子目录的存在 9W 1DSR:.R154?>$U9:;: E:?>@?>.<6O(6;N EF P 01234FIIBR65:? ;N?3 1DSR:.’>?6;?R154?> E:?>@?>.<6O(6;NEF P 01234FII !?34 9W / 重新生成 01234 子目录下的 (56759:;.<=2 文件 !!9W 1DSR0.R95?$U9:;:E:;>"DS*?U;(6;NIB*%)$ ;N?3 1DSR:.#?5?;?R95?E:;>"DS*?U;(6;NI ?34 9W !! :?; 1DS*?U;0 B1DSR0.’>?6;?;?U;W95? E:;>"DS*?U;(6;NT;>2?T W65:?I !!:?; 1DSR0B31;N93V
:;>0?>@?>A( B >?C2?:;.:?>@?>@6>96D5?:EF51G65H644>FI
也可指定某个特定的 A( 地 / 获取本地服务器 A( 地址, 址, 如 F+,+.JKL.M=.JF
PP F Q :;>0?>@?>A( :;>0?>@?>A(BFN;;O : :;>*?<OR95? B F P 01234P(56789:;.<=2F 49< 1DSR:T1DS*?U;0T:;>"DS*?U;(6;N
下 列 函 数 利 用 K9( 的 组 件 5?1/926@/F"LM/N@
实践与经验
/ 步骤一: 函 数 首 先 在 网 站 的 01234 子 目 录 下 生 成 一
个 (56789:;.<=2 文件 段 (略)
1DS*?U;0.G51:? :?; 1DS*?U;0B&1;N93V V?;01234)>5 B :;>0?>@?>A( Q :;>*?<OR95? ?34 R23G;913 ]Y
+
通过内嵌 %/ 0 1 (1 0 2 / 3(%/ 0 1 "4 / 对象实现播音 (1 0 2 / 3 )
因此如 %/01 (102/3 没有提供多文件播放功能,
果想连续播放多个声音文件着实是一件令人头痛 的事。但是它提供了一个打开播放列表文件 (扩展 名为 .FH; 或 .G16, 内容格式为文本文件) 的功能, 据 此我们有了解决方案: 系统首先自动生成一个提示 语音的播放文件列表文件 (如 (102J?6@.FH; ) , 然后 在网页中嵌入 %/01 (102/3 对象,播放该列表文件 即可。 生成播放文件列表文件 (102J?6@.FH; (8 )
(F:G>9O;93V.R95?07:;?< :?; 1DSR0B:?>@?>.G>?6;?1DS?G;
百度文库
上述函数运行后, 假设输入的时间为 (++ : J,: , 则最后输出的 (56789:;.<=2 的文本内容为: ,L)
N;;O : PP +,+.JKL.M=.J P 01234 P +.\6@ N;;O : PP +,+.JKL.M=.J P 01234 P *?3.\6@ PP +,+.JKL.M=.J P 01234 P +.\6@ N;;O : PP +,+.JKL.M=.J P 01234 P X12>.\6@ N;;O : N;;O : PP +,+.JKL.M=.J P 01234 P J.\6@ N;;O : PP +,+.JKL.M=.J P 01234 P *?3.\6@ PP +,+.JKL.M=.J P 01234 P !932;?.\6@ N;;O : N;;O : PP +,+.JKL.M=.J P01234 P L.\6@ PP +,+.JKL.M=.J P 01234 P 0?G134.\6@ N;;O :
0%’ 属 性 的 ^652? 为 :;>01234)>5, 自 动 播 放 属 性 _2;10;6>; 值为‘JT循环播放属性 811O 值为 ,。完整 的 %?65 (567?> 对象配置如下:
a"bc$’* G56::94BG5:94d’R’#__,=‘eb$-‘JJGW‘be-b‘ ,,+,_Rbb’’R_ N?9VN;B+= \94;NB-+L 659V3BF<9445?FY aO6>6< 36<?BFH$U;?3;fF @652?BFJJ+KeFY aO6>6< 36<?BFH$U;?3;gF @652?BFh,KFY aO6>6< 36<?BF_)*"0*_%*F @652?BF‘JFY aO6>6< 36<?BF0X)RR8$F @652?BF,FY aO6>6< 36<?BF(%$R$*’XF @652?BF,FY aO6>6< 36<?BF&"8_b$80F @652?BF‘JFY aO6>6< 36<?BF0%’F @652?BFa]B :;>!1@9?)>5]YFY aO6>6< 36<?BF’"&*%"80F @652?BF’13;>15(63?5FY aO6>6< 36<?BF’"&0"8$F @652?BFG59OJFY aO6>6< 36<?BF8""(F @652?BF,FY aO6>6< 36<?BF&)!8""(F @652?BF,FY aO6>6< 36<?BF’$&*$%F @652?BF,FY aO6>6< 36<?BF!_A&*_A&_0($’*F @652?BF,FY aO6>6< 36<?BFb_’ij%")&#’"8"%F @652?BFk,,,,,,FY a?<D?4 :>G BF a] B :;>!1@9?)>5] YF \94;N BF Jh,F N?9VN; BF =,F G13;>15:BF’13;>15(63?5F 62;1:;6>;BF;>2?F G13:15?BF’59OJF 3156l D?5:BF;>2?F ;7O?BF62491 P U‘O3‘>?6562491‘O52V93FY a P "bc$’*Y
引 言
网站数据提示特别是有关访问时间、访问次 数、 帐号金额、 问候语等等, 是很多网站必不可少的 功能。让用户访问时, 感到更亲切、 更人性化的设 计, 一直是各位网站管理员为网友服务的追求。但 现在各网站采用的方法不是文本提示,就是图形调 用, 其改进无非是文字更亲切, 面向不同用户更细分, 图形做得更夸张、 漂亮些, 但总觉得不是特别满意。 笔者在开发和使用 “开放计算机实验室 (网吧) 计费管理系统” 时, 由于功能的要求, 必须提供语音 播报学生帐号剩余机时, 由此想到声音其实是拉近 网站和网友最好的媒体, 是最人性、 最亲切的交流 方式。 以下是学生上机卡剩余机时报数模块的设计 与实现方法。模块开发分两个步骤, 第一个步骤是 录制处理有关的报数声音文件; 第二个步骤是通过 内嵌对象实现声音的播放, 该步骤我们实验了内嵌 (%/01"4/ (102/3 ) 对象和内嵌 51067 对象 %/01 (102/3 两种实现方法。
接, 在动画中通过脚本调用库文件中不同的声音文 件即可实现播音。据此得到播音的解决方案: 首先 利用 BC( 程序生成播音数据接口文件, 然后 01234 从接口文件中获取要播音的数据, 再根据这些数据 从库中链接声音, 选择相应的声音文件, 生成播音 列表, 最后进行播放。 生成播音数据接口文件 (D ) 为了实现 01234 与 BC( 程序的数据交互, 我们 采用了一个文本文件 (12A<:3@.@E@ F 保存在 C7G;H 子 目录下 I 来作为播音数据接口。假设播音时间为 , 则 (12A<:3@.@E@ 的内容格式如下: (++: D,: ,J)
/ 写入小时报时声音文件十位和个位数 9W *?<OX12>Y , ;N?3 9W *?<OX12>YBJ, ;N?3 *?<OZ>9;?*9<?B*?<OX12> [J, :;>893?B :;>0?>@?>A( Q F P 01234 P F Q G:;> E*?<OZ>9;?*9<?I Q F.\6@F 1DS*?U;0.\>9;?593? :;>893? :;>893?B :;>0?>@?>A( Q F P 01234 P *?3.\6@F 1DS*?U;0.\>9;?593? :;>893? ?34 9W *?<OZ>9;?*9<?B*?<OX12> <14 J, 9W ;?<O\>9;?*9<? Y, ;N?3 现 :;>893?B :;>0?>@?>A( Q F P 01234 P F Q G:;> 代 计 E*?<OZ>9;?*9<?I Q F.\6@F 1DS*?U;0.\>9;?593? :;>893? 算 ?34 9W 机 ( / 写入 F小时 F声音文件 X12>.\6@ 总 :;>893?B :;>0?>@?>A( Q F P 01234 P X12>.\6@F 第 1DS*?U;0.\>9;?593? :;>893? 一 ?34 9W 八 秒报时声音文件十位和个位数程序 / 以下为写入分 钟 、 五 期 ! ! " # $ % & ’ "! ( ) * $ % +,,-." )