FlashPlayer 10 增加了对P2P的支持,尽管现在Stratus server仍处在BETA阶段,但我们还是希望充分的利用Flash 的P2P功能做些事情,于是我们尝试性的做了一个基于P2P的以在线视频交流为主的网站www.halowei.com.
我们尝试了p2p的一对一,一对多,以及多对多的应用,基本上我们对flash的p2p链接表现还是比较满意的,不过现在的p2p实际上只能算是点对点连接,因为它不支持对视频,音频流的转发,这样就不能发挥p2p的长处,现在一个很大的好处就是能节约服务器的资源,但是在多对多连接时,客户端的宽带消耗是一个比较大的问题。期望以后能Flash能真正的P2P.
这里http://www.halowei.com/#u=老白&m=成都合江亭街景是一个对多的演示,我们做了一个直播室,允许用户直播视频,并设定观众的人数。有兴趣的朋友可以试试。
最后如果有兴趣于我们讨论Flash P2P的朋友可以在这里留言或者邮件team@halowei.com

flash 的 p2p 不能传输文件,而且必须连接 stratus 服务器。是个局限。
所以为什么不通过 flash 和 java 的通信来实现 p2p ? 这个我不是很懂,请赐教了
Reply
Kevin Luo Reply:
September 12th, 2009 at 12:37 PM
Flash的p2p是可以传送文件的,不过他的局限在于不能分段传送文件,也就是说必须把要传送的文件读入内存才能传送,而且接收也是一次性的,这两点就造成了flash不能传送大文件,10mb以下的文件传送还是没什么问题。flash在寻找对方时确实需要连接status,不过在连接之后是不需要的,你可以试试在局域网内连接之后断网,flash player之间的连接是不会中断的。
至于为什么不用java我觉得是这样的,1.零安装,2.跨平台。据我所知现在还没有能直接从浏览器端实现p2p而不用任何客户端安装的程序。我想可能这方面应用得最多的也是巡雷看看,土豆高清等等。但他们无一例外的都需要客户端的支持。使用flash p2p的好处就是真正网页上的p2p。
不过我也说了,flash现在只能是点对点,p2p的精髓是数据流的转发。这在现在的flash来说是做不到的,不过我觉得这是adobe故意的屏蔽了这一功能,目的可能更多还是安全性的考虑(如果能转发,而又直接从浏览器,可能会很容易被第三方截获信息,等等)。不知道flash p2p未来的路会是怎样,只有等着瞧了:)
Reply
果然是很强的人, flash的P2P似乎是视频站应用的方向, 以后会常来贵站的,查看一些新的文章。
Reply
就我目前所得到的数据来看 FLASH RTMFP协议在 NAT 穿透上还不太行。根据STRATUS的论坛发言来看,可以通过TURN SERVER中转,甚至支持ICE穿透,但关键问题是 FP 10 不支持带有验证的 TURN SERVER。
关于P2P有很多想法和经验,希望和你多聊聊。
Reply
Kevin 你好
看了你博客上的关于p2p的教程,受益匪浅。
不知道还有没有关于 多对多的 类似视频会议的例子呢?
如果是多对多的情况,我认为每一个视听的发起者同样也是接受者。
发起者发起语音视频会话是很轻松的事情,那么如何去接收收到视频的接收者返回的视听流呢?
一对一的情况是可以的,但是用一对一的方式处理就失去组播的意义了,不知道多对多的情况有什么好的解决办法吗?
期待您的回答,谢谢。
Reply
Kevin Luo Reply:
March 16th, 2010 at 3:13 PM
你好,这篇例子中的stratus 还不支持组播,今年的1/23日,Adobe 发布了新的stratus server 2,这个已经支持组播了,我也写了个例子在最近的博客里,你可以参考一下
Reply
luming Reply:
March 16th, 2010 at 3:37 PM
谢谢您的回答,看过了http://www.flextheworld.com/2010/02/flex-stratus-2-p2p.html
这一篇文章,所以才有上面的问题。
“基于Stratus 2的P2P在线视频共享1 (NetGroup, Multicast实例)”
文章中提到的应该是一对多的情况吧。
如果是多对多的情况是不是还需要一个独立的消息服务器去接受和发送视听流呢?
在实际的类似多对多的视频聊天会议系统中,视频的发起者发起视听会议的同时也是需要接收与会人员的视听流的,那么这里接收到与会者点击接收视频会议返回的视听流是如何去处理呢?
需要单独的消息服务器去监听吗?
Reply
Kevin Luo Reply:
March 16th, 2010 at 5:22 PM
从目前的情况来看,需要每个人有一个发送流,以及N个接受流(N = 总人数-1),接收流分辨接收每个人的视频。 这是我们在Stratus 2中的处理方式。如果是原来的stratus 1,我们需要为每个用户的链接都创建接收和发送流,最后就像一个蜘蛛网状,而stratus 2 中我们都往group中发送流,其他用户从group中获取流。 这个模式就比较清晰了,但是因为每个人都需要看到剩下的人的视频,因为每个人都是从组里获取视频流,所以也许你获取到的流并不来自真正的发送者二十你的邻居,我想这也是stratus 2 想要做的事。但实际上每个人都需要获取剩下的所有人的视频,所有从带宽的角度讲应该和stratus1中的蜘蛛网连法没太大差别,但是从稳定性来讲,group的方式会好很多,因为蜘蛛网方式很有可能中间有一些线是失效的,这就导致了会议不能正常进行。
Louis Vuitton
Gucci Shoes
Hermes Handbags
christian louboutin
nike shoes
replica bags
Louis Vuitton
Gucci Bags
Cheap gucci shoes
wholesale gucci shoes
louis vuitton
herve leger
Rolex Watches
Omega Watches
louis vuitton multicolore
louis vuitton vernis
louis vuitton vernis
Reply