一种基于会话初始化协议实现直播的方法及系统的制作方法
【技术领域】
[0001]本发明涉及VOIP通讯技术领域,具体地讲,是涉及一种基于会话初始化协议实现终端直播的方法以及系统。
【背景技术】
[0002]随着移动互联网的快速发展,带宽的不断提升,越来越多用户选择使用VOIP软件进行视频聊天和直播软件进行个性化的直播。目前IP网络视频聊天大多采用SIP软交换架构来实现,而直播则需要流媒体服务器来实现,在一个移动终端(如手机)上使用以上2个功能,可能需要安装2个软件,而服务器则需要部署视频聊天服务器和流媒体服务器,这势必会造成资源上的浪费,维护成本也高。
[0003]由于基于SIP的软交换架构本身是支持视频会议的,即多人视频聊天,但这种不是视频直播的架构,而且双向的视频流对直播来说的话,所使用的带宽更是一种浪费。
【发明内容】
[0004]综上所述,本发明的目的在于解决现有的VOIP软件进行视频聊天和直播软件进行个性化的直播时,存在资源浪费,维护成本高,带宽占用量大的技术不足,而提出一种基于会话初始化协议实现直播的方法及系统。
[0005]为解决本发明所提出的技术问题,采用的技术方案为:一种基于会话初始化协议实现直播的方法,其特征在于所述方法包括有:
1)、创建直播室步骤
1.1)、直播端发送不带媒体信息SDP的INVITE直播号码给SIP服务器,并请求创建直播室;
1.2)、SIP服务器判断直播室请求正确之后,SIP服务器向MCU服务器发送创建会议室请求;
1.3)、MCU服务器创建完成会议室后,返回包含有接收媒体流的IP地址和端口号的会议室媒体信息至SIP服务器,SIP服务器将会议室媒体信息的SDP返回给直播端;
1.4)、直播端向MCU服务器发送音视频流,创建直播室完成;
2)、加入直播室步骤
2.1)、播放端发送带媒体信息SDP的INVITE直播号码给SIP服务器,请求加入加直播室;播放端在INVITE消息SDP中描述自己的IP地址和端口号;
2.2)、SIP服务器根据INVITE消息SDP中直播号码判断是否是直播请求,并分析对应的直播室;
2.3)、SIP服务器将播放端媒体信息发送给MCU服务器,MCU服务器发送媒体流给播放端。
[0006]第1.2)步,SIP服务器根据直播号判断直播室请求是否正确。
[0007]第1.3)步,SIP服务器将媒体信息SDP通过SIP 2000K返回给直播端。
[0008]第2.3)步,SIP服务器将播放端媒体信息发送给MCU服务器,并回复2000K成功信息给播放端。
[0009]第1.4)步直播端向MCU服务器发送音视频流和第2.3)步MCU服务器发送媒体流给播放端均采用单向发送。
[0010]直播端创建直播请求的直播号码来源于SIP服务器,启动直播时需要向SIP服务器申请直播号码;播放端加入对应的直室时使用的直播号,需要向SIP服务器获取直播号列表。
[0011]实现所述基于会话初始化协议实现直播的方法的系统,其特征在于所述系统包括有:直播端、SIP服务器、MCU服务器及播放端;其中
直播端,用于发送不带媒体信息SDP的INVITE直播号码给SIP服务器,请求创建直播室,以及向采集音视频,向MCU服务器发送音视频流;
SIP服务器,用于管理直播号码段,解析直播端发送的直播创建请求和播放端发送的直播加入请求,判断直播创建请求或直播加入请求是否为正确的直播号,使用SIP INVITE请求创建直播或者加入直播,INVITE不带SDP消息的为创建直播,带SDP的为加入直播;并向MCU服务器创建会议室或者加入会议室;
MCU服务器,负责分配会议室,使用会议室充当直播室,接收直播端的媒体流,并发送媒体流给播放端;
播放端,用于发送带媒体信息SDP的INVITE直播号码给SIP服务器,请求加入加直播室,并接收MCU服务器发送的媒体流。
[0012]直播端创建直播的INVITE请求不带SDP,MCU服务器分配会议室后给SIP服务器的媒体信息,SIP服务器通过2000K SDP返回给直播端,直播端向SDP所描述的地址和端口发送媒体流;播放端加入直播室的INVITE请求带SDP,SDP描述自身的地址和端口,MCU服务器根据此地址和端口向其发送媒体流。
[0013]本发明的有益效果为:本发明使用MCU服务器的会议室充当直播室,SIP服务器通过客户端发出的会话初始化协议的判别,区分是P2P视频通话、会议还是直播请求等,实现移动端VOIP聊天软件实现即可以进行视频通话,也可以进行直播,有效节省宽带资源和移动终端占用资源,维护方面。
【附图说明】
[0014]图1为本发明的系统结构示意图;
图2为本发明创建直播室步骤流程图;
图3为本发明加入直播室步骤流程图;
图4为本发明消息交互图。
【具体实施方式】
[0015]以下结合附图和本发明优选的具体实施例对本发明作进一步地说明。
[0016]文中简写的术语分别为:
SDP:会话描述协议(Sess1n Descript1n Protocol),为会话通知、会话邀请和其它形式的多媒体会话初始化等目的提供了多媒体会话描述。
[0017]SIP:会话初始化协议,用于建立、修改和终止VOIP电话通话的IP电话信号协议。
[0018]参照图1至图4中所示,本发明基于会话初始化协议实现直播的方法,其特征在于所述方法包括有:
I)、创建直播室步骤
1.1)、直播端发送不带媒体信息SDP的INVITE直播号码给SIP服务器,并请求创建直播室;
1.2)、SIP服务器判断直播室请求正确之后,SIP服务器向MCU服务器发送创建会议室请求;SIP服务器根据直播号判断直播室请求是否正确;直播端创建直播的直播号码来源于SIP服务器,启动直播时需要向SIP服务器申请直播号码;
1.3)、MCU服务器创建完成会议室后,返回包含有接收媒体流的IP地址和端口号的会议室媒体信息至SIP服务器,SIP服务器将会议室媒体信息的SDP返回给直播端;SIP服务器将媒体信息SDP通过SIP 2000K返回给直播端;
1.4)、直播端向MCU服务器发送音视频流,创建直播室完成;
也即直播端使用SIP INVITE方法向SIP服务器创建直播室,SIP服务器向MCU服务器创建会议室后,向直播端返回媒体流IP地址和端口号,直播端再向MCU服务器发送音视频流。
[0019]2)、加入直播室步骤
2.1)、播放端发送带媒体信息SDP的INVITE直播号码给SIP服务器,请求加入加直播室;播放端在INVITE消息SDP中描述自己的IP地址和端口号;播放端加入对应的直室时使用的直播号,需要向SIP服务器获取直播号列表;
2.2)、SIP服务器根据INVITE消息SDP中直播号码判断是否是直播请求,并分析对应的直播室;
2.3)、SIP服务器将播放端媒体信息发送给MCU服务器,MCU服务器发送媒体流给播放端,并回复2000K成功信息给播放端;
也即播放端使用SI