`

关于AVM虚拟机的问题(暂时搁置)

    博客分类:
  • AS3
阅读更多

最近开始关注英语,说实话,我真的很羡慕E文是母语的人,编程基本上就是用某种方式写文章.

废话少说,昨晚看到很多资料都是做成swf格式的视频,于是想试着用Flex做个桌面的swf播放器.本来考虑得很简单,用一个swfloader就能搞定,实际上却不是那么简单.

如果是AVM2虚拟机的文件还容易点,直接把swfloader.content as MovieClip就能控制播放.但是如果目标文件是AVM1(AS1-2打包的)的文件就有点麻烦了.因为FP不能跨脚本互访,也就是AVM1和AVM2虚拟机不能互访,(当然还是有办法解决,但是很麻烦,可以用JS作为第三方中介),如果不用JS,而且AS1-2的swf不是自己写的,基本上只能作为DisplayObject操作了,(看到还有个办法,就是用BytesArray加载目标为二进制格式,然后查找其中某个标签,改之,也就是欺骗FP的感情,但是用这个办法好像并不是那么完美,例子链接)

播放有些类型的(经验证为AS2打包的)swf文件不能识别.

搜了很久,似乎没有其他办法解决这个问题….

我实在是无语了.对AS3的能力也开始质疑了,我发现想用编程实现任何一个想法仅仅靠一两门网络编程语言是完全不够的,看来必须开始接触C家族或者Java了.

Adobe自家的东西无法控制自家的东西,而看起来C却可以.

这个问题先提出来,欢迎大家帮助我找到更好的办法,做个基于AS3的swf文件播放器.

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics