基于web的聊天室语音直播系统及语音直播方法

文档序号:9618549阅读:457来源:国知局
基于web的聊天室语音直播系统及语音直播方法
【技术领域】
[0001]本发明涉及通信领域,具体而言,涉及一种基于web的聊天室语音直播系统及语音直播方法。
【背景技术】
[0002]随着越来越多的人使用语音聊天软件,聊天室的聊天内容变得更加多样化,大众感兴趣的话题会越来越多。
[0003]传统的语音聊天室直播需要用户安装客户端软件,并且注册成为会员后,进入该聊天室收听聊天内容。在聊天室中,用户想给朋友分享内容,而听众可能会因为设备等原因不能或不想安装该聊天室软件,于是需要提出一种方便快捷的语音聊天室直播方案,采用该方案,听众可以不安装客户端软件,不注册会员,不加入聊天室中,在浏览器(微信及QQ自带浏览器也行)中打开好友分享的链接即可收听。

【发明内容】

[0004]本发明的主要目的在于公开了一种基于web的聊天室语音直播系统及语音直播方法,以至少解决相关技术中用户需要安装客户端软件,注册成为会员后,才可进入该聊天室收听聊天内容,导致用户体验降低的问题。
[0005]根据本发明的一个方面,提供了一种基于web的聊天室语音直播系统。
[0006]根据本发明的web的聊天室语音直播系统包括:聊天室管理服务器,用于接收有用户需要收听聊天室语音直播的web请求,并向直播管理服务器和聊天室语音服务器发送聊天室语音直播通知;聊天室语音服务器,与上述聊天室管理服务器相连接,用于接收来自于上述聊天室管理服务器的上述聊天室语音直播通知,开放语音通道,允许直播管理服务器通过上述语音通道来请求聊天室语音数据;上述直播管理服务器,分别与上述聊天室管理服务器以及上述聊天室语音服务器相连接,用于接收来自于上述聊天室管理服务器的上述聊天室语音直播通知,向上述聊天室语音服务器请求聊天室语音数据,创建与基于HTTP的流媒体网络传输协议(HLS)服务器的连接,将请求得到的聊天室语音数据进行编码并通过上述连接发送至上述HLS服务器;上述HLS服务器,与上述直播管理服务器相连接,用于接收来自于上述直播管理服务器编码后的语音数据并保存为多个文件以使得web下载播放。
[0007]根据本发明的另一方面,提供了一种基于web的聊天室语音直播方法。
[0008]根据本发明的基于web的聊天室语音直播方法包括:聊天室管理服务器接收有用户需要收听聊天室语音直播的web请求,并向直播管理服务器和聊天室语音服务器发送聊天室语音直播通知;聊天室语音服务器接收来自于上述聊天室管理服务器的上述聊天室语音直播通知,开放语音通道,允许直播管理服务器通过上述语音通道来请求聊天室语音数据;上述直播管理服务器接收来自于上述聊天室管理服务器的上述聊天室语音直播通知,向上述聊天室语音服务器请求聊天室语音数据,创建与HLS服务器的连接,将请求得到的聊天室语音数据进行编码并通过上述连接发送至上述HLS服务器;上述HLS服务器接收来自于上述直播管理服务器编码后的语音数据并保存为多个文件以使得web下载播放。
[0009]通过本发明,基于web实现了实时播放聊天室语音的方案,在聊天室中,用户想给听众分享内容,听众可以不安装客户端软件,不注册会员,不加入聊天室中,在浏览器(微信及QQ自带浏览器也行)中打开好友分享的链接即可收听,有效地提高了用户体验。
【附图说明】
[0010]图1是根据本发明实施例的基于web的聊天室语音直播系统的结构框图;
[0011]图2是根据本发明优选实施例的基于web的聊天室语音直播系统的结构框图;
[0012]图3是根据本发明实施例的基于web的聊天室语音直播方法的流程图。
【具体实施方式】
[0013]下面结合说明书附图对本发明的具体实现方式做一详细描述。
[0014]图1是根据本发明实施例的基于web的聊天室语音直播系统的结构框图。如图1所示,该基于web的聊天室语音直播系统包括:
[0015]聊天室管理服务器(PCMS) 10,用于接收有用户需要收听聊天室语音直播的web请求,并向直播管理服务器和聊天室语音服务器发送聊天室语音直播通知;
[0016]聊天室语音服务器(PCS) 12,与上述聊天室管理服务器相连接,用于接收来自于上述聊天室管理服务器的上述聊天室语音直播通知,开放语音通道,允许直播管理服务器通过上述语音通道来请求聊天室语音数据;
[0017]上述直播管理服务器(PCBS) 14,分别与上述聊天室管理服务器以及上述聊天室语音服务器相连接,用于接收来自于上述聊天室管理服务器的上述聊天室语音直播通知,向上述聊天室语音服务器请求聊天室语音数据,创建与基于HTTP的流媒体网络传输协议(HLS)服务器的连接,将请求得到的聊天室语音数据进行编码并通过上述连接发送至上述HLS服务器;
[0018]上述HLS服务器16,与上述直播管理服务器相连接,用于接收来自于上述直播管理服务器编码后的语音数据并保存为多个文件以使得web下载播放。
[0019]相关技术中,语音聊天室直播需要用户安装客户端软件,并且注册成为会员后,进入该聊天室收听聊天内容。采用图1所示的基于web的聊天室语音直播系统,在聊天室中,用户想给听众分享内容,听众可以不安装客户端软件,不注册会员,不加入聊天室中,在浏览器(微信及QQ自带浏览器也行)中打开好友分享的链接即可收听,有效地提高了用户体验。
[0020]在优选实施过程中,聊天室管理服务器(PCMS) 10在该直播功能中的作用是管理聊天室,当接收到web请求需要收听聊天室直播时,通知语音管理服务器转发该聊天室的语音数据,且通知直播管理服务器开始聊天室语音直播。
[0021]在优选实施过程中,该服务器负责混合及分发聊天室的语音数据,当服务器接收到聊天室管理服务器发来的开始聊天室直播通知时,开放一个语音通道,允许直播管理服务器通过这个通道来请求聊天室的语音数据。
[0022]其中,直播管理服务器14创建的与HLS服务器的连接可以为实时消息传输协议(RTMP)连接,上述编码后的语音数据可以为高级音频编码(AAC)语音数据。
[0023]优选地,上述直播管理服务器14,还用于在聊天室语音直播结束后,销毁与上述HLS服务器的连接。
[0024]优选实施过程中,直播管理服务器主要负责直播通道(即上述连接)的建立及销毁,直播数据的格式转换。当接收到聊天室管理服务器的直播通知时,到聊天室语音服务器(PCS)请求聊天室语音数据,将接收到的语音数据编码成HLS服务器可接收的AAC编码语音数据。创建一个与HLS服务器的RTMP连接,通过这个连接将AAC语音数据发送到HLS服务器。
[0025]优选地,如图2所示,上述HLS服务器16可以进一步包括:Nginx实时消息传输协议模块(nginx-rtmp-module) 160,用于将上述编码后的数据保存为多个传输流ts文件;Nginx模块162,存储有配置文件,其中,上述配置文件中包括每个上述ts文件所保存音频数据的时间长度以及该ts文件的有效时间。
[0026]优选地,如图2所示,Nginx实时消息传输协议模块160,还用于当上述有效时间超时时,将该有效时间对应的ts文件进行删除。
[0027]在优选实施过程中,HLS服务器使用的是开源的nginx( —款轻量级的Web服务器)以及nginx-rtmp-module模块,nginx-rtmp-module模块的功能是将从直播管理服务器(PCBS)发送来的AAC音频数据保存为多个ts文件,每个ts文件所保存的音频数据的时间长度在nginx服务器的配置文件中配置。每个ts文件的有效时间也由nginx服务器的配置文件配置,当文件过了有效时间后,nginx-rtmp-module模块负责将过期文件删除。
[0028]把整个流分成一个个基于HTTP的文件,web每次只下载一些。在开始一个流媒体会话时,客户端会下载一个包含元数据的extended M3U(m3u8)playlist
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1