电影播放控制
大家都知道,在Authorware5.0中,经常会用到数字化电影。那么,如何可以使用户方便地对数字化电影进行播放、停止、暂停、快进、快退加以控制呢,下面我向大家介绍几个
方案
气瓶 现场处置方案 .pdf气瓶 现场处置方案 .doc见习基地管理方案.doc关于群访事件的化解方案建筑工地扬尘治理专项方案下载
。
方案一:使用有关媒体控制的函数和变量控制
1、在流程线上放置一个[运算]图标,输入"Resizewindows(640,480)",调整运行时窗口的大小;
2、在流程线上放置一个[运算]图标,命名为"初值",输入:
stopstatus:Flase
movierate:=10
对程序中的变量进行初始化;
3、在流程线上导入一[电影]图标,导入的是*.avi文件,以外部文件格式存在,所以[mode]选项不可选,单击[Timing]标签,在[concurrency]中选择[concurrent]选项,在[Rate]中输入变量[movierate],用来控制播放速度,单位是帧/秒;
4、在流程线上放置一个[交互]图标,命名为"控制",依次拖放7个[群组]图标到交互图标的右下侧,分别命名为"放映"、"暂停"、"继续"、"快进"、"后退"、"退出",响应类型为"按钮"响应,并依次调整好各按钮的位置;
5、为了设置数字化电影在播放时,"快进"、"继续"、"前进"、"后退"按钮为不可选,可以双击图标上方的按钮响应标志,在弹出的[properties:Response]对话框的[Active IF]后面的正文框中输入变量"stopstautus";
6、为各群组图标定义运算编辑内容,选择[放映]图标,按下Ctrl+=键,或选择Modify下Icon中的Properties,在弹出的运算编辑窗口中输入:
movierate:=10
stopstatus:=Flase
GoTo(IconID@"movie")
7、同样方法,在[快进]运算编辑窗口中输入:
movierate:=movierate+5
stopstatus:=False
GoTo(IconID@"movie")
在[暂停] 运算编辑窗口中输入:
mediapause(IconID@"movie",Ture)
stopstatus:Ture
在[继续] 运算编辑窗口中输入:
mediapause(IconID@"movie",False)
stopstatus:=False
在[前进] 运算编辑窗口中输入:
mediaseek(IconID@"movie",Mediaposition@"movie"+2)
在[后退] 运算编辑窗口中输入:
mediaseek(IconID@"movie",Mediaposition@"movie"-2)
在[退出] 运算编辑窗口中输入:
Quit()
另外在退出交互按钮的Response中Branch中选择Exit Interaction,以退出交互选项。
程序流程图如下:
程序效果如下图:
方案二:用Active X控件。
Active X控件是Microsoft提供给广大软件开发人员的工具,使它们能够方便地使用现有的Active X控件来搭建程序,[Active Movie Control]控件便支持数字化电影的控制功能,具体做法如下:
1、设置演示窗口的大小;
2、在流程线上插入Active X控件。选择菜单[Insert]中的[Control]的[Active X]选项,如下图所示弹出[ActiveX control]对话框;
3、在[SelectActive X Control]中找到[Active Movie Control]选项,单击[OK]选中该控件,弹出[ActiveX Control Properties]对话框,在这里可以看到控件的各项属性,先不管它们,单击[OK]按钮,此时流程图上出现图标,将其命名为"movie";
4、在流程线上设置一个名为的[运算]图标并输入:
setspriteProperty@"movie",#showPosition controls,Ture)
setspriteProperty@"movie",#showSelectio ncontrols,Ture)
用来设置showposition controls和showselection control)两个按钮可见;
5、在流程线上放一名为的[运算]图标,建立一个文件输入对象,输入如下内容:
IF childinstance=0 then
childinstance:=Newobject("Fileio")
End if
6、先拖动一个[交互]图标命名为"控制",再拖动一个命名为"打开"的计算图标至交互图标右下方,选择按钮交互方式,计算图标内容如下:
moviefile:=callobject(childinstance,"displayopen")
setspriteproperty(@"movie",#Filename,movieFile)
其作用是打开一个数字电影并赋值给Active Movie Control控件,以播放数字电影。
至此,在Authorware5.0中插入[Active Movie Control]控件实现数字电影的控制效果制作完成,其流程图如下图所示:
方案三:使用知识对象(Knowledge Object)
知识对象是Authorware5.0提供的功能模块,用户可以方便地将这些模块嵌入到流程中去,其方法如下:
1、设置演示窗口大小;
2、在主菜单中选择[Windows]下[Knowledge Object]选项,弹出[Knowledge Object]对话
框,如图所示,在知识对象列
表
关于同志近三年现实表现材料材料类招标技术评分表图表与交易pdf视力表打印pdf用图表说话 pdf
框中选择Movie controller选项;
3、拖动[Movie controller]到流程线上,在弹出的是否保存信息条中输入文件名后保存;
4、文件保存后弹出[Movie controller Knowledge Object]对话框,单击[Next]按钮,进入下一步,在Select the Digital Movie File中选择欲播放的数字电影;
5、单击[Next]按钮,进入下一步,设置控制按钮选项,共有"播放"、"暂停"、"快进"、"快退"、和"停止"5个选项,选择你合适的选项后单击[]进入[Change Size],设置数字电影播放区域在窗口中的大小,可以输入数字或按比例,再按[Next]按钮进入数字电影在窗口中的播放位置设置。设置完后,单击[Done]按钮完成。运行程序,看一看效果,是不是很酷。 方案四:加入电影滑块控制
1、使用Authorware5.0提供的滑杆。Authorware5.0只对*.mov格式的电影提供了滑杆,可以将*.avi或*.flp电影用Adobe Premiere转化为*.mov格式。具体做法:在Authorware5.0流程线上放置一个[电影]图标,按[Import]导入*.MOV格式的电影后,按[Timing]按钮,在[Play]选项中选取[Controler Play]即可。唯一缺点:格式的文件太大,课件打包后,用户不能随意放大电影。
2、使用微媒体播放器提供的滑杆。在该流程上放一个[运算]图标,双击打开后输入:(JumpOutReturn "","c:\love.avi"),如图:
这里JumpOutReturn是函数,功能是调用并返回,括号中第一个""是空的,意思是调用默认的程序,在上放映电影默认的程序当然是媒体播放器了;"c:\love.avi"表示放映的文件的路径及文件名,这样打包后,用户可以随心所欲地控制数字电影的播放,甚至还可以全屏播放呢。
至此,在Authorware5.0中控制数字电影的技巧就讲到这儿,还不心动吗,赶快上机去试一试吧~
背景音乐音量大小的调节
我们在用Authorware制作CAI课件及其他多媒体作品时,一般情况下都加了背景音乐,但是却不能进行音量大小的调节,经过实验,站长通过系统函数的调用,实现了这一目标。
在流程线上拖入一个交互图标,在其右边拖入一个计算图标,命名为“调节音量”,双击打开计算图标,点击函数加载,选择winAPI.u32函数,在出现的函数窗口中选择“WinExec()”函数,粘贴在计算图标中,将其内容改成如下:WinExec( "Sndvol32.exe", 1 ),这样一旦我们按下这个按钮,就会弹出音量调节对话框,进行音量调节。 Authorware中插入的视频
一直想制作一个关于英文电影片段的课件,这个课件希望能实现无字幕放映、英文字幕放映、中文字幕放映等功能。可是在Authorware中插入的视频文件默认在最高层,也就是说如果想遮盖影片中的字幕无法直接实现。虽然可以通过Premiere等软件配合解决,但要求制作者必须熟练使用这类软件。后来终于找到了一个简单易用的解决方法,它不仅仅能解决字幕问题,瘦身效果还特别好。
1( 截取VCD片段
采用是超级解霸。先播放VCD,单击[循环\选择录取区域]按钮,设置为循环状态。拖动进度滑块至想要录取区域的起始位置,单击[选择开始点]按钮,同样的方法设置好录取的终止位置。单击[保存MPG]按钮,输入储存的录像文件名后即可开始录制。需要了解的是录制的MPG是MPEG1格式的文件。
2( 将MPEG1格式文件转换为AVI文件
这里WinMPG Video Convert,它的界面如图1。WinMPG Video Convert是视频转换大师,它支持的格式非常丰富,它可以帮助你快速完成视频文件的转换工作。选择其中的“All to AVI”便可非常简单地将原文件转换成AVI文件。
3( 将AVI文件转换为Flash文件
选用Vid2Flash 1.4或Flix,这两种软件都可以将AVI文件转换为Flash文件。Vid2Flash 1.4界面如图2。选择好帧率和品质后点选[浏览]按钮,选择要转换的文件后点[生成]即可。此时Flash文件已经生成,你会发现它的“身材”小了好几倍。
4( 链入Authorware程序
链入Authorware后,在Flash上就可以轻松加上图像(如黑色图像条)遮盖字幕了,需要显示字幕时可以将此图像移开。将这个图像做成了一个播放器,这样便做到了无痕迹遮盖,我们还可以利用控制Flash播放的各种方法控制这段视频,如静音、播放、快进、快退、暂停等。
动画与声音同步播放
在多媒体的制作中,动画与声音常常要同步播放,播放的方式通常有两种,一种是以声音为主,动画与声音同步播放,另一种是以动画为主,声音与动画同步播放。本文以
Authorware 4.0为例,说明这两种同步效果的制作方法。
动画随声音同步播放
1、 在流程线上放置一运算图标并命名为“s=0”,双击打开并输入“s=0”,s是作为控制动画播放的初始化变量。
2、 在流程线上放置一数字化电影图标,命名为“movies”,双击打开数字化电影图标并加载动画文件,如图1所示。
图1
3、 单击[timing]按钮弹出设置窗口,从[play]下拉列表中选定[until true]选项,在其下面的输入框内输入“s”,当s的值为真时,动画停止播放,如图2所示。
2 图
4、 在流程线上放置一声音图标并命名为“sound”,双击打开该声音图标并引入一声音文件,其对话框设置如图3所示。
3 图
5、 在流程线上放置一运算图标并命名为“s=1”,双击该运算图标并在其中输入“s=1”,该图标的作用是使movies动画图标中的动画停止播放,从而实现了以声音为主,动画配合声音播放的效果。该程序的逻辑流程图如图4所示。
图4
声音随动画同步播放
1、 参照上面的过程步骤,其流程图如图5所示。其中,在m=0运算图标中输入“m=0”,m=0是控制声音播放的初始化变量;在声音图标[sound]设置的对话框中,从[play]区的列表中选定[until true]选项,并在其正文输入框中输入“m”,当m变为1时,声音停止播放;在m=1运算图标中输入“m=1”,该图标的作用是使声音播放停止。具体的制作过程不再赘述。
图5
2、 在流程线上放置一声音图标,命名为“sound”,放置一数字化电影图标并命名为“movies”。
6 图
双击[sound]声音图标进入对话框,单击[impor]按钮加载一声音文件,单击[timing]按钮弹现对话框,从[concurrency]的下拉列表中选定[perpetual],从[play]的下拉列表中选定[until true],并在其下面的正文输入框内输入:mediaplaying@″movies″,使动画播放结束时声音停止,并在[begin]正文输入框中输入:mediaplaying@″movies″,使动画播放后声音才开始播放。其对话框设置如图6所示。
图7
3、 双击数字化电影图标引入一动画文件,如图7所示。程序的逻辑流程图如图8所示。至此,本实例
设计
领导形象设计圆作业设计ao工艺污水处理厂设计附属工程施工组织设计清扫机器人结构设计
完毕,有兴趣者可尝试用其他办法,如可利用条件响应效果,同样可以达到目的。
同时播放多路声音
在多媒体作品中,有时需要同时播放多路声音,以满足作品的不同需求,这里我们以三路声音的同时播放为例,给大家介绍这一多媒体技巧。
运行Authorware 6.0,将此文件存为“同时播放多路声音.a6p”,单击Windows菜单下的Functions子菜单,弹出“Functions”对话框,选择Category下拉菜单中的“同时播放多路声音.a6p”选项,单击“Load”按钮,在Authorware 6.0安装目录下找到SyncSound.u32文件,单击“打开”按钮,在弹出的对话框中选择其中的五个函数,单击“Load”按钮,将这五个函数加载到该文件中,单击“Done”按钮。
图1
其次,建立如图1所示的流程图,在“调用句柄”图标中输入代码:
result:=SyncInit(WindowHandle)
在“第一路声音”图标中输入代码:
SyncLoad("1.wav",0)
SyncPlay(0,0,0)
在“第二路声音”图标中输入代码:
SyncLoad("2.wav",0)
SyncPlay(1,0,0)
在“第三路声音”图标中输入代码:
SyncLoad("3.wav",0)
SyncPlay(2,0,0)
在“停止”图标中输入代码:
If GetSyncChannelNum( )>2 then
SyncStop(2)
If GetSyncChannelNum( )>1 then
SyncStop(1)
If GetSyncChannelNum( )>0 then
SyncStop(0)
End If
End If
End If
提示:多媒体开发者要通过GetSyncChannelNum ()函数来确定支持几个通道,这将是最多支持的声道数,同时SyncLoad()、SyncPlay()和SyncStop()函数中的通道号的范围是0至GetSyncChannelNum的返回值减1。
图2
最后保存文件,直接运行即可实现同时播放多路声音,如图2所示。 在Authorware中方便地控制Flash动画
uthorware和Flash在平时的课件制作中应用都很广泛,教师们也常会遇到在Authorware中调用Flash动画的情况,那么如何在Authorware中方便地控制Flash动画呢,如:播放、暂
停、快进、快退等操作。本文将以实例的形式和大家一起来探讨这方面的问题。本实例的程序流程图如图1。
图1
Step1:启动Authorware 6.5,按“Ctrl+Shift+D”快捷键打开“Properties:File”对话框,将“Playback/Options”下所有选项全部取消选择。选择菜单“Insert/Media/Flash Movie…”命令,弹出对话框,勾选其中的“Paused”选项,让动画开始时为暂停,其余选项均为默认值。单击[Browse…]按钮导入所需要的Flash动画,最后单击对话框中的[OK]按钮,会自动在流程线上添加一个图标,将这个图表重新取名为“动画”。
Step2:拖一个交互图标至流程线,将其取名为“动画控制”。拖一个计算图标至交互图标下,交互类型选择为“Button”,单击计算图表上面的按钮弹出对话框(如图2),在“Label”选项中输入“ButtonName”,单击[OK]会弹出“New Variable”对话框,在“Initial Value”中输入“播放”,这样就设置了按钮的初始名称是“播放”,最后单击[OK]即可。
Step3:双击打开计算图标,在里面输入如下语句:
if GetSpriteProperty(@"动画",
#Playing)=FALSE then
----判断动画是否播放
CallSprite(@"动画",#play)
----如果没有播放则让动画开始播放
ButtonName:="暂停"
----在动画播放时,将按钮名称设置为“暂
停”
else
CallSprite(@"动画",#Stop)
----如果正在播放则让动画暂停
ButtonName:="播放"
----在动画暂停时,将按钮名称设置为“播
放”
end if
----上面的语句其实主要介绍了二合一按钮
的制作及交互。
图2
Step4:在交互图标下,放置两个计算图标,分别取名为“快进”和“快退”,双击打开“快进”计算图标,输入以下语句:
dangqianzhen:=GetSpriteProperty(@"动画", #frame)
----获取动画当前所在的帧
CallSprite(@"动画", #gotoFrame, dangqianzhen+20)
----在原来的帧数上加20,这样实现“快进”。
双击打开“快退”计算图标,输入以下语句:
dangqianzhen:=GetSpriteProperty(@"动画", #frame)
CallSprite(@"动画", #gotoFrame, dangqianzhen-20)
----在原来的帧数上减去20,这样实现“快退”。
Step5:在交互图标下,再次放置两个计算图标,分别取名为“首帧”和“尾帧”,双击打开“首帧”计算图标,在里面输入以下语句:
CallSprite(@"动画", #gotoFrame, 1)
----让动画播放第一帧,即“首帧”
双击打开“尾帧”计算图标,输入以下语句:
Allframes:=GetIconProperty(@"动画", #frameCount)
----获取动画的总帧数
CallSprite(@"动画", #gotoFrame, Allframes)
----让动画播放最后一帧,即“尾帧”
最后,按“Ctrl+R”键运行程序即可测试效果。
注意:如果在快进或快退过程中,发现并没有跳转到预期的动画帧,可能就是由于Flash动画的主场景中嵌套了影片(MovieClip)对象,Authorware无法对其进行控制。所以在制作Flash动画时,尽量将所有的帧都放置在主场景中,少用影片对象。如果发现播放/暂停按钮的标签名(ButtonName)与动画状态不符合,这说明Flash动画的当前帧加入了Stop语句,不会影响按钮的控制功能。
Authorare中控制Flash的语句还有很多,如:调节动画的尺寸、位置、角度、播放速度等等,有兴趣的朋友可以参考Authorware的帮助多多研究,相信会有所收获的。