免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 1052 | 回复: 0
打印 上一主题 下一主题

如何实现流媒体现场直播? [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2005-04-29 17:34 |只看该作者 |倒序浏览
基于MPEG-4标准的流媒体直播服务器系统
  直播服务器系统用于播放实时性强的节目,如远程教育、晚会、球赛等。由于直播服务器系统采用多播方式,可以支持无限多个用户,而又不会像广播系统那样容易造成网络阻塞,因此其应用前景非常广阔。当前流行的直播服务器系统和我们国家自己研制成功的直播服务器系统引人注目,其采用的直播技术将是未来发展的主流方向。  
  流媒体服务器是流媒体系统中的关键部分,其性能的好坏直接决定着流媒体应用系统的优劣,它在功能上分为以下几个模块:  
● 点播服务器模块 主要接收用户的视频点播,为用户提供视频播放功能,处于流媒体服务器系统的核心地位。它直接与用户管理、节目管理、计费模块、网络管理模块、直播服务器模块进行通信,协调这些模块的运行。  
● 用户管理、节目管理和计费模块 随着用户和节目源的增多,必然要引入用户管理、节目管理和计费模块,并对可靠性和稳定性提出更高的要求。  
● 网络管理模块 为了提高流媒体服务器的稳定性,统一管理与配置系统资源,网络管理模块是必不可少的。  
● 直播服务器模块 直播服务器模块是实时采集音视频信号,为用户提供现场直播的功能。  
Real System:分流技术占主导  
  Real Networks公司最新的网上流式音视频解决方案名为Real System IQ。Real System IQ容易安装,在高、低带宽上均可提供良好的视音频质量,但价格较贵。作为流媒体领域的主导厂商,Real Networks公司凭借其优秀的技术,占领了一多半的网上流媒体点播市场。Real System IQ由服务器端流播放引擎(real server)、内容制作(Real Producer)、客户端播放(Real Player)三个方面的软件组成。  
  Real Server使用分流技术(splitting)在服务器之间传输直播数据。Splitting方法可以解决RealServer超负荷的问题,使得客户端可以就近访问Realserver服务器,获得更好的访问质量,并且减少带宽使用,服务更多用户。Splitting技术可以采用UDP单播、UDP组播和TCP三种方式进行通信。通过分流,一个或者多个Real Server服务器加入到transmitter中,来分散transmitter的流数量,而不是所有的请求都到达一个RealServer服务器。   

如图1所示,实况内容源处的RealServer是发送服务器(transmitter),它将实况播放给其他RealServer服务器接收,接收的RealServer服务器(receiver)一般更靠近访问者。网页上的链接指向接收的RealServer服务器而不是发送服务器。当用户点击链接时,接收服务器识别出特定的URL,然后把从发送服务器来的视频流转播给用户。  
  当transmitter开始播放实况流时,它将节目广播给所有的receiver;当用户从receiver上请求一个播出节目时,transmitter和receiver之间已经建立了一个连结,播出节目也就立即发送到用户。  
QuickTime:三种直播方式样样行   
  在Streaming Server直播过程中主要有Multicast、Unicast及Relay三种方式。  
  Multicast适用于局域网(Intranet)内或支持IP v6标准的Internet(mBone),它的方式是每个客户端都共享一个连接流。   
  Unicast方式是每一个客户端都与QuickTime Streaming Server建立一个流连接。  
  Relay是通过Relay Server,将由Broadcaster发出的一个流以Multicast方式分发给在同一网段上所有客户端。  


  宽带局域网(Intranet)应用如图2所示;Intranet和Internet同时直播应用如图3所示;宽带Internet直播框架结构如图4所示。   

  中国自己的系统:第一个支持Linux  
清华大学多媒体技术研究中心自主开发的直播服务器系统的功能结构如图5所示。  

  该服务器系统在功能上实现了采集、压缩编码与播放的分离,分别由编码服务器和播放服务器实现,播放服务器在实现上和视频点播服务器集成在一起。编码服务器和视频点播服务器利用简单控制协议进行通信。   
1. 编码服务器  
  由于客户端配置的多样性和带宽的不同,单一码率无法同时满足所有用户的需求。因此,该编码服务器实现了单节目源多编码器多码率的功能。  
  针对一路节目的输入,编码服务器同时启动多个不同码率的编码器,这些编码器并行运行输出覆盖高、中、低三档的码率,编码器的个数和码率的大小由系统资源和客户需求折中考虑。同时所有的编码器都可以动态地改变码率,即在不中断播放器播放的情况下修改编码速率。  
编码服务器对外提供三种服务:  
● 固定码率的多码率的组播功能 播放服务器通过组播的方式接入编码服务器不同码率的编码器,这种方式可以接入数量无限的播放服务器。  
● 固定码率的多码率的点播功能 播放服务器通过点播的方式接入编码服务器不同码率的编码器。  
● 动态可变码率的点播功能 接入该编码器的播放服务器对外只能提供组播功能,该编码器根据播放服务器收集到的组播用户的反馈信息,动态地调整编码器的编码速率。  
2.播放服务器  
  播放服务器是客户端和编码服务器的中继站,它接收用户请求,为用户提供服务。相对于编码服务器提供的三种服务,播放服务器以如下三种方式接入编码服务器:  
● 多码率的组播接入 播放服务器对外提供组播和点播功能。用户可以根据终端带宽的多少接入不同码率的组播。当一个用户以点播的方式接入播放服务器时,在播放过程中,播放服务器就可以根据播放器的反馈信息,对用户提供的码率在当前的几种码率间迁移,从而给用户提供最佳的观看效果。  
这种方式的优点是可支持无限个播放服务器,但编码服务器和播放服务器间的路由器必须支持组播协议,因此该功能可用于本地集群播放服务器。  
● 多码率的点播接入 这种接入方式与多码率的组播接入的惟一不同是以点播的方式接入编码服务器,虽然点播方式支持的播放服务器数量有限,但它没有组播路由器的限制,可以在因特网的任何地点接入编码服务器。  
● 可变码率的点播接入 这种接入方式对外只提供组播方式。播放服务器从组播地址接收到组播用户的反馈信息,向编码服务器提出动态改变编码速率的请求,从而满足大多数组播用户的需求。  


本文来自ChinaUnix博客,如果查看原文请点:http://blog.chinaunix.net/u/988/showart_23845.html
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP