Director中音视频文件的加载和播放技巧

Director中音视频文件的加载和播放技巧
摘 要:一个生动的多媒体课件离不开音视频媒体。音视频媒体的加入不但可以渲染气氛、吸引注意力、强化效果,而且可以起到提高学生学习积极性,进而提高教学效果的作用。Director 不但支持多种音视频文件的播放,而且可以实现其他多媒体开发软件不能实现的特殊效果。本文介绍了在Director中播放音视频文件使用的一些高级技巧。
关键词:声音 视频 音量 课件 Director Lingo 程序 控制

    为了能给学生观看到某个现实的活动场面,往往要在课件中插入视频,不但可以增加学生的学习兴趣,而且对于提高教学效果也有积极意义。
    普通的多媒体开发软件无法实现多个声音通道同时播放,唯有Director可以同时播放 8 个声音通道,而且,通过编写Lingo 程序,不但可以实现多个声音文件的循环播放,还可以调节音量。在 Director中加载视频有两种方法,可以适用于不同的应用场合,在播放数字电影时还可以使用蒙版等特殊效果。
    Director 是制作基于时序的多媒体 CAI 课件编辑合成软件,它用时间轴的方法表示整个程序中各种教学内容出现的时间顺序,并用这种方法来控制各类多媒体教学素材的播放。Director 强大的二维动画制作功能,加上能实现绝大多数需求的跳转控制、交互功能,使之完全可以被称为“多媒体创作软件集大成者”。
    
    一、声音加载技巧
    
    1.在课件中加载多个声音文件
    Director支持常用的wav格式和MP3格式声音文件,另外还支持流媒体文件。和其他素材一样,要使用声音文件,必须先把它们引入到演员表中,可以以内部文件引用,也可以作为外部文件引用。声音文件引入到演员表中后,就可以通过编写Lingo程序来对它们进行控制了。
    假设我们实现在课件运行的整个期间循环播放 3 段背景音乐,将这 3 个声音文件引入到演员表中分别命名为“music1”、“music2”和“music3”。打开“Window”菜单,选择其中的“Script”菜单命令,会打开一个程序编辑窗口,在该窗口中输入以下程序:[4]
    on StartMovie
    sound(2).queue([#member:member("mus1"),#loopCount:2])
    sound(2).fadeIn(6000)
    sound(2).queue(member("music2"))
    sound(2).queue(member("music3"))
    sound(2).volume=255
    sound(2).play()
    end
    这段程序的意思是:将音乐“music1”、“music2”、“music3”排队且轮流播放,而且将第一段音乐“music1”播放 2 遍,在播放每一段背景音乐时都使声音在 6 秒钟的时间内由小到大,声音播放的音量开到最大(255)。
    如果想使多个声音叠加形成混音,则可以使用多个声道,例如想使上述 3 个声音文件同时播放,可以编写如下程序:
    on StartMovie
    puppetSound 1,"music1"
    puppetSound 2,"music2"
    puppetSound 3,"music3"
    end
    这样当课件播放时,3段音乐就会同时播放。
    2.播放声音时对音量的控制
    在许多教育软件中都设计制作了音量控制滑块,这样就可以非常方便地对音量进行控制。如何在我们的课件中也设计制作出这样的滑块呢?下面是设计制作步骤:
    首先用画图软件画一个滑动基线槽和一个滑块,如图 1 所示。然后将这两个图片引入到演员表中,再将滑动基线槽和滑块拖动到舞台上合适的位置。

    接下来用鼠标右键单击滑块,在弹出的菜单中选择“Script”命令,此时会打开一个程序编辑窗口,在该窗口中输入以下程序:[3][4]
    property pPressed
    property pBounds
    property pShadowSprite
    property pTextSprite
    property pMinimumValue, pMaximumValue
    property pValue
    
    on getPropertyDescriptionList me
    list = [:]
    addProp list, #pShadowSprite, [#comment: "Shadow Sprite",
    #format: #integer, #default: 0]
    addProp list, #pMinimumValue, [#comment: "Minimum Value",
    #format: #integer, #default: 0]
    addProp list, #pMaximumValue, [#comment: "Maximum Value",
    #format: #integer, #default: 100]
    addProp list, #pValue, [#comment: "Start Value",
    #format: #integer, #default: 50]
    return list
    end
    
    on beginSprite me
    pBounds = sprite(pShadowSprite).rect
    setMarker(me)
    end
    on mouseDown me
    pPressed = TRUE
    end
    
    on mouseUp me
    cursor 0
    pPressed = FALSE
    end
    
    on mouseUpOutside me
    pPressed = FALSE
    end
    
    on exitFrame me
    if pPressed then
    moveMarker(me)
    setMarker(me)
    end if
    end
    on moveMarker me
    x = the mouseH - pBounds.left
    sliderRange = pBounds.right-pBounds.left
    pos = float(x)/sliderRange
    valueRange = pMaximumValue - pMinimumValue
    pValue = pos*valueRange + pMinimumValue
    pValue = integer(pValue)
    sound(2).volume = pValue
    if pValue > pMaximumValue then
    pValue = pMaximumValue
    else if pValue < pMinimumValue then
    
    pValue = pMinimumValue
    end if
    end
    
    on moveMarkerOne me, direction
    if direction = #left then
    pValue = pValue - 1
    else if direction = #right then
    pValue = pValue + 1
    end if
    
    if pValue > pMaximumValue then
    pValue = pMaximumValue
    else if pValue < pMinimumValue then
    pValue = pMinimumValue
    end if
    
    setMarker(me)
    end
    on setMarker me
    valueRange = pMaximumValue - pMinimumValue
    sliderPos = float(pValue)/float(valueRange)
    sliderRange = pBounds.right-pBounds.left
    x = sliderPos*sliderRange + pBounds.left
    
    sprite(me.spriteNum).locH = x
    end
    on getValue me
    return pValue
    end
    当运行课件后,用鼠标拖动滑块就可以调节音量了。如果想让鼠标移动到滑块上时变成一个手形,离开时再变回箭头形,可以再按照上述方法打开程序编辑窗口,并添加以下语句:
    on mousewithin me
    cursor 260
    end
    
    on mouseLeave me
    cursor 0
    end
    
    二、视频加载和播放技巧
    
    在我们制作多媒体课件的过程中,经常会用到各式各样的视频片断文件。这些视频文件的应用,为课件增加了真实感和现场感,具有很好的教学效果。[6]
    视频包括图像、声音等元素, 与文字、图片等表现形式相比有着它自身的一些优势。[5] 美国实验心理学家赤瑞特拉所做的实验表明:人类大脑从外界获取的信息有83%来自视觉, 11%来自听觉,来自所有其它感觉通道的信息不超过6%。[1] 也就是说, 视听在教育教学中起着主导作用, 视听教育理论从教学设计上指导着多媒体网络课程的设计。利用视频媒体使知识的构建更符合实际情况的学习活动,能够创设情景, 激发学生兴趣, 主动探索, 为实现建构主义的学习环境提供了最理想的条件。[2]
    由于视频文件一般都很大,因此,在引用视频素材文件时就应该考虑将来制作完成的课件容量。如果制作的课件用到的视频片断不多,而且每一个视频片断都不大,就可以把它们作为内部文件引入到演员表中;如果用到的视频片断文件很大,就应该把它们作为外部文件引入,但将来在拷贝课件文件时一定要把这些视频文件连同它们所在的文件夹一同拷贝到存储介质中。
    当把所用到的视频文件引入到演员表中后,就可以在适当的位置播放它们了。最简单的播放方法就是把它们从演员表中拖到分镜窗口的通道中,但一定要将这些视频分镜拉到足够长,否则没等电影播放完毕就会切换到下一个场景了。如果想使所播放的电影出现在一个播放银幕框中,可以按以下步骤进行:
    第一步:调出 Windows Media Player,按下键盘上的“Prtsc”键进行屏幕硬拷贝,将 Media Player 的播放框拷贝下来。
    第二步:调出“画图”程序,按下“Ctrl+V”键,将刚才拷贝下来的图片粘贴在“画图”的画布中,然后用“选定”工具将需要的图片部分选中,打开“画图”的“编辑”菜单,选中其中的“复制到(O)…”命令,在打开的对话框中选择图片的存放地并给其命名。
    第三步:将保存的图片文件引入到 Director 的演员表中。
    第四步:将刚才引入的图片演员拖放到要播放电影位置的分镜窗口中,但应该注意两点:一是要让银幕框分镜的长度和电影分镜的长度相等;二是要让电影分镜放在银幕框分镜之后。
    在进行完上述操作后,当课件进行到播放这段电影片断时,就可以看到一个在银幕中播放的电影。
    在Director 中播放数字电影时还可以采用蒙版。蒙版其实是 1-bit 的位图文件,它告诉 Director 数字电影中的哪个像素要显示,哪个像素不显示。图2给出了3幅图像:一幅是数字电影的图像(a),一幅是 1-bit 位图(b),一幅是以那个 1-bit 位图为蒙版的数字电影的图像(c)。

    
    三、结束语
    
    在 Director 中不但可以实现上述功能,还可以创建电子白板和三维动画,播放Gif 动画和 Flash 动画,还可以通过 Lingo 编程设计制作游戏。尤其是在实现交互式教学方面更能显示出 Director 的优越性。
    
    参考文献:
    [1]何克抗,李文光.教育技术学[M].北京:北京师范大学出版社,2001.7.
    [2]项国雄,周勤.多媒体课件设计基础[M].北京:高等教育出版社,2001.7.
    [3]魏建华.Director 8教程[M].北京:北京希望电子出版社,2001.6.
    [4]Gary Rosenzweig.Special Edition Using Macromedia Director 8[M].Macmillan Computer Publishing U.S.A
    [5]陈贵,黄丽华.视频媒体在多媒体网络课程中的应用[J].教育信息化,2006(2).
    [6]孙培晓.玩转视频文件[J].中国教育信息化,2007(7).
  • 3
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值