如何在adobe air中为android实现stagevideo?

时间:2013-01-25 06:08:21

标签: actionscript-3 flex air

我一直在为Adobe AIR中的客户开发基于桌面的应用程序,该应用程序使用mx:videoDisplay和播放列表中的图像播放视频。现在,他需要在AIR for Android中具有相同代码库的相同应用程序。

我能够制作该应用的APK。但他希望StageVideo播放视频。 我搜索并找到了这个(http://www.adobe.com/devnet/flashplayer/articles/stage_video.html)文章和示例代码,但我找不到这个在我的情况下播放。 谁能帮我吗?我没时间。

1 个答案:

答案 0 :(得分:2)

根据我的测试,StageVideo仅适用于Android 4.0及更高版本。它绝对没有在2.3中运行,我无法让它在3.0上运行,尽管这可能是由于我们可用于测试的平板电脑乏善可陈。

您还必须使用GPU或直接渲染模式。使用CPU或Auto(当前默认为CPU)将不起作用。这也会引起一些问题,因为并非所有Android设备都支持GPU或Direct渲染,而GPU渲染也有其自身的怪癖(如不允许半透明像素)。

另一件值得注意的事情是:StageVideo不在显示列表中。它直接在舞台上呈现,下面一切。因此,如果您尝试将其放置在应用中,舞台上的其他所有内容都将覆盖它。为了解决这个问题,我创建了一个自定义类,它不断地绘制出一个掩码,然后将其应用到我的顶级容器中。这个面具通过我的应用程序有效地打了一个洞,以便可以看到视频播放器。

StageVideo是不可否认的流畅和卓越的表演者,但最终实现真的很痛苦。除非您的客户绝对要求您使用它,否则我建议您坚持使用VideoDisplay或根据OSMF软件包制作自己的视频播放器。