首页 > 设计 > 媒体动画 > 正文

Authorware综合技巧:midI背景音乐运用攻略

2020-09-19 18:37:32
字体:
来源:转载
供稿:网友
  authorware 5.2支持的声音文件格式有一些限制,只有wav、aiff、pcm和swa扩展后缀名的文件才可直接导入到authorware程序中,尽管authorware 6.0开始支持mp3格式声音文件的播放和插入,但还是不支持midi文件的直接使用。我们知道midi文件使用的是数字乐器,换句话说midi文件并没有真正地记录了音频信息,而是象乐谱一样记录了各种乐器的和声和音高节奏,具体的演奏任务由声卡所带的数字乐器完成。midi音乐有着体积信息小的特点,而且不会与wav声音通道冲突,因此在进行多媒体开发时经常用来做背景音乐,但authorware并不直接提供对midi声音文件格式的支持,怎么办呢?别急,authorware提供了外部函数的接口可以解决这个问题:利用第三方的ucd外部函数,我们可以实现对midi声音文件的支持。下面我们就一起来制作两个关于midi背景音乐循环播放的范例吧!

3.1 循环播放midi背景音乐

  在这里我们要实现的目的是让midi背景音乐循环的播放,具体思路是通过导入authorware的外部函数midiloop.u32相关的两个扩展函数,实现对midi背景音乐的循环播放。

  在介绍范例前我们简单介绍一下midiloop.u32的相关扩展函数:

result:=loopmidi(file)

  这个函数的功能是对程序指定的midi音乐进行循环播放,直到用户中止为止。其中参数file就是用户自行指定的外部midi文件,当然,这里指定的midi声音文件并没有导入程序内部,只是存在一种相当于链接的关系。

result:=stopmidi()

  这个函数的功能是停止当前正在播放的midi音乐。参数为void型。

1、 执行界面预览,如图3.1



图3.1 范例程序执行效果
2、 程序的流程图如图3.2



图3.2 范例程序流程图

3、 操作步骤:

1) 新建一个文件,并调入外部函数midiloop.u32的相关扩展函数,如图3.3



图 3.3 调入midiloop.u32的相关扩展函数
2) 加入一个计算机,设置运行窗口的大小,计算图标的内容为:

resizewindow(320,240) ------resizewindow是一个系统函数,设置窗口的大小

3) 设置背景图标“background”。

4) 开始播放midi声音文件,在计算图标里写上:

stop:=0 -----stop为自定义变量,用来控制midi

loopmidi(filelocation^"midi.mid") -----程序开始播放midi背景音乐

5) 设置对midi音乐的开关控制以及程序的退出。分别建立三个button按钮响应交互,返回类型设置如图3.2。

在“stop midi”按钮响应交互计算图标里输入代码:

stop:=1

stopmidi()

在“replay midi”按钮响应交互计算图标里输入代码:

if stop=1 then

loopmidi(filelocation^"midi.mid")

stop:=0

end if

在“exit”按钮响应交互计算图标里输入代码:

stopmidi() ------停止midi背景音乐播放

quit() ------退出程序

6) 存盘完成。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表