准备工作:在原来的stratus中如果我们要做一个多人同时在线的应用,比如多人视频。那么我们需要把在线的所有人都链接起来,类似蜘蛛网的结构,网中的每个人需要与其他所有人链接,这样数据才能在所有人中共享。这种模式在多人连线中是不可取的。假设我们用户A发布一个视频想让其他10个用户观看,那么10个用户都需要链接到他。就中国的普通用户的网络带宽来说,这就是极限了。而Stratus 2 中 “组” 的概念解决了这个问题。用户A发布视频让同一个组中的其他10个人观看。他们并都从A处获取视频。而有可能通过组中的其他用户获取A的视频。这也就是P2P的模式了,每个人都可以作为数据的发出者,数据以最优的方式被观看者收到,参与的人越多,数据的副本就越多。视频的速度也就越快。
- 确定你安装了 Flex SDK3.2 以上的SDK (现在最新的是3.5). 这里下载
- 确定安装了flash payer 10.1 debug version (开发环境最好用debug version) 这里下载
- 申请一个 Stratus develper key 这里申请
- 下载flash player 10.1 的 Player Global SWC 这里下载,放到你的SDK3.2目录下面吧
- 导入下面的Demo源文件,编辑项目属性 — Flex compiler — Require Flash player version 到 10:1:0
- 编辑项目属性 — Flex Builder Path — Library Path — Add SWC. 添加你刚才下载的playerglobal.swc —- 添加后双击playerglobal.swc — 双击Link Type — 切换Link Type到External
好了,准备工作到此结束。
Demo操作Demo 是一个视频共享的程序,用户A发布一个视频,其他进入相同组的用户可以观看视频,观看视频的同时大家可以文字聊天
- 先运行Publisher.mxml. 点击链接 (记住Group 名字,一会要用)
- 运行Viewer.mxml, 输入刚才的Group 名字,点链接。
- 你可以运行多个Viewer,输入相同的Group名,链接进去同一个组
- 链接成功后Viewer可以看见Publisher发布的视频。下面的聊天框可以和所有人聊天。
代码说明具体的代码说明大家下载源文件看注释就好了(看Publisher的注释)。这里只说一下Publisher和Viewer的区别,Publisher是作为视频的发布者以及Group的参与者(注意他并不是Gruop的”老大”,Group对这里的任何人来说都是平等的,Publisher只是在里面发布了视频而已)。Viewer是视频的接收者以及Group的参与者。下面的代码指出了Viewer和Publisher的不同
Publisher发布视频
?[Copy to clipboard]View Code ACTIONSCRIPT3
Viewer接收视频
?[Copy to clipboard]View Code ACTIONSCRIPT3
Demo截图Publisher
Viewer
源代码下载Stratus2Demo (1020)