Stage Video flash在视频播放方面的GPU加速

2011年4月28日 2 条评论

Stage Video是在flash player 10.2和AIR 2.5的时候添加的一个可以利用GPU加速来播放视频的一个增强Video的功能. Stage Video 与 Video对比:

API VideoStatus.ACCELERATED VideoStatus.SOFTWARE
Stage Video 最优的情况,使用GPU解码并合成 使用软件解码,用GPU合成
Video 使用硬件GPU解码,软件合成 最差的情况,使用软件解码并合成

StageVideo的限制:

  • StageVideo对象不能被旋转。 只可能做到正交旋转(以90度的增量旋转)。
  • StageVideo对象可能不能适用colorTransform或3D转换变形。 它没有一个适用的矩阵变换功能来对视频进行倾斜处理。
  • StageVideo对象无法适用alpha 通道、混合模式、滤光器、蒙版或者scale9Grid这些功能。
  • 其视频数据不能被复制到BitmapData对象(BitmapData.draw)中。
  • 视频不能以位图格式缓存。
  • 视频数据不能嵌入在SWF文件中。 StageVideo只能应用于源自NetStream对象的影片。
  • 依赖于底层硬件设备,一些色彩空间可能不被支持。 在这种情况下,Flash Player将选择一个替代的色彩空间。 新的StageVideo ActionScript API提供了一种方式用来查询正在使用的色彩空间。
  • 依赖于平台,在视频平面中允许显示的视频数量是有限的。 在大多数移动系统中,在全局范围任何时间内只允许播放一个视频。 这意味着,如果您有几个SWF文件的实例同时显示的话,只有第一个SWF文件能以硬件加速的方式显示。
  • 为了保证台式电脑和TV设备中Flash Player的一致性,请将wmode设置为direct。
  • 请避免让wmode="transparent"的SWF文件彼此相互层叠。 某些平台不支持wmode="transparent"模式,如Google TV。 这意味着当wmode ="window"时,无论<embed> 标签参数是何值,所有的SWF实例都能被平台支持。

还是老样子看个Demo吧.

阅读全文...

flash本机鼠标指针NativeMouse

2011年4月3日 没有评论

Flash Player 10.2添加了内置的本机鼠标指针(native mouse cursor)支持,虽然在之前的版本里我们可以侦听MouseEvent事件来模拟鼠标指针,但是在有了原生的本机鼠标指针后,我们可以舍弃旧的方式,迎接更友好,更方便的鼠标指针了.

下面对比下模拟鼠标指针和本机鼠标指针.

模拟鼠标指针:

  • 鼠标指针不能拖到舞台外部.
  • 使用MouseEvent事件,效率低下.
  • 使用方式麻烦.

本机鼠标指针:

  • 鼠标指针可拖到舞台外部.
  • 原生支持效率高.
  • 直接用Mouse类,很方便.

新的本机鼠标的一些能力及限制:

  • 必须使用BitmapData为鼠标指针的可视对象.
  • 鼠标指针尺寸不能超过32*32.
  • 可以使用多个BitamapData来播放动画.
  • 可以自定义动画播放的帧频,与当前SWF的帧频无关.
  • 可以鼠标自定义鼠标指针的热点,而不总是在(0,0)位置.
  • 要在舞台外显示本机鼠标指针,必须按下鼠标左键拖到舞台外面才行.

下面看一个本机鼠标指针的示例:

阅读全文...

回到顶部