logo 广告
Loading...
 导航 所在位置:论坛首页 -> ┈┋电脑网络┋┈ -> 图象媒体技术应用 -> 多媒体软件Authorware6声音Midi篇
回复
标题:多媒体软件Authorware6声音Midi篇收藏 编辑 删除 楼主 | 上一篇 下一篇
love我
头像
等级:社区游民
权限:版主
积分:22
金钱:3919
声望:37
经验:37
发帖数:860
注册:2007年12月15日
资料 短消息2008-1-4 10:01:32
一.midiloop.u32函数的导入   1. 打开authorware6可执行文件,新建一个文件命名为:播放midi
2. 导入midiloop.u32【实现的途径:Windon-->functions-->(在Category
的下来菜单里选播放midi)-->load-->选中midiloop.u32文件夹(找到你下载的midiloop.u32)-->打开-->出现图1界面-->
选中Loopmidi和stopmidi-->load-->出现图2界面(点击loopmidi
在图2下面的descreption里可以看到具体的函数的表达意义和实例)-->done】为了便于大家应用,我把此函数放到网站中,请到下面去下载:
http://www.faithli.com/linshi/midiloop.zip 

图1



图2

二. 用函数控制midi的播放   1.播放midi
在流程线上放一计算图标,命名为播放midi. 里面的函数为:
LoopMidi(FileLocation^"midi\\rose.mid"),如图3所示:
  

图3
这样就可以在一个页面里循环播放midi音乐作为背景了:
2.这里需要对计算图标里的函数的路径说明一下:
①这里的FileLocation^"midi\\rose.mid"是midi音乐rose.mid的相对路径,
意思是midi文件夹和播放midi.exe 文件在同一目录下,这样不管你在
测试或者刻录光盘时,都不用在考虑路径的问题。
② 当然计算图标里我们也可以用绝对路径:LoopMidi("c:\\midi\\rose.mid")
但这样做在自己的计算机里运行是没有问题的,当作品完成以后刻录 光盘后,
到其它计算机里运行的时候找c盘里的midi文件夹,是找不 到的,因此不会正常实现midi的播放。这种方法只实用于制作
测试阶段。
③还有一种方法是绝对路径的表示方法:LoopMidi(":\\midi\\rose.mid")
这种表示方法是要求midi文件夹必须放在根目录下,也就是我们刻录
光盘的时候要把这个midi文件夹刻录在光盘的根目录下,这样不管你
的光驱是那一个盘符,保证能找到rose.mid,使midi音乐的播放没有问题。
3. 这种在流程线上播放的midi是没有控制的,即打开界面,背景音乐就
开始播放,平且是循环播放。我们希望界面上的音乐可以操纵,即我们想听
的时候,才打开,这就需要用下面的按钮来控制。

三. 用按钮或热区控制midi的播放   1用按钮控制midi的播放
在上面图3的流程上做一下修改,即在流程线上放一个交互图标midi控制,在其右边放一个按钮:播放midi如下图中的②;计算图标播放midi里的
函数同上采用相对路径:FileLocation^"midi\\rose.mid"如图中的③所示;
测试一下,只有图片没有声音,但我们在图片区看到的有一个播放midi
按钮,点击一下,可以听到优美的rose音乐。当然这里的按钮用的是系统自带的,我们一般在制作的时候要使用与界面协调的自制按钮,这会在后面的按钮篇里做详细的讲解。

  

图4
2.用热区控制midi的播放
为了清晰可见,我们一般会用一个喇叭或带音乐符号的小图片来做为
声音的标志,所以在图4中,将按钮改为热区,把小图片放到热区里。
点击小图片,背景音乐开始。达到和上面同样的播放效果。见图5。
兰色的箭头所示即热区和图片的重合。【实现的途径:ctrl+R(是运行)
ctrl+P(设计状态,这时候你可以将热区放大或缩小,将图片拖入热区内),再ctrl+R,点击音乐图片就可以听到rose音乐了】


图5

