定义
        在网络中传输音视频的多媒体信息,主要有下载和流式传输两种方式。
            下载方式:将一个视频下载下来之后再播放,类似于你在优酷中的缓存视频
            流式传输:将声音以及视频信息通过音视频服务器向客户端进行连续实时的传输
        流媒体主要是指在网络中使用流式传输技术的连续时基的多媒体信号,流媒体技术就是将音视频信息经过压缩处理后放在网站服务器上,让用户边下载边观看而无需等待下载完成后才能观看。

流媒体的传输方式
       (1)实时流式传输:保证媒体信号带宽与网络连接匹配,使媒体可被实时观看到,需要专门的流媒体服务器与传输协议。特定的服务器如:QuickTime Streaming Server,RealServer与Window Media Server。这些服务器允许用户对媒体发送更多级别的控制,因而系统设置/管理比标准HTTP服务器更复杂。一般来说,如果视频为实时广播,或使用了流式传输媒体服务器,或使用了RTSP等实时传输协议,即为实时流式传输。
         优点:适合较大文件,素材可随机访问,节约用户磁盘空间,可以实现每个流的带宽分配,带宽补偿功能。
         缺点:实时流式传输必须匹配连接带宽,所以在以调制解调器速度连接时,图像质量较差,网络出现问题,视频质量较差。有些网络传输协议在有防火墙时可能会出现问题,导致用户不能看到一些地点的实时内容。需要特殊的服务器,如果文件比特率超过连接速度,观看将会断断续续
       (2)渐进流式传输:为顺序下载,在下载文件的同时用户可观看在线媒体,在给定时刻,用户只能观看已下载的那部分,而不能跳到还未下载的后续部分。不能像实时流式传输那样在传输期间可根据用户连接的速度做调整。如使用了HTTP服务器,文件即为渐进流式传输

流媒体技术原理

       流式传输需要缓存,因为音视频数据在网络中以包的形式存在,而网络时动态变化的,各个数据包选择的路由可能不尽相同,达到客户端所需的时间也就不同,有些先发的包可能后达到。因此,客户端如果按照包达到的次序进行播放会出错,缓存机制就能解决这些问题。使用缓存可以解决停顿问题,由于网络阻塞,可能使得流数据不能实时达到客户端,客户端的播放就会出现停顿,如果采用缓存机制,暂时的网络阻塞就不会影响播放效果。虽然音视频的数据很大,但是播放流数据所需的缓存容量并不需要太大,因为缓存可以使用环形链表结构来存储数据,已经播放的内容可以马上丢弃,从而腾出空间缓存后续流数据。

       TCP(传输控制协议)一般用来传输控制信息,因为其可靠的传输。UDP(用户数据报协议)用来传输音视频数据。

       RTP是用以传输实时音视频数据,RTCP为实时控制协议,和RTP捆绑一起的传输控制协议,提供时间信息和实现流同步,主要用以声音同步和Qos管理。

      RTSP(实时流媒体协议)定义了如何在IP网络上有效的传输流媒体数据。RTSP提供了一种机制,使音视频等数据可以按照需要进行实时传输,并且可以实施诸如暂停,快进等控制。源数据可以时存储的文件,也可以时现场数据的反馈。注意:RTSP协议本身并不传输数据,数据的传输是通过基于UDP协议的RTP协议来完成的,在RTP协议传输流媒体数据的过程中,RTSP的连接是一直存在的,并且控制着流媒体数据的传输。流媒体的数据和控制信息使用不同的协议和连接时,可以带来一个好处,就是播放流媒体的客户机和控制流媒体播放的客户机可以时不同的计算机。与HTTP的不同:HTTP传送HTML(超文本标志语言),而RTP传送的时多媒体数据。HTTP请求由客户机发出,服务器做出响应,而RTSP是客户机和服务器都能发出请求,即RTSP是双向的。

流媒体网络架构设计 流媒体概述_服务器

 流媒体文件格式

流媒体网络架构设计 流媒体概述_流媒体网络架构设计_02

流媒体的播放方式:
       (1)点播:点对点的特点是流媒体的源和目的地是一一对应的,即流媒体从一个源发送出去后只能达到一个目的地。在客户端与服务器之间需要建立一个单独的通道,从一台服务器送出的每个数据包只能传送给一个客户机。每个用户必须分别对媒体服务器发送单独的查询,而媒体服务器必须向每个用户发送所申请的数据包拷贝。这种巨大的冗余会造成服务器的负担沉重,响应时间过长。跟在优酷播放视频一样
       (2)组播(多址广播):基于组的传播,源与目的地是一对多的关系,这种一对多的关系只能在同一个组内建立,流媒体从一个源发送出去后,任何一个已经加入到与源同一个组号的目的地均可以接收到,但该组以外的其他目的地接收不到。IP组播技术构建一种具有组播能力的网络,允许路由器一次将数据包复制到多个通道上,采用组播方式,单台服务器能够对几十万台客户机同时发送连续数据流而无延时。媒体服务器只需要发送一个信息包,而不是多个,所有发出请求的客户端共享同一个信息包。信息可以发送到任意地址的客户机上,减少网络上传输的信息包的总量。网络利用率大大提高,成本大大降低。跟直播一样
       (3)广播: 也是一对多的关系,但这种一对多的关系并不局限与组,流媒体从一个源发送出去后,同一个网段上的所有目的地均可以收到。

流媒体系统的基本构成

        

流媒体网络架构设计 流媒体概述_流媒体_03