流媒体数据直播方法及系统的制作方法

文档序号:9582171
流媒体数据直播方法及系统的制作方法
【技术领域】
[0001]本发明涉及互联网领域,尤其涉及流媒体数据直播技术领域。
【背景技术】
[0002]目前,大多数互联网平台会提供多媒体服务。例如汽车信息类的门户网站可以提供汽车资讯、行情报价、论坛互动等信息,也可以提供对视频或者音频的网络直播。例如,网络平台可以向用户提供网络广播服务。
[0003]通常的网络广播系统采用单节点系统,容易在直播中出现网络闪断、服务器故障等不可预见因素,而出现广播中断的情况。

【发明内容】

[0004]为此,本发明提供一种新的流媒体数据直播方案,以力图解决或者至少缓解上面存在的冋题。
[0005]根据本发明的一个方面,提供一种流媒体数据直播系统,包括第一服务器和第二服务器。其中每个服务器包括接收单元、切片生成单元、备份单元、索引输出单元和索引输出单元。接收单元适于接收流媒体数据。切片生成单元适于将所接收的流媒体数据分割成一个或多个切片文件。备份单元适于将本服务器所生成的切片文件备份到另一个服务器中,和存储来自另一个服务器的切片文件。索引输出单元适于将本服务器所生成的或者所存储来自另一个服务器的切片文件建立切片索引。索引输出单元还向客户端发送该切片索弓丨,以便客户端生成对应该切片索引的数据请求。切片输出单元适于响应于接收到客户端的数据请求,返回该数据请求对应的切片文件。
[0006]可选地,在根据本发明的流媒体数据直播系统中,在接收单元未接收到流媒体数据时,切片生成单元还适于生成包含白噪音的切片文件。
[0007]可选地,在根据本发明的流媒体数据直播系统中,索引输出单元适于根据下述方式将本服务器所生成的或者所存储来自另一个服务器的切片文件建立切片索引:检测所述切片生成单元是否正常生成切片文件;在确定所述切片生成单元正常生成切片文件时,将本服务器所生成的切片文件建立索引;在确定所述切片生成单元停止生成切片文件时,将所存储来自另一个服务器的切片文件建立切片索引;在确定所述切片生成单元所生成切片文件包含白噪音时,继续检测所存储来自另一个服务器的切片文件是否包含白噪音,如果来自另一个服务器的切片文件不包含白噪音,则对来自另一个服务器的切片文件建立切片索引,如果来自另一个服务器的切片文件包含白噪音,则对本服务器的包含白噪音的切片文件建立切片索引。
[0008]可选地,在根据本发明的流媒体数据直播系统中,流媒体数据为网络电台广播数据。切片文件为TS文件。切片索引为M3U8索引文件。
[0009]可选地,根据本发明的流媒体数据直播系统还包括负载均衡服务器,适于将来自客户端的访问请求分配到第一服务器或第二服务器。
[0010]可选地,根据本发明的流媒体数据直播系统还包括推流设备,适于向第一服务器和第二服务器推送流媒体数据。
[0011]根据本发明的又一个方面,还提供一种流媒体数据直播方法,适于在流媒体数据直播系统中执行。该流媒体数据直播系统包括推流设备、负载均衡服务器、第一服务器和第二服务器。推流设备可以向第一服务器和第二服务器推送流媒体数据。负载均衡服务器可以将来自客户端的访问请求分配到第一服务器或第二服务器。该直播方法包括下述步骤。在第一服务器或者第二服务器接收到流媒体数据时,将所接收的流媒体数据分割成一个或多个切片文件。将本服务器所生成的切片文件备份到另一个服务器中,和存储来自另一个服务器的切片文件。将本服务器所生成的或者所存储来自另一个服务器的切片文件建立切片索引,以及向客户端发送该切片索引,以便客户端生成对应该切片索引的数据请求。响应于接收到客户端的数据请求,返回该数据请求对应的切片文件。
[0012]根据本发明的流媒体数据直播方案,通过双推流的方式和双服务器相互备份数据的方式,使得每个服务器都有双路数据可选择用于流媒体直播。这样,即使一路数据中断,也可以通过另一路数据向客户端提供稳定的直播服务。由此,根据本发明的直播方案能够提高系统的网络容错率,减小了直播中断的风险,进而极大提高用户体验度。
【附图说明】
[0013]为了实现上述以及相关目的,本文结合下面的描述和附图来描述某些说明性方面,这些方面指示了可以实践本文所公开的原理的各种方式,并且所有方面及其等效方面旨在落入所要求保护的主题的范围内。通过结合附图阅读下面的详细描述,本公开的上述以及其它目的、特征和优势将变得更加明显。遍及本公开,相同的附图标记通常指代相同的部件或元素。
[0014]图1示出了根据本发明一些实施例的流媒体数据直播系统100的结构框图;
[0015]图2示出了根据本发明一些实施例的第一服务器120的示意图;以及
[0016]图3示出了根据本发明一些实施例的流媒体数据直播方法300的流程图。
【具体实施方式】
[0017]下面将参照附图更详细地描述本公开的示例性实施例。虽然附图中显示了本公开的示例性实施例,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本公开,并且能够将本公开的范围完整的传达给本领域的技术人员。
[0018]图1示出了根据本发明一些实施例的流媒体数据直播系统100的结构框图。如图1所示,流媒体数据直播系统100包括推流设备110、第一服务器120、第二服务器130、负载均衡服务器140和客户端150。
[0019]推流设备110适于从流媒体采集端(图中未示出)获取流媒体数据。这里,流媒体采集端可以实施为采集诸如视频数据或者音频数据等。音频数据例如可以是网络电台广播。推流设备110适于将流媒体数据向第一服务器120和第二服务器130发送。这里,推流设备例如可以采用RTMP (Real Time Messaging Protocol,实时消息传输协议)方式进行数据发送,当然也可以采用任何已知的传输方式,本发明不受限于此。在根据本发明一个实施例中,推流设备110是单台设备。该单独设备实时获取流媒体数据后,同时向第一和第二服务器发送流媒体数据。在又一个实施例中,推流设备110可以包括第一推流装置111和第二推流装置112。这两个推流装置适于各自独立获取流媒体数据。第一推流装置111向第一服务器120发送流媒体数据。第二推流装置112向第二服务器发送流媒体数据。这样,根据本发明的实施例通过采用双推流方式,可以降低推流设备110发生推流中断的风险。
[0020]客户端150可以发出对流媒体数据的直播请求。例如,客户端150可以发出对网络电台广播服务的直播请求。负载均衡服务器140在接收到客户端150的直播请求后,将其分配到第一服务器120或者第二服务器130。这里负载均衡服务器140例如可以是LVS (LinuxVirtual Server)负载均衡系统,但不限于此,任何已知的负载均衡方式都可以应用在本发明的实施例中。负载均衡服务器140可以采用原地址哈希算法等对用户的直播请求进行分配。当然,如果第一和第二服务器中的一台发生故障而不能提供流媒体数据的直播服务。负载均衡器140会将直播请求分配到没有故障的服务器上。
[0021]第一服务器120或者第二服务器130在接收到客户端150的直播请求后,适于返回直播数据。这里,第一服务器120和第二服务器130可以采用基于HLS(HTTP LiveStreaming,基于HTTP的流媒体协议)的传输方式发送直播数据。直播数据例如为第一或第二服务器将流媒体数据分割成的切片文件。当然,第一和第二服务器也可以采用任何已知的传输方式进行数据传输。另外,根据本发明的第一服务器120或者第二服务器130还可以将本服务器所生成的直播数据备份到另一个服务器。这样,第一或第二服务器在生成直播数据失败时,可以选择来自另一个服务器的直播数据向客户端150发送。根据本发明的直播系统100通过双服务器互相备份直播数据的方式,可以极大提高系统的容错容灾能力,降低网络直播中断的风险。
再多了解一些
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1