Director Authorware扩展专辑--DirectMediaXtra

4/7/2006来源:Director教程人气:10236

Director和Authorware的功能是十分强大的,然而不少功能仅仅靠这些软件本身是无法实现的。因此就诞生了第三方插件。 通过这些扩展我们可以实现一些Director和Authoware本身所局限的一些功能。5D Director小组和Authorware小组测试了其中的一些扩展。并且撰写了测试报告给大家做一个参考。
  在此提出两点:
  1、插件有很多是商业版本的。因此请不要来信或者在论坛中发帖子向我们索取。同样,如果您想在商业作品中运用这些插件请注意他们的版权问题。
  2、虽然插件很强大,但是有很多问题随着Authorware Director的本身的发展现在已经有了解决的方案。所以本文提倡的观点是,插件虽好,但是也要善用。我们认为滥用插件将会带来创造力的下降而忽略了这两个软件本身的深入应用。

  3、Xtra遵循Macromedia的 MOA架构体系有些Authoreware Director都能使用。UCD,U32是Authorware的扩展函数
Director Media v1.5试用报告

一、创建DirectMediaXtra cast member:
从你的Director菜单中选择Insert->TABULEIRO XTRAS->DirectMediaXtra将会弹出如图所示的对话框。点击browse file将会提示你选自一个媒体文件进行关联,Director Media支持对MPEG,AVI,Quicktime,WAVE,AIF,MP2和MIDI文件进行控制。也可以对位于内部网络其他电脑上的文件进行关联,点击Enter URL输入你所要关联文件的URL即可(如:http://www.yournet.com/mpg/001.mpg)。
之后就可以设制cue points并对回放的选项(如工具栏、音量、速度均衡等)进行调控了,当你做完这些工作点击ok,一个新的cast成员就会出现在cast窗口中。

二、使用Behaviors库
正式安装的DirectMediaXtra还包括一些为Director 6或更高版本的Director制作的常用的Behaviors。这些Behaviors包括在XTRAS->DIRECTMEDIAXTRA下的DirectMediaXtra Behavior Library中。
灵活的应用的这些Behaviors你可以很容易地创建播放、重复、暂停、前进、后退、寻找并播放某个片段的按钮;还可以制作拉杆对音量、均衡及播放位置时间进行控制。

三、Cue Points
DirectMediaXtra的播放控制主要通过Cue Points来实现,每段DirectMediaXtra最多允许64个不同的Cue Points标签,Cue Points以毫秒为单位,每个Cue Point名称不能超过32个字母。Cue Points可以通过属性菜单左下角的Cue Points配合预览窗口进行添加,Add加入一个Cue Point;Remove删除一个Cue Point;Go to检查所选Cue Point的位置;双击Cue Point的名称,可以对该Cue Point的名称和时间位置进行修改。
通过lingo添加或删除Cue Point
addcuepoint(member x, cuepointtime, cuepointname)
实例:addcuepoint(member 2, 10500, \"NewCue\")

removecuepoint(member x, cuepointindex)
实例:removecuepoint(member 2, 1)

使用Cue Point可以象Director内建媒体的Cue Point一样,在Score的Tempo通道里选择\"Wait for cue point\"选项。也可以通过lingo进行控制,
DirectorMediaXtra支持以下的与Cue Point有关的Director lingo指令
isPastCuePoint(sPRite x)
the mostRecentCuePoint of sprite x
the cuepointtimes of member x
the cuepointnames of member x
on cuePassed me, whichChannel,
cuePointNumber, cuePointName

需要注意的是当你使用Tempo的\"Wait for cue point\"时不要把你的DirectMediaXtra角色放在score的最后帧上,这样将会造成DirectMediaXtra不能正常工作。

四、设置属性
使用DirectorMediaXtra的控制菜单可以很容易地对属性进行控制,下面主要是讲如何通过lingo指令对属性进行控制。

对演员(Cast)的控制:

列示所关联文件的完整路径名
put the file of member 1
--\"C:\\myfile\\file1.mpg\"

列示所关联文件名
put the title of member 1
--\"file1.mpg\"

若找不到原指定文件,显示提示对话框
set the showlocatefiledialog of member 1 to TRUE

列示时间长度
put the duration of member 1
-- 45200

原影片的宽度
put the videowidth of member 1
-- 352

原影片的高度
put the videoheight of member 1
-- 240

当前的音量大小(dB)
put the volume of member 1
-- -10

使当前音量为0
set the volume of member 1 to 0

当前的均衡度
put the balance of member 1
-- -100

使当前的均衡度为0
set the balance of member 1 to 0

当前的播放速度
put the rate of member 1
-- 100

使当前的播放速度为50
set the rate of member 1 to 50

设置当前的CPU占用率为50
set the cpuboost of member 1 to 50

设置回放时的Adjust duration before playback为真
set the adjustdurationbeforeplayback of member 1 to TRUE

设置回放时的工具栏为真
set the hastoolbar of member 1 to TRUE

设置回放时的重复回放为真
set the loop of member 1 to TRUE

设置回放时播放片段为真
set the playsegment of member 1 to TRUE

设定片段的起始位置为10700(仅当回放时播放片段为真时有效)
set the segmentstart of member 1 to 10700

设定片段的结束位置为43200(仅当回放时播放片段为真时有效)
set the segmentend of member 1 to 43200

设置回放开始时暂停
set the pausedatstart of member 1 to TRUE

列出所有Cue Point的时间
put the cuepointtimes of member 1
-- [4500,12300,34650,67321]

列出所有Cue Point的名称
put the cuepointnames of member 1
-- [\"Cue 1\",\"NewCuePoint\",\"Start Point\",\"Second part\"]

对角色(Sprite)的控制

列示当前的时间
put the currenttime of sprite 1
-- 22345

检查是否正在播放(1为真,0为假)
put the mediabusy of sprite 1
-- 1

五、函数

演员(Cast)函数

检查用户的电脑上是否安装了DirectShow,返回值为1则为真,为0则为假
isDirectShowInstalled(member 1)
if the result=0 then
alert(\"Please install DShow\")
else
--nothing
end if

创建新的Cue Point
addcuepoint(member 2, 10500, \"NewCue\")

删除Cue Point列表的第2个Cue Point
removecuepoint(member 2, 1)


角色(Sprite)函数

开始播放或继续播放媒体文件
videoplay(sprite 1)

暂停播放媒体文件
videopause(sprite 1)

搜寻一个不同时间段,并暂停在那里
videoseek(sprite 1, 15000)

播放一个从10000到20000的片段
videoplaysegment(sprite 1, 10000,20000)

暂停在30000时间处
videoplaysegment(sprite 1, 30000,30000)

检查Cue Point列表的第2个Cue Point是否已被通过,返回值为1则为真,为0则为假
isPastCuePoint(sprite 1, 2)
put the result
-- 1

设定音量为0 dB(范围可以从-100到0 dB)
setvolume(sprite 1, 0)

获取当前的音量值
put getvolume(sprite 1)
-- -20

设定均衡为0 dB(范围可以从-100到100 dB)
setvolume(sprite 1, 0)

获取当前的均衡值
put getbalance(sprite 1)
-- -100

设定播放速度(范围可以从0到200%)
setrate(sprite 1, 80)

获取当前播放速度
put getrate(sprite 1)
-- 100

设定为全屏播放
setfullscreen(sprite 1)

撤销全屏播放
removefullscreen(sprite 1)

六、创建目标文件
若你制作的目标文件包括了DirectorMediaXtra的演员,则Xtra文件会自动地加入到你的目标文件中。若只是在其他的.dxr文件中使用到,则你要在MODIFY->MOVIE->XTRAS中加入DirectMediaXtra.x32。

=======================================================================
本文的主要内容来自于DirectorMediaXtra的官方Help文件,我只对主要内容进行了一下描述,由于能力有限,而且文中所涉及的lingo指令,很多是我都没有用过的,错漏在所难免,所以更多的具体内容还请大家参看原文的Help文件。其实最实际的办法是多拿官方提供的那个样品Movie看看,所有的内容及使用方法都在那里了。