直播和点播技术分析

专注网页播放器的网站http://www.52player.com/

HLS  ts m3u8文件
HTTP
HTTP+RTMAP

HTTP Live StreamingHLS

http://www.cnblogs.com/haibindev/archive/2013/01/30/2880764.html

HTTP Live StreamingHLS)是苹果公司(Apple Inc.)实现的基于HTTP的流媒体传输协议,可实现流媒体的直播和点播,主要应用在iOS系统,为iOS设备(如iPhone、iPad)提供音视频直播和点播方案。HLS点播,基本上就是常见的分段HTTP点播,不同在于,它的分段非常小。要实现HLS点播,重点在于对媒体文件分段,目前有不少开源工具可以使用,这里我就不再讨论,只谈HLS直播技术。

相对于常见的流媒体直播协议,例如RTMP协议、RTSP协议、MMS协议等,HLS直播最大的不同在于,直播客户端获取到的,并不是一个完整的数据流。HLS协议在服务器端将直播数据流存储为连续的、很短时长的媒体文件(MPEG-TS格式),而客户端则不断的下载并播放这些小文件,因为服务器端总是会将最新的直播数据生成新的小文件,这样客户端只要不停的按顺序播放从服务器获取到的文件,就实现了直播。由此可见,基本上可以认为,HLS是以点播的技术方式来实现直播。由于数据通过HTTP协议传输,所以完全不用考虑防火墙或者代理的问题,而且分段文件的时长很短,客户端可以很快的选择和切换码率,以适应不同带宽条件下的播放。不过HLS的这种技术特点,决定了它的延迟一般总是会高于普通的流媒体直播协议。

HLS的协议规范 生成分段的标准TS文件以及m3u8索引文件

P2P播放技术

电脑A 点播一个视频vedio,服务器记录下,并查询电脑A周围有哪个电脑也在看这个视频,发现了电脑B ,这时候让电脑B作为CDN为电脑A提供资源

CDN:内容加速

hls是普通视频 

 drm是数字版权保护 视频
 https 是外面弄了个tunnel 

http和https的区别

这个tunnel在一系列握手操作之后建立的  tunnel中传送的数据会做对称加密/解密,其中涉及到6个key 而且是短周期,所以安全。 http和https使用的是完全不同的连接方式,用的端口也不一样,前者是80,后者是443。http的连接很简单,是无状态的,... HTTPS协议是由SSL+HTTP协议构建的可进行加密传输、身份认证的网络协议要比http协议安全

HLS与RTMP ,RTSP对比

http://blog.csdn.net/funkri/article/details/10191351

 你说的应该是 HTTP Live Streaming [1] 吧。这个是 Apple 为了提高流播效率开发的技术,特点是将流媒体切分为若干 TS 片段(比如每10秒一段),然后通过一个扩展的 m3u 列表文件将这些 TS 片段集中起来供客户端播放器接收。

这样做相比使用 RTSP 协议的好处在于,一旦切分完成,之后的分发过程完全不需要额外使用任何专门软件,普通的网络服务器即可,大大降低了 CDN 边缘服务器的配置要求,可以使用任何现成的 CDN。分发使用的协议是最常见 HTTP,代理服务器对这个协议的缓存优化相当成熟,而很少有代理服务器对 RTSP 的进行缓存优化。这对播放(软)实时视频有相当大的优势,因为这样分发后,对源服务器的负载压力小得多。

流媒体协议一共三种:rtmp,rtsp,http live streaming(apple和adobe各一种)
rtmp是adobe的,rtsp android native支持,http live streaming(以下简称hls)当然是apple主打,后来adobe也终于开窍支持了。
rtmp和rtsp都要求特殊的服务器,例如rtmp要求FMS/red5, rtsp要求darwin等,hls只要普通的server,其好处一楼说的很清楚了。

RTMP直播应用与延时分析 

http://blog.chinaunix.net/uid-26000296-id-4932817.html

直播应用中,RTMP和HLS基本上可以覆盖所有客户端观看,
HLS主要是延时比较大,RTMP主要优势在于延时低。

流媒体分发方式比较

http://blog.chinaunix.net/uid-26000296-id-4932822.html

对比以下互联网上用的流媒体分发方式:
  . HLS:apple的HLS,支持点播和直播。
  . HTTP:即HTTP stream,各家自己定义的http流,应用于国内点播视频网站。
  . RTMP:直播应用,对实时性有一定要求,以PC为主。

RTMFP 基于UDP的RTMFP M3U8 VOD.

通过使用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服务,采用组播方式进行数据分享。
 
推流软件 OBS

DirectX是Windows必备的性能增强程序,但是系统自带的DirectX的文件并不全,导致XSplit和OBS会出现各种错误:比如OBS64位打不开,比如提示缺少DirectX里的某个文件等等,所以我们需要用此工具修复一下即可,他会自动检测你缺少的文件并修复。

http://www.xspliter.com/thread-810-1-1.html

怎么使用?

http://www.anxia.com/jiaocheng/13505.html

posted on 2016-02-24 10:28  防空洞123  阅读(3663)  评论(0编辑  收藏  举报

导航