[AS3] 解决BitmapData.draw()在fms流的跨域问题

因为flash的跨域问题, 会导致BitmapData.draw() 方法在对有跨域加载的视频流, 图片等资源时抛出SecurityError异常导致无法正常抓图
解决方式在帮助文档也有说, 总结一下:
1.图片跨域
  在被加载图片域放置crossdomain.xml
  load(new URLRequest(path), new LoaderContext(true));

2.点播流(http视频流)
  在被加载视频域放置crossdomain.xml
  设置netStream.checkPolicyFile = true;

3.实时流跨域
  这个要在FlashPlayer 9.0.115.0才有效
  方法来源于:
   http://www.ekameleon.net/blog/index.php?2008/02/20/93--fmis3-bitmapdatadraw-and-flash-player-901150-security-sandbox-violation
   我只做了fms3下的测试通过.
  简单点说就是在fms应用的main.asc 中加上
 application.onConnect = function( client )
 {
     // fix Security sandbox violation : BitmapData.draw on RTMP source
     client.videoSampleAccess = "/";

     this.acceptConnection(client) ;
 }


posted on 2008-03-31 17:42 SenKay 阅读(1930) 评论(0)  编辑  收藏


只有注册用户登录后才能发表评论。


网站导航:
 

导航

<2008年3月>
2425262728291
2345678
9101112131415
16171819202122
23242526272829
303112345

统计

常用链接

留言簿(1)

随笔分类

随笔档案

新闻分类

新闻档案

收藏夹

AS

搜索

最新评论

阅读排行榜

评论排行榜