HTTP应用流媒体分析

严格意义上,基于HTTP的VOD不算是真的流媒体,英文称为“progressive downloading”或者“pseudo streaming”,为什么这样呢?因为HTTP缺乏流媒体基本的流控,由此基于HTTP协议很难实现媒体播放的快进,快退,暂停。那么,通常的媒体播放器又是如何利用HTTP来实现这样的功能呢?

我们都知道,不管媒体文件有多大,HTTP都只是视它为一个HTTP的元素,可以只需要发送一个HTTP请求,WEB Server就会源源不断地将媒体流推送给客户端,而不管客户端是否接受,这就是HTTP协议本身没有流控的原因,那这样会带来什么后果呢?

如果服务器的推流速度和客户端同步, 那么基本不会出现什么大问题;如果小于客户端的接收流的速度,那么播放就会一卡一卡的;如果大于或者远大于客户端的接收速度,那又会是怎么样的结果呢?很不幸,在我们所有的ISTV项目中,只要是基于HTTP的VOD,都无一例外是第三种情况。因为我们VOD是基于局域网的,大家都知道,局域网的带宽资源是很丰富的,服务器的推流的速度肯定大于播放器的播放速度,那么在这么速度极端不协调的情况下,服务器的推流速度究竟由谁来限制呢?

答案是:TCP协议栈。我们的VOD点播是基于TCP的HTTP协议。TCP是安全的,可靠的,包肯定不会丢,服务器检测到客户端的接收缓冲区满了,就会减小发送数据滑动窗口的大小。所以HTTP的流控是通过TCP协议栈来调节的,不是HTTP本身。试想,这样对服务器造成的压力有多大!!!

更多精彩内容:http://www.bianceng.cnhttp://www.bianceng.cn/web/Skills/

下面就分析基于HTTP协议如何实现SEEK,PAUSE等操作。

1)SEEK(快进和快退)

先关闭之前的tcp连接,重新连接,发送http请求,该请求带了媒体的偏移位置。由此可见,每一次的快进和快退,都等于是重新开始播放,只是每次开始播放的位置不一样。

2)PAUSE

该操作就更有意思了,客户端暂停了播放,也就是不从缓冲区读取数据了,但是服务器不知道客户端停止了播放,依然不停地发送数据给客户端,直到客户端的接收缓冲区已满,然后服务器的数据发送不出去了,理论上是服务器端的滑动窗口的大小估计就是0了,然后协议栈还在不停在尝试发送数据,因为是基于tcp,这些数据还不能丢。nnd,这种方式实现暂停,协议栈都哭了。很不幸,MPLAYER就是这么干的。所以暂停的时间长了,就容易出现问题。

虽然HTTP没有PAUSE的支持,但是针对PAUSE是可以优化的,优化的方法是,将媒体文件分片,分片的大小以稍小于TCP协议栈的缓冲区大小为宜。HTTP请求一次只请求一个分片的大小,暂停播放后,就不在发送分片请求了。这样可以保证让服务器运行的时间长一些,播放器暂停理论上可以无限长了。

时间: 2024-09-22 15:37:49

HTTP应用流媒体分析的相关文章

中间件和微服务,Docker以及原生云架构的关系

微服务和Docker的发展势头 微服务和容器的主要目标是缩短软件开发时间,以及实现开发.部署以及运维的更大灵活性.为什么它过去几个月的发展势头这么猛?因为几乎所有科技巨头企业如亚马逊,谷歌,Facebook,Netflix都在这里激烈竞争. 微服务就像是一个面向服务的架构(SOA):这是一种架构和供应商技术分别独立的设计理念.因此,目前并没有明确的界定标准或规范.你永远需要在和其他人讨论之前定义你所理解的微服务术语.每个人都有不同的定义.在这篇文章中微服务是被开发,部署和独立缩放的服务.它们可以

大数据技术 未来发展前景及趋势分析

文章讲的是大数据技术 未来发展前景及趋势分析,在过去几年里,大数据技术已得到广泛关注.在这一领域,有几个趋势和创新正悄然发生.本文整理了您目前正在使用或未来将要使用的大数据的新趋势和变化. 流大数据分析 · Storm: Apache Storm是一种开源的分布式实时计算系统.Storm加速了流数据处理的过程,为Hadoop批处理提供实时数据处理. · Spark: Spark是一个兼容Hadoop数据源的内存数据处理平台,运行速度相比于Hadoop MapReduce更快.Spark适合机器学

盘点2016年大数据领域成果及趋势

