一種基于會(huì)話初始化協(xié)議實(shí)現(xiàn)直播的方法及系統(tǒng)的制作方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及VOIP通訊技術(shù)領(lǐng)域,具體地講,是涉及一種基于會(huì)話初始化協(xié)議實(shí)現(xiàn)終端直播的方法以及系統(tǒng)。
【背景技術(shù)】
[0002]隨著移動(dòng)互聯(lián)網(wǎng)的快速發(fā)展,帶寬的不斷提升,越來(lái)越多用戶選擇使用VOIP軟件進(jìn)行視頻聊天和直播軟件進(jìn)行個(gè)性化的直播。目前IP網(wǎng)絡(luò)視頻聊天大多采用SIP軟交換架構(gòu)來(lái)實(shí)現(xiàn),而直播則需要流媒體服務(wù)器來(lái)實(shí)現(xiàn),在一個(gè)移動(dòng)終端(如手機(jī))上使用以上2個(gè)功能,可能需要安裝2個(gè)軟件,而服務(wù)器則需要部署視頻聊天服務(wù)器和流媒體服務(wù)器,這勢(shì)必會(huì)造成資源上的浪費(fèi),維護(hù)成本也高。
[0003]由于基于SIP的軟交換架構(gòu)本身是支持視頻會(huì)議的,即多人視頻聊天,但這種不是視頻直播的架構(gòu),而且雙向的視頻流對(duì)直播來(lái)說(shuō)的話,所使用的帶寬更是一種浪費(fèi)。
【發(fā)明內(nèi)容】
[0004]綜上所述,本發(fā)明的目的在于解決現(xiàn)有的VOIP軟件進(jìn)行視頻聊天和直播軟件進(jìn)行個(gè)性化的直播時(shí),存在資源浪費(fèi),維護(hù)成本高,帶寬占用量大的技術(shù)不足,而提出一種基于會(huì)話初始化協(xié)議實(shí)現(xiàn)直播的方法及系統(tǒng)。
[0005]為解決本發(fā)明所提出的技術(shù)問(wèn)題,采用的技術(shù)方案為:一種基于會(huì)話初始化協(xié)議實(shí)現(xiàn)直播的方法,其特征在于所述方法包括有:
1)、創(chuàng)建直播室步驟
1.1)、直播端發(fā)送不帶媒體信息SDP的INVITE直播號(hào)碼給SIP服務(wù)器,并請(qǐng)求創(chuàng)建直播室;
1.2)、SIP服務(wù)器判斷直播室請(qǐng)求正確之后,SIP服務(wù)器向MCU服務(wù)器發(fā)送創(chuàng)建會(huì)議室請(qǐng)求;
1.3)、MCU服務(wù)器創(chuàng)建完成會(huì)議室后,返回包含有接收媒體流的IP地址和端口號(hào)的會(huì)議室媒體信息至SIP服務(wù)器,SIP服務(wù)器將會(huì)議室媒體信息的SDP返回給直播端;
1.4)、直播端向MCU服務(wù)器發(fā)送音視頻流,創(chuàng)建直播室完成;
2)、加入直播室步驟
2.1)、播放端發(fā)送帶媒體信息SDP的INVITE直播號(hào)碼給SIP服務(wù)器,請(qǐng)求加入加直播室;播放端在INVITE消息SDP中描述自己的IP地址和端口號(hào);
2.2)、SIP服務(wù)器根據(jù)INVITE消息SDP中直播號(hào)碼判斷是否是直播請(qǐng)求,并分析對(duì)應(yīng)的直播室;
2.3)、SIP服務(wù)器將播放端媒體信息發(fā)送給MCU服務(wù)器,MCU服務(wù)器發(fā)送媒體流給播放端。
[0006]第1.2)步,SIP服務(wù)器根據(jù)直播號(hào)判斷直播室請(qǐng)求是否正確。
[0007]第1.3)步,SIP服務(wù)器將媒體信息SDP通過(guò)SIP 2000K返回給直播端。
[0008]第2.3)步,SIP服務(wù)器將播放端媒體信息發(fā)送給MCU服務(wù)器,并回復(fù)2000K成功信息給播放端。
[0009]第1.4)步直播端向MCU服務(wù)器發(fā)送音視頻流和第2.3)步MCU服務(wù)器發(fā)送媒體流給播放端均采用單向發(fā)送。
[0010]直播端創(chuàng)建直播請(qǐng)求的直播號(hào)碼來(lái)源于SIP服務(wù)器,啟動(dòng)直播時(shí)需要向SIP服務(wù)器申請(qǐng)直播號(hào)碼;播放端加入對(duì)應(yīng)的直室時(shí)使用的直播號(hào),需要向SIP服務(wù)器獲取直播號(hào)列表。
[0011]實(shí)現(xiàn)所述基于會(huì)話初始化協(xié)議實(shí)現(xiàn)直播的方法的系統(tǒng),其特征在于所述系統(tǒng)包括有:直播端、SIP服務(wù)器、MCU服務(wù)器及播放端;其中
直播端,用于發(fā)送不帶媒體信息SDP的INVITE直播號(hào)碼給SIP服務(wù)器,請(qǐng)求創(chuàng)建直播室,以及向采集音視頻,向MCU服務(wù)器發(fā)送音視頻流;
SIP服務(wù)器,用于管理直播號(hào)碼段,解析直播端發(fā)送的直播創(chuàng)建請(qǐng)求和播放端發(fā)送的直播加入請(qǐng)求,判斷直播創(chuàng)建請(qǐng)求或直播加入請(qǐng)求是否為正確的直播號(hào),使用SIP INVITE請(qǐng)求創(chuàng)建直播或者加入直播,INVITE不帶SDP消息的為創(chuàng)建直播,帶SDP的為加入直播;并向MCU服務(wù)器創(chuàng)建會(huì)議室或者加入會(huì)議室;
MCU服務(wù)器,負(fù)責(zé)分配會(huì)議室,使用會(huì)議室充當(dāng)直播室,接收直播端的媒體流,并發(fā)送媒體流給播放端;
播放端,用于發(fā)送帶媒體信息SDP的INVITE直播號(hào)碼給SIP服務(wù)器,請(qǐng)求加入加直播室,并接收MCU服務(wù)器發(fā)送的媒體流。
[0012]直播端創(chuàng)建直播的INVITE請(qǐng)求不帶SDP,MCU服務(wù)器分配會(huì)議室后給SIP服務(wù)器的媒體信息,SIP服務(wù)器通過(guò)2000K SDP返回給直播端,直播端向SDP所描述的地址和端口發(fā)送媒體流;播放端加入直播室的INVITE請(qǐng)求帶SDP,SDP描述自身的地址和端口,MCU服務(wù)器根據(jù)此地址和端口向其發(fā)送媒體流。
[0013]本發(fā)明的有益效果為:本發(fā)明使用MCU服務(wù)器的會(huì)議室充當(dāng)直播室,SIP服務(wù)器通過(guò)客戶端發(fā)出的會(huì)話初始化協(xié)議的判別,區(qū)分是P2P視頻通話、會(huì)議還是直播請(qǐng)求等,實(shí)現(xiàn)移動(dòng)端VOIP聊天軟件實(shí)現(xiàn)即可以進(jìn)行視頻通話,也可以進(jìn)行直播,有效節(jié)省寬帶資源和移動(dòng)終端占用資源,維護(hù)方面。
【附圖說(shuō)明】
[0014]圖1為本發(fā)明的系統(tǒng)結(jié)構(gòu)示意圖;
圖2為本發(fā)明創(chuàng)建直播室步驟流程圖;
圖3為本發(fā)明加入直播室步驟流程圖;
圖4為本發(fā)明消息交互圖。
【具體實(shí)施方式】
[0015]以下結(jié)合附圖和本發(fā)明優(yōu)選的具體實(shí)施例對(duì)本發(fā)明作進(jìn)一步地說(shuō)明。
[0016]文中簡(jiǎn)寫的術(shù)語(yǔ)分別為:
SDP:會(huì)話描述協(xié)議(Sess1n Descript1n Protocol),為會(huì)話通知、會(huì)話邀請(qǐng)和其它形式的多媒體會(huì)話初始化等目的提供了多媒體會(huì)話描述。
[0017]SIP:會(huì)話初始化協(xié)議,用于建立、修改和終止VOIP電話通話的IP電話信號(hào)協(xié)議。
[0018]參照?qǐng)D1至圖4中所示,本發(fā)明基于會(huì)話初始化協(xié)議實(shí)現(xiàn)直播的方法,其特征在于所述方法包括有:
I)、創(chuàng)建直播室步驟
1.1)、直播端發(fā)送不帶媒體信息SDP的INVITE直播號(hào)碼給SIP服務(wù)器,并請(qǐng)求創(chuàng)建直播室;
1.2)、SIP服務(wù)器判斷直播室請(qǐng)求正確之后,SIP服務(wù)器向MCU服務(wù)器發(fā)送創(chuàng)建會(huì)議室請(qǐng)求;SIP服務(wù)器根據(jù)直播號(hào)判斷直播室請(qǐng)求是否正確;直播端創(chuàng)建直播的直播號(hào)碼來(lái)源于SIP服務(wù)器,啟動(dòng)直播時(shí)需要向SIP服務(wù)器申請(qǐng)直播號(hào)碼;
1.3)、MCU服務(wù)器創(chuàng)建完成會(huì)議室后,返回包含有接收媒體流的IP地址和端口號(hào)的會(huì)議室媒體信息至SIP服務(wù)器,SIP服務(wù)器將會(huì)議室媒體信息的SDP返回給直播端;SIP服務(wù)器將媒體信息SDP通過(guò)SIP 2000K返回給直播端;
1.4)、直播端向MCU服務(wù)器發(fā)送音視頻流,創(chuàng)建直播室完成;
也即直播端使用SIP INVITE方法向SIP服務(wù)器創(chuàng)建直播室,SIP服務(wù)器向MCU服務(wù)器創(chuàng)建會(huì)議室后,向直播端返回媒體流IP地址和端口號(hào),直播端再向MCU服務(wù)器發(fā)送音視頻流。
[0019]2)、加入直播室步驟
2.1)、播放端發(fā)送帶媒體信息SDP的INVITE直播號(hào)碼給SIP服務(wù)器,請(qǐng)求加入加直播室;播放端在INVITE消息SDP中描述自己的IP地址和端口號(hào);播放端加入對(duì)應(yīng)的直室時(shí)使用的直播號(hào),需要向SIP服務(wù)器獲取直播號(hào)列表;
2.2)、SIP服務(wù)器根據(jù)INVITE消息SDP中直播號(hào)碼判斷是否是直播請(qǐng)求,并分析對(duì)應(yīng)的直播室;
2.3)、SIP服務(wù)器將播放端媒體信息發(fā)送給MCU服務(wù)器,MCU服務(wù)器發(fā)送媒體流給播放端,并回復(fù)2000K成功信息給播放端;
也即播放端使用SI