您的位置:首页 >> 学院 >> 设计空间 >> 多媒体设计 >> Director
MCI指令在DIRECTOR中的应用
《5D多媒体》提供 2003年6月18日10:36 莫特探员/文  
  是一个体系结构非常完整的多媒体创作软件。之所以说它体系完整, 不仅因为它的功能包含了多媒体创作的方方面面(包括多媒体脚本语言LINGO) ,还因为它提供了多种扩展自身的途径。这其中分为两种:一种是利用已有的 外部系统功能,例如MCI指令;另一种是利用Macromedia 公司的XDK(Xtra Developmemt KIts)工具开发DIRECTOR插件。这里我重点阐述MCI指令在DIRECTOR 中的应用。
  好的多媒体程序会在程序起动时检测一些本机多媒体硬件环境的设置。 例如本机是否安装了声卡驱动程序,是否安装了苹果QUIKTIME插件, 以及QUIKTIME插件的版本为多少,是否版本足够新?有人一定会问: “DIRECTOR 本身LINGO 语言并没有提供这样的函数,难到还要专门为 它开发一个扩展LINGO函数吗?”。其实要实现以上的功能要比你想象的 要简单的多,这取决于你如何活用MCI指令。我编写了三个LINGO函数 computerCanPlayAudio(),QuickTimeIsInstalled(),QuickTimeVersionIsCurrent() 以实现对声卡驱动程序的检测,对苹果QUIKTIME插件的安装检测,以及对QUIKTIME 插件的版本的检测。
  这里我对程序作部分说明:the machineType 是一个DIRECTOR的内部变量, 当它的值为256时,表示本机为IBM PC 兼容机,当它的值小于是256时, 表示本机为苹果MACINTOSH机。LINGO 调用MCI 指令时,将返回值 放入the result 这个DIRECTOR的内部变量里。
  computerCanPlayAudio()函数检测是否安装了声卡驱动程序
  on computerCanPlayAudio
  if the machineType < 256 then -- 表示本机为苹果MACINTOSH机
  return TRUE
  else -- 表示本机为IBM PC 兼容机
  mci "capability waveaudio can play"
  if the result = "true" then
  return TRUE
  else
  return FALSE
  end if
  end if
  end computerCanPlayAudio
  QuickTimeIsInstalled()函数检测是否安装了苹果QUIKTIME插件 on QuickTimeIsInstalled
  if the machineType < 256 then -- 表示本机为苹果MACINTOSH机
  if the quickTimePresent then
  return TRUE
  else
  return FALSE
  end if
  else -- 表示本机为IBM PC 兼容机
  mci "capability QTWVideo can play"
  if the result = "true" then
  return TRUE
  else
  return FALSE
  end if
  end if -- the machineType
  end QuickTimeIsInstalled
  QuickTimeVersionIsCurrent()函数检测QUIKTIME插件的版本是否足够新.
  on QuickTimeVersionIsCurrent
  mci "info QTWVideo version"
  if value( the result ) < 2.351 then --value(string)返回数字字符串的数字值
  return
  FALSE
  else
  return TRUE
  end if
  end QuickTimeVersionIsCurrent

  以上是我对MCI在DIRECTOR中使用的一些体会,我使用DIRECTOR已有两年, 我认为作为一名多媒体程序员,只有充分掌握LINGO语言,才能用DIRECTOR 作出好的多媒体程序。

相关文章