2016即将结束,外媒KDnuggets日前针对大数据领域在2016年度取得的重大发展,以及2017年度可能出现的变化趋势,询问了8位行业内的顶级专家. 虽然各位专家的意见不尽相同,但从其发言中大约可以总结出一个共通点:大数据研究正在由前几年的新鲜技术变得越来越普及和商业化.同时,由于研究的向前推进,以数据为基础的人工智能.机器学习和物联网等其他各个领域也将会取得越来越大的成果. 1. Craig Brown,大数据.数据科学.数据库技术领域专家.美国知名的青年导师.科技导师,以及作家. 在20

引领“大数据技术风暴” 机器学习正当下

Ovum(咨询顾问公司)的分析师Tony Baer分享了他对于云端机器学习工具,物联网驱动流分析和Hadoop的一些观点.这些技术在2016年备受人们关注,2017年这种趋势将会延续. 技术的实际应用前景才是推动技术进步的根本,特别是今年的一些主流技术.Ovum分析师Tony Baer深知这一点,当他在2017年的Ovum report预测大数据发展趋势时,主要依据就是今年的技术应用情况. Baer得出了如下结论,机器学习项目,物联网(IoT)和实时流媒体分析,这些技术在2016获得了广泛关注,

大数据领域2016年有哪些成果及趋势?听听专家怎么说

外媒KDnuggets日前针对大数据领域在2016年度取得的重大发展,以及2017年度可能出现的变化趋势,询问了8位行业内的顶级专家. 虽然各位专家的意见不尽相同,但从其发言中大约可以总结出一个共通点:大数据研究正在由前几年的新鲜技术变得越来越普及和商业化.同时,由于研究的向前推进,以数据为基础的人工智能.机器学习和物联网等其他各个领域也将会取得越来越大的成果. 1. Craig Brown,大数据.数据科学.数据库技术领域专家.美国知名的青年导师.科技导师,以及作家. 在2016年,数据科学领

大数据领域在 2016 年都有哪些成果及趋势?

外媒KDnuggets日前针对大数据领域在2016年度取得的重大发展,以及2017年度可能出现的变化趋势,询问了8位行业内的顶级专家. 虽然各位专家的意见不尽相同,但从其发言中大约可以总结出一个共通点:大数据研究正在由前几年的新鲜技术变得越来越普及和商业化.同时,由于研究的向前推进,以数据为基础的人工智能.机器学习和物联网等其他各个领域也将会取得越来越大的成果. 1.CraigBrown,大数据.数据科学.数据库技术领域专家.美国知名的青年导师.科技导师,以及作家. 在2016年,数据科学领域出

物联网价值万亿的唐僧肉,谁都想吃一口?

数十亿台设备,大把的机会 物联网仍然算新生事物,但是发展迅猛.市场调查公司IDC预测,到2020年,物联网将成为一个价值1.46万亿美元的国际市场,而在去年,这一数字还只有7000亿.一个价值万亿美元的市场意味着许多公司将希望分得一杯羹.那么,谁是物联网行业的领导者?我们咨询了一些知名分析师来一探究竟.(注:排名不分先后.) 英特尔 在互联设备的世界中,所有这些小设备都将需要处理器芯片.英特尔希望成为一家为万联网提供芯片的公司.该公司已推出各种产品来满足物联网需求--从为小型设备提供低功耗计算的

流媒体技术分析及其在新闻网站的应用

1.引言 网络正逐步成为信息的重要来源之一,同时,利用网络传输声音与视频信号的需求也越来越大,特别是一些广播电视等媒体上网后,都希望通过互联网来发布自己的音视频节目. 但是,视音频资料与平面资料在网上发布的方式有本质的不同.平面资料多以文字.图片为主要方式,其资料信息可以很容易转换成网上的发布内容:而视音频资料由于存贮文件的体积较大,在目前网络带宽还很有限的情况下,在网上发布是一件让人头疼的事.但是,随着流媒体技术的出现,在一定程度上使互联网传输音视频难的局面得到改善. 此外,网络的迅速发展和普

开源流媒体处理库live555服务器端、客户端源代码分析总结

RTSP服务器端流程: 1. RTSP连接的建立过程       RTSPServer类用于构建一个RTSP服务器,该类同时在其内部定义了一个RTSPClientSession类,用于处理单独的客户会话.       首先创建RTSP服务器(具体实现类是DynamicRTSPServer),在创建过程中,先建立Socket(ourSocket)在TCP的554 端口进行监听,然后把连接处理函数句柄(RTSPServer::incomingConnectionHandler)和socket句柄传给