四:用函数停止midi的播放   如果你采用的midi播放是在流程线上,如上面的二中的方法,那么关闭该页面,进入另外的一个页面以后,音乐rose不能自动停止,一般我们采用在每个页面的流程线的最上方放置一个计算图标:停止midi,里面的函数很简单:stopmidi(),如图6所示,流程线上开始把其它的任何midi音乐停止,然后执行下面的播放rose(或butterfly)midi,这样在玫瑰页面音乐是rose.mid,调转到蝴蝶页面的时候就变成butterfly音乐。

  

图6

五:用按钮或热区停止midi的播放   用按钮按钮或热区停止midi的播放可以参考上面的方法三,在交互流程线的右侧加一个计算图标停止midi,里面的函数为:stopmidi()
具体的可看一下图7和图8。采用这种方法,可以在一个页面里控制背景音乐的播放,如果只想看内容,不想听音乐时候,就可以关掉;看的内容感觉枯燥的时候,再把背景音乐打开。 

图7



图8
在图8中放置了两个小图片,一个是静止的,一个是动态的gif,将动态的gif拖入停止midi的热区内,当背景音乐想起来的时候,点击动态的gif,声音停止。

六:停止midi和播放midi合并一个按钮   上面的第五节的内容里控制背景音乐的播放和停止是用了两个按钮或图片,这样在界面里显的比较乱,所以可以参照《多媒体软件Authorware6声音Wav篇》里的声音控制失效和合并将第五节里的midi用一个图片来控制,具体的原理不在详述,下面将其流程图给大家参考:图9和图10
  

图9



图10
在图9和图10里大家注意热区的交互响应属性里的active if
条件语句里的pause=0或pause=1
pause:=0 按钮失效pause:=1按钮正常运行。

七:退出和停止midi结合在一起   有时候我们在制作的课件的时候不希望界面上有很多的按钮,在流程线上放上播放midi背景音乐rose.mid,希望退出界面的同时,音乐rose.mid终止,这样的效果如
何实现呢。我们在制作的过程中通过反复的测试和思考,得到如下的方法:
将停止midi和返回主界面放到一个计算图标里:返回+停止midi
把它作为一个热区和退出按钮重合,如图11中的兰色方框所示。
返回+停止midi计算图标里的函数为:
StopMidi()
GoTo(IconID@"主界面")
 



图11

结束语

通过上面的学习,我们掌握了authorware里midi音乐的应用方法和技巧,为我们制作比较好的作品打下基础。如果你的wav音乐不错的话,也可以通过软件AmazingMIDI将其转化为midi背景音乐。这样作品的容量就会减小很多。
另外在作品制作完成以后,为了让打包后的exe文件能正常运行,需要将
midiloop.u32和midi(作品中用到的*.mid音乐)文件夹放到可执行文件exe同
一目录下:见图12。

签名

2008-1-4 10:01:32 顶部
买空间网13
头像
等级:社区游民
权限:普通用户
积分:0
金钱:185
声望:0
经验:0
发帖数:66
注册:2008年2月25日
  资料  消息 短消息编辑 删除 引用 第2楼

太专业了

 

签名
1100M=199元/年限量销售中,完美支持bbsgood  免费安装/调试/转换论坛,咨询QQ:546708858→ (买空间就上买空间网)岁末大酬宾●1100M空间仅售199元/年限量销售中
★完美支持网店、论坛等,支持asp/asp.net/php,免费安装/调试/转换网店、论坛
★空间买2年8折,买3年7折优惠
公司网址:www-maikongjian-com
2008-2-25 16:30:33 顶部
第1页 共1页 共1个回复     <<    >>    
 快速回复
  • 支持UBB,HTML标签

  • 高级回复

  • 操作选项:评分 加精 解精 奖惩 设专题 设公告 解公告 固顶 总固顶 解固顶 结帖 解结帖 锁帖 解锁 移帖 删帖
      首页 | 购买指南 | 虚拟主机 | 特色介绍 | 下载中心 | 支付方式
    Copyright 2004-2008 BBSGood.com Powered By: BBSGood.Speed Version 5.0
      咨询电话:0575-85513832、0575-85513825(传真)、7*24小时咨询服务:13606552007 不良信息举报中心 浙ICP备05029817号
      业务QQ:38958768、客服QQ1:415896239、客服QQ2:343896043、MSN:jccsxx@hotmail.com