本發(fā)明涉及智能設(shè)備技術(shù),特別涉及智能設(shè)備的多屏協(xié)同技術(shù)。
背景技術(shù):
隨著網(wǎng)絡(luò)通信技術(shù)的發(fā)展和家庭智能設(shè)備的普及,智能電視在家庭娛樂方面的地位日益突出,利用無線網(wǎng)絡(luò),實現(xiàn)智能電視與智能設(shè)備的交互應(yīng)用,使用傳統(tǒng)方式需將音頻文件下載或拷貝到智能電視端進行播放,傳統(tǒng)的方式已無法滿足交互應(yīng)用中快捷、方便的原則。
技術(shù)實現(xiàn)要素:
本發(fā)明的目的是要解決目前需要將音頻文件下載或拷貝到智能設(shè)備端進行播放的問題,提供了一種多屏協(xié)同音頻傳輸服務(wù)端、客戶端、系統(tǒng)及其處理方法。
本發(fā)明解決其技術(shù)問題,采用的技術(shù)方案是,多屏協(xié)同音頻傳輸服務(wù)端,其特征在于,包括服務(wù)端會話模塊及發(fā)送模塊,所述服務(wù)端會話模塊與發(fā)送模塊連接,
所述服務(wù)端會話模塊用于與客戶端通過網(wǎng)絡(luò)連接,提供服務(wù)端與客戶端之間的通信,包括RTSP報告、RTP數(shù)據(jù)包及傳輸流量控制管理數(shù)據(jù)包;
所述發(fā)送模塊用于將對應(yīng)的音頻數(shù)據(jù)流封裝成RTP包并發(fā)送給客戶端,并接收及處理客戶端發(fā)送來的傳輸流量控制管理數(shù)據(jù)包。
具體的,所述傳輸流量控制管理數(shù)據(jù)包為RTCP數(shù)據(jù)包。
進一步的,所述RTSP報告中包含播放指令和/或暫停指令和/或停止指令。
多屏協(xié)同音頻傳輸客戶端,其特征在于,包括客戶端會話模塊、接收模塊、傳輸質(zhì)量控制模塊及播放器,所述接收模塊與客戶端會話模塊連接,傳輸質(zhì)量控制模塊與接收模塊連接,播放器與傳輸質(zhì)量控制模塊連接,傳輸質(zhì)量控制模塊與客戶端會話模塊連接,
所述客戶端會話模塊用于與服務(wù)端通過網(wǎng)絡(luò)連接,提供服務(wù)端與客戶端之間的通信,包括RTSP報告、RTP數(shù)據(jù)包及傳輸流量控制管理數(shù)據(jù)包;
所述接收模塊用于接收并解析服務(wù)端發(fā)送來的RTP包;
所述傳輸質(zhì)量控制模塊用于根據(jù)接收模塊接收的RTP包進行傳輸流量控制管理,向服務(wù)端發(fā)送傳輸流量控制管理數(shù)據(jù)包;
所述播放器用于播放解析后得到的音頻數(shù)據(jù)流。
具體的,所述傳輸流量控制管理數(shù)據(jù)包為RTCP數(shù)據(jù)包。
進一步的,所述RTSP報告中包含播放指令和/或暫停指令和/或停止指令。
多屏協(xié)同音頻傳輸系統(tǒng),其特征在于,包括上述多屏協(xié)同音頻傳輸服務(wù)端及上述多屏協(xié)同音頻傳輸客戶端,所述服務(wù)端會話模塊與客戶端會話模塊通過網(wǎng)絡(luò)連接。
多屏協(xié)同音頻傳輸系統(tǒng)的處理方法,應(yīng)用于上述多屏協(xié)同音頻傳輸系統(tǒng),其特征在于,包括以下步驟:
步驟1、多屏協(xié)同音頻傳輸客戶端通過RTSP協(xié)議向多屏協(xié)同音頻傳輸服務(wù)端發(fā)送建立會話連接請求,多屏協(xié)同音頻傳輸服務(wù)端建立會話連接;
步驟2、多屏協(xié)同音頻傳輸客戶端通過RTSP協(xié)議向多屏協(xié)同音頻傳輸服務(wù)端發(fā)送音頻數(shù)據(jù)傳輸請求;
步驟3、多屏協(xié)同音頻傳輸服務(wù)端將對應(yīng)的音頻數(shù)據(jù)流封裝成RTP包,并打上相應(yīng)的時間戳信息及序號并發(fā)送給多屏協(xié)同音頻傳輸客戶端;
步驟4、多屏協(xié)同音頻傳輸客戶端根據(jù)接收到的RTP包中時間戳信息對其中的音頻數(shù)據(jù)流解碼并存入數(shù)據(jù)緩沖池;
步驟5、多屏協(xié)同音頻傳輸客戶端的傳輸質(zhì)量控制模塊從數(shù)據(jù)緩沖池中提取音頻數(shù)據(jù)流,將其按照序號進行排序后傳輸給播放器進行播放,并將播放同步信息通過傳輸流量控制管理數(shù)據(jù)包反饋給多屏協(xié)同音頻傳輸服務(wù)端,多屏協(xié)同音頻傳輸服務(wù)端根據(jù)接收到的傳輸流量控制管理數(shù)據(jù)包調(diào)整發(fā)送RTP包的策略以實現(xiàn)音頻同步;
步驟6、播放時,多屏協(xié)同音頻傳輸服務(wù)端及多屏協(xié)同音頻傳輸客戶端均時刻監(jiān)測接收到的RTSP報告,并對其進行相應(yīng)處理。
具體的,步驟1包括以下具體步驟:
步驟101、多屏協(xié)同音頻傳輸服務(wù)端啟動,創(chuàng)建一個傳輸流量控制實時服務(wù)線程、RTP實時服務(wù)線程及一個RTSP實時服務(wù)線程;
步驟102、多屏協(xié)同音頻傳輸服務(wù)端創(chuàng)建一個UDP套接字并將其綁定到所提供的服務(wù)的地址之上,RTP包使用一個偶數(shù)號□,則相應(yīng)的傳輸流量控制數(shù)據(jù)包使用其后的奇數(shù)號端口;
步驟103、多屏協(xié)同音頻傳輸服務(wù)端時刻監(jiān)聽并接收來自多屏協(xié)同音頻傳輸客戶端的RTSP報告,若接收到多屏協(xié)同音頻傳輸客戶端發(fā)送來的RTSP報告中是會話連接請求,則進入步驟104,否則進入步驟6;
步驟104、多屏協(xié)同音頻傳輸服務(wù)端響應(yīng)該會話連接請求,與多屏協(xié)同音頻傳輸客戶端建立會話連接,進入步驟2。
進一步的,步驟3包括以下步驟:
步驟301、多屏協(xié)同音頻傳輸服務(wù)端判斷對應(yīng)的音頻數(shù)據(jù)流中各音頻數(shù)據(jù)幀大小,若一幀的長度超過最大傳輸單元時,則對該幀進行分片封包;
步驟302、多屏協(xié)同音頻傳輸服務(wù)端將音頻數(shù)據(jù)幀轉(zhuǎn)換為RTP包,并在RTP包頭中根據(jù)每幀信息設(shè)置序號及時間戳信息,用于播放同步及丟包處理;
步驟303、多屏協(xié)同音頻傳輸服務(wù)端將RTP包存入發(fā)送緩沖池按照發(fā)送策略發(fā)送給多屏協(xié)同音頻傳輸客戶端;
步驟4包括以下步驟:
步驟401、多屏協(xié)同音頻傳輸客戶端接收到RTP包,對其進行解析,去掉RTP包頭信息,并將解析得到的音頻數(shù)據(jù)幀、序號及時間戳信息存入數(shù)據(jù)緩沖池;
步驟5包括以下步驟:
步驟501、多屏協(xié)同音頻傳輸客戶端的傳輸質(zhì)量控制模塊從數(shù)據(jù)緩沖池中提取音頻數(shù)據(jù)流;
步驟502、將所提取的音頻數(shù)據(jù)流按照對應(yīng)序號進行排序,同時分析在UPD傳輸中丟掉的RTP包,通過傳輸流量控制管理數(shù)據(jù)包反饋給多屏協(xié)同音頻傳輸服務(wù)端;
步驟503、利用所提取的音頻數(shù)據(jù)流對應(yīng)的時間戳信息建立絕對時間軸信息,將當(dāng)前時間信息同絕對時間信息比對并傳輸給播放器進行播放,將比對差值通過傳輸流量控制管理數(shù)據(jù)包反饋給多屏協(xié)同音頻傳輸服務(wù)端;
步驟504、多屏協(xié)同音頻傳輸服務(wù)端根據(jù)接收到的傳輸流量控制管理數(shù)據(jù)包調(diào)整發(fā)送RTP包的策略以實現(xiàn)音頻同步。
本發(fā)明的有益效果是,在本發(fā)明方案中,通過上述多屏協(xié)同音頻傳輸服務(wù)端、客戶端、系統(tǒng)及其處理方法,可以通過網(wǎng)絡(luò)實現(xiàn)多屏協(xié)同音頻傳輸服務(wù)端與多屏協(xié)同音頻傳輸客戶端之間采用數(shù)據(jù)流傳輸音頻數(shù)據(jù),不需要客戶端再對需要播放的音頻文件進行下載或拷貝到本地,方便用戶,處理快捷。
附圖說明
圖1為本發(fā)明多屏協(xié)同音頻傳輸服務(wù)端的系統(tǒng)框圖。
圖2為本發(fā)明多屏協(xié)同音頻傳輸客戶端的系統(tǒng)框圖。
圖3為多屏協(xié)同音頻傳輸系統(tǒng)的系統(tǒng)框圖。
具體實施方式
下面結(jié)合附圖及實施例,詳細描述本發(fā)明的技術(shù)方案。
本發(fā)明的多屏協(xié)同音頻傳輸服務(wù)端,其系統(tǒng)框圖參見圖1,包括服務(wù)端會話模塊及發(fā)送模塊,服務(wù)端會話模塊與發(fā)送模塊連接,其中,服務(wù)端會話模塊用于與客戶端通過網(wǎng)絡(luò)連接,提供服務(wù)端與客戶端之間的通信,包括RTSP報告、RTP數(shù)據(jù)包及傳輸流量控制管理數(shù)據(jù)包;發(fā)送模塊用于將對應(yīng)的音頻數(shù)據(jù)流封裝成RTP包并發(fā)送給客戶端,并接收及處理客戶端發(fā)送來的傳輸流量控制管理數(shù)據(jù)包。
本發(fā)明的多屏協(xié)同音頻傳輸客戶端,其系統(tǒng)框圖參見圖2,包括客戶端會話模塊、接收模塊、傳輸質(zhì)量控制模塊及播放器,接收模塊與客戶端會話模塊連接,傳輸質(zhì)量控制模塊與接收模塊連接,播放器與傳輸質(zhì)量控制模塊連接,傳輸質(zhì)量控制模塊與客戶端會話模塊連接,其中,客戶端會話模塊用于與服務(wù)端通過網(wǎng)絡(luò)連接,提供服務(wù)端與客戶端之間的通信,包括RTSP報告、RTP數(shù)據(jù)包及傳輸流量控制管理數(shù)據(jù)包;接收模塊用于接收并解析服務(wù)端發(fā)送來的RTP包;傳輸質(zhì)量控制模塊用于根據(jù)接收模塊接收的RTP包進行傳輸流量控制管理,向服務(wù)端發(fā)送傳輸流量控制管理數(shù)據(jù)包;播放器用于播放解析后得到的音頻數(shù)據(jù)流。
本發(fā)明的多屏協(xié)同音頻傳輸系統(tǒng),其系統(tǒng)框圖參見圖3,包括上述多屏協(xié)同音頻傳輸服務(wù)端及上述多屏協(xié)同音頻傳輸客戶端,所述服務(wù)端會話模塊與客戶端會話模塊通過網(wǎng)絡(luò)連接。
本發(fā)明的多屏協(xié)同音頻傳輸系統(tǒng)的處理方法,應(yīng)用于上述多屏協(xié)同音頻傳輸系統(tǒng)中,其具體為:首先多屏協(xié)同音頻傳輸客戶端通過RTSP協(xié)議向多屏協(xié)同音頻傳輸服務(wù)端發(fā)送建立會話連接請求,多屏協(xié)同音頻傳輸服務(wù)端建立會話連接,多屏協(xié)同音頻傳輸客戶端再通過RTSP協(xié)議向多屏協(xié)同音頻傳輸服務(wù)端發(fā)送音頻數(shù)據(jù)傳輸請求,然后多屏協(xié)同音頻傳輸服務(wù)端將對應(yīng)的音頻數(shù)據(jù)流封裝成RTP包,并打上相應(yīng)的時間戳信息及序號并發(fā)送給多屏協(xié)同音頻傳輸客戶端,多屏協(xié)同音頻傳輸客戶端再根據(jù)接收到的RTP包中時間戳信息對其中的音頻數(shù)據(jù)流解碼并存入數(shù)據(jù)緩沖池,然后多屏協(xié)同音頻傳輸客戶端的傳輸質(zhì)量控制模塊從數(shù)據(jù)緩沖池中提取音頻數(shù)據(jù)流,將其按照序號進行排序后傳輸給播放器進行播放,并將播放同步信息通過傳輸流量控制管理數(shù)據(jù)包反饋給多屏協(xié)同音頻傳輸服務(wù)端,多屏協(xié)同音頻傳輸服務(wù)端根據(jù)接收到的傳輸流量控制管理數(shù)據(jù)包調(diào)整發(fā)送RTP包的策略以實現(xiàn)音頻同步;播放時,多屏協(xié)同音頻傳輸服務(wù)端及多屏協(xié)同音頻傳輸客戶端均時刻監(jiān)測接收到的RTSP報告,并對其進行相應(yīng)處理。
實施例
本發(fā)明實施例的多屏協(xié)同音頻傳輸服務(wù)端,其系統(tǒng)框圖參見圖1,包括服務(wù)端會話模塊及發(fā)送模塊,服務(wù)端會話模塊與發(fā)送模塊連接,其中,服務(wù)端會話模塊用于與客戶端通過網(wǎng)絡(luò)連接,提供服務(wù)端與客戶端之間的通信,包括RTSP報告、RTP數(shù)據(jù)包及傳輸流量控制管理數(shù)據(jù)包;發(fā)送模塊用于將對應(yīng)的音頻數(shù)據(jù)流封裝成RTP包并發(fā)送給客戶端,并接收及處理客戶端發(fā)送來的傳輸流量控制管理數(shù)據(jù)包。
本例中,傳輸流量控制管理數(shù)據(jù)包優(yōu)選為RTCP數(shù)據(jù)包,而RTSP報告中還可以包含播放指令和/或暫停指令和/或停止指令等,對應(yīng)播放器的播放、暫停及停止等音頻操作。
本發(fā)明實施例的多屏協(xié)同音頻傳輸客戶端,其系統(tǒng)框圖參見圖2,包括客戶端會話模塊、接收模塊、傳輸質(zhì)量控制模塊及播放器,接收模塊與客戶端會話模塊連接,傳輸質(zhì)量控制模塊與接收模塊連接,播放器與傳輸質(zhì)量控制模塊連接,傳輸質(zhì)量控制模塊與客戶端會話模塊連接,其中,客戶端會話模塊用于與服務(wù)端通過網(wǎng)絡(luò)連接,提供服務(wù)端與客戶端之間的通信,包括RTSP報告、RTP數(shù)據(jù)包及傳輸流量控制管理數(shù)據(jù)包;接收模塊用于接收并解析服務(wù)端發(fā)送來的RTP包;傳輸質(zhì)量控制模塊用于根據(jù)接收模塊接收的RTP包進行傳輸流量控制管理,向服務(wù)端發(fā)送傳輸流量控制管理數(shù)據(jù)包;播放器用于播放解析后得到的音頻數(shù)據(jù)流。
本例中,傳輸流量控制管理數(shù)據(jù)包優(yōu)選為RTCP數(shù)據(jù)包,而RTSP報告中還可以包含播放指令和/或暫停指令和/或停止指令等,對應(yīng)播放器的播放、暫停及停止等音頻操作。
本發(fā)明實施例的多屏協(xié)同音頻傳輸系統(tǒng),其系統(tǒng)框圖參見圖3,包括上述多屏協(xié)同音頻傳輸服務(wù)端及上述多屏協(xié)同音頻傳輸客戶端,所述服務(wù)端會話模塊與客戶端會話模塊通過網(wǎng)絡(luò)連接。
使用時,具體處理步驟如下:
步驟1、多屏協(xié)同音頻傳輸客戶端通過RTSP協(xié)議向多屏協(xié)同音頻傳輸服務(wù)端發(fā)送建立會話連接請求,多屏協(xié)同音頻傳輸服務(wù)端建立會話連接。
本步驟中,可包括以下具體步驟:
步驟101、多屏協(xié)同音頻傳輸服務(wù)端啟動,創(chuàng)建一個傳輸流量控制實時服務(wù)線程、RTP實時服務(wù)線程及一個RTSP實時服務(wù)線程;
步驟102、多屏協(xié)同音頻傳輸服務(wù)端創(chuàng)建一個UDP套接字并將其綁定到所提供的服務(wù)的地址之上,RTP包使用一個偶數(shù)號□,則相應(yīng)的傳輸流量控制數(shù)據(jù)包使用其后的奇數(shù)號端口;
步驟103、多屏協(xié)同音頻傳輸服務(wù)端時刻監(jiān)聽并接收來自多屏協(xié)同音頻傳輸客戶端的RTSP報告,若接收到多屏協(xié)同音頻傳輸客戶端發(fā)送來的RTSP報告中是會話連接請求,則進入步驟104,否則進入步驟6;
步驟104、多屏協(xié)同音頻傳輸服務(wù)端響應(yīng)該會話連接請求,與多屏協(xié)同音頻傳輸客戶端建立會話連接,進入步驟2。
步驟2、多屏協(xié)同音頻傳輸客戶端通過RTSP協(xié)議向多屏協(xié)同音頻傳輸服務(wù)端發(fā)送音頻數(shù)據(jù)傳輸請求。
步驟3、多屏協(xié)同音頻傳輸服務(wù)端將對應(yīng)的音頻數(shù)據(jù)流封裝成RTP包,并打上相應(yīng)的時間戳信息及序號并發(fā)送給多屏協(xié)同音頻傳輸客戶端。
本步驟中,可包括以下具體步驟:
步驟301、多屏協(xié)同音頻傳輸服務(wù)端判斷對應(yīng)的音頻數(shù)據(jù)流中各音頻數(shù)據(jù)幀大小,若一幀的長度超過最大傳輸單元時,則對該幀進行分片封包;
步驟302、多屏協(xié)同音頻傳輸服務(wù)端將音頻數(shù)據(jù)幀轉(zhuǎn)換為RTP包,并在RTP包頭中根據(jù)每幀信息設(shè)置序號及時間戳信息,用于播放同步及丟包處理;
步驟303、多屏協(xié)同音頻傳輸服務(wù)端將RTP包存入發(fā)送緩沖池按照發(fā)送策略發(fā)送給多屏協(xié)同音頻傳輸客戶端。
步驟4、多屏協(xié)同音頻傳輸客戶端根據(jù)接收到的RTP包中時間戳信息對其中的音頻數(shù)據(jù)流解碼并存入數(shù)據(jù)緩沖池。
本步驟中,可包括以下具體步驟:
步驟401、多屏協(xié)同音頻傳輸客戶端接收到RTP包,對其進行解析,去掉RTP包頭信息,并將解析得到的音頻數(shù)據(jù)幀、序號及時間戳信息存入數(shù)據(jù)緩沖池。
步驟5、多屏協(xié)同音頻傳輸客戶端的傳輸質(zhì)量控制模塊從數(shù)據(jù)緩沖池中提取音頻數(shù)據(jù)流,將其按照序號進行排序后傳輸給播放器進行播放,并將播放同步信息通過傳輸流量控制管理數(shù)據(jù)包反饋給多屏協(xié)同音頻傳輸服務(wù)端,多屏協(xié)同音頻傳輸服務(wù)端根據(jù)接收到的傳輸流量控制管理數(shù)據(jù)包調(diào)整發(fā)送RTP包的策略以實現(xiàn)音頻同步。
本步驟中,可包括以下具體步驟:
步驟501、多屏協(xié)同音頻傳輸客戶端的傳輸質(zhì)量控制模塊從數(shù)據(jù)緩沖池中提取音頻數(shù)據(jù)流;
步驟502、將所提取的音頻數(shù)據(jù)流按照對應(yīng)序號進行排序,同時分析在UPD傳輸中丟掉的RTP包,通過傳輸流量控制管理數(shù)據(jù)包反饋給多屏協(xié)同音頻傳輸服務(wù)端;這里,其分析可以為:由于序號都是連續(xù)的,則若之前播放的音頻數(shù)據(jù)流的序號與當(dāng)前提取音頻數(shù)據(jù)流的序號之間不是連續(xù)的,則認為其中有丟掉的RTP包,則此時不進入步驟503,而是通過傳輸流量控制管理數(shù)據(jù)包反饋給多屏協(xié)同音頻傳輸服務(wù)端,否則進入步驟503;
步驟503、利用所提取的音頻數(shù)據(jù)流對應(yīng)的時間戳信息建立絕對時間軸信息,將當(dāng)前時間信息同絕對時間信息比對并傳輸給播放器進行播放,將比對差值通過傳輸流量控制管理數(shù)據(jù)包反饋給多屏協(xié)同音頻傳輸服務(wù)端;
步驟504、多屏協(xié)同音頻傳輸服務(wù)端根據(jù)接收到的傳輸流量控制管理數(shù)據(jù)包調(diào)整發(fā)送RTP包的策略以實現(xiàn)音頻同步。這里,若接收到的傳輸流量控制管理數(shù)據(jù)包中記載的是有丟掉的RTP包,則根據(jù)策略進行重發(fā),否則根據(jù)比對差值調(diào)整RTP包的發(fā)送策略。
步驟6、播放時,多屏協(xié)同音頻傳輸服務(wù)端及多屏協(xié)同音頻傳輸客戶端均時刻監(jiān)測接收到的RTSP報告,并對其進行相應(yīng)處理。
這里,相應(yīng)處理包括與RTSP報告對應(yīng)的播放、暫停及停止等音頻操作。