本發(fā)明涉及無線傳輸技術(shù)領(lǐng)域,尤其涉及一種輔助數(shù)據(jù)流的傳輸方法、設(shè)備和系統(tǒng)。
背景技術(shù):
目前,將視頻和音頻從一個啟用無線通信的設(shè)備直接流送到另一個啟用無線通信的設(shè)備。這樣的系統(tǒng)被稱為“miracast”,其也被稱為wi-fi顯示(wfd,wi-fidisplay)。miracast規(guī)范被設(shè)計成用于將任何類型的視頻或音頻比特流從源端設(shè)備(sourse)流送到目的端設(shè)備(sink)。作為一個示例,源端(sourse)可以是一臺智能電話,而目的端(sink)可以是電視機。盡管在典型的ieee802.11無線網(wǎng)絡(luò)中,客戶機設(shè)備通過接入點(ap)設(shè)備來進行通信,但由于存在支持直接設(shè)備通信的協(xié)議(諸如wi-fidirect)。miracast系統(tǒng)則使用這些協(xié)議來將顯示數(shù)據(jù)從一個設(shè)備發(fā)送到另一設(shè)備,諸如從智能電話發(fā)送到電視機或計算機,或反之。
目前的miracast協(xié)議規(guī)范,僅規(guī)定了源端發(fā)送video-only、audio-only以及video+audio三種模式的多媒體流,分別對應(yīng)實現(xiàn)視頻、音頻以及有聲音的視頻的傳輸。但是在很多情況下,在實際的多媒體播放過程中,除了上述三種模式的多媒體流之外,還需要包括相應(yīng)的多媒體輔助數(shù)據(jù)流,例如單獨字幕流、單獨的ui流、混合的音頻流等等;但是目前的miracast協(xié)議規(guī)范并沒有對輔助數(shù)據(jù)流的傳輸進行規(guī)范,因此,當(dāng)前的設(shè)備無法通過miracast協(xié)議規(guī)范傳輸多媒體的輔助信息流。
技術(shù)實現(xiàn)要素:
為解決上述技術(shù)問題,本發(fā)明實施例期望提供一種輔助數(shù)據(jù)流的傳輸方法、 設(shè)備和系統(tǒng),能夠在多媒體數(shù)據(jù)流傳輸?shù)耐瑫r還能夠傳輸與多媒體數(shù)據(jù)流相關(guān)聯(lián)的輔助數(shù)據(jù)流,從而能夠在目的端同步的將多媒體數(shù)據(jù)流和相關(guān)聯(lián)的輔助數(shù)據(jù)流進行播放。
本發(fā)明的技術(shù)方案是這樣實現(xiàn)的:
第一方面,本發(fā)明實施例提供了一種輔助數(shù)據(jù)流的傳輸方法,所述方法包括:
在miracast的能力協(xié)商階段,源端發(fā)送輔助數(shù)據(jù)流支持信息的請求消息;其中,所述請求消息用于獲取目的端對輔助數(shù)據(jù)流的支持信息;
所述源端接收到輔助數(shù)據(jù)流支持信息后,根據(jù)所述輔助數(shù)據(jù)流支持信息和待傳輸?shù)妮o助數(shù)據(jù)流發(fā)送輔助數(shù)據(jù)流的參數(shù)信息。
在上述方案中,所述輔助數(shù)據(jù)流支持信息包括:所述目的端所支持的輔助數(shù)據(jù)流的格式和所述目的端所支持的輔助數(shù)據(jù)流的數(shù)據(jù)分組數(shù)量。
在上述方案中,所述源端發(fā)送輔助數(shù)據(jù)流支持信息的請求消息,具體包括:
所述源端將所述輔助數(shù)據(jù)流支持信息的請求消息封裝于實時流協(xié)議rtsp的參數(shù)獲取請求中,并將封裝后的參數(shù)獲取請求進行發(fā)送。
在上述方案中,所述源端根據(jù)所述輔助數(shù)據(jù)流支持信息和待傳輸?shù)妮o助數(shù)據(jù)流發(fā)送輔助數(shù)據(jù)流的參數(shù)信息,具體包括:
所述源端根據(jù)所述待傳輸?shù)妮o助數(shù)據(jù)流的打包形式,確定所述輔助數(shù)據(jù)流在mpeg-ts流中所處的節(jié)目標(biāo)識以及所述輔助數(shù)據(jù)流在mpeg-ts流的節(jié)目中所處的頻道標(biāo)識;
所述源端根據(jù)所述待傳輸?shù)妮o助數(shù)據(jù)流的內(nèi)容,確定所述輔助數(shù)據(jù)流的優(yōu)先級、數(shù)據(jù)分組數(shù)量和文件格式;
所述源端將所述輔助數(shù)據(jù)流在mpeg-ts流中所處的節(jié)目標(biāo)識、所述輔助數(shù)據(jù)流在mpeg-ts流的節(jié)目中所處的頻道標(biāo)識、所述輔助數(shù)據(jù)流的優(yōu)先級、數(shù)據(jù)分組數(shù)量和文件格式進行發(fā)送。
在上述方案中,所述源端發(fā)送所述輔助數(shù)據(jù)流的參數(shù)信息,具體包括:
所述源端將所述輔助數(shù)據(jù)流的參數(shù)信息封裝于rtsp的參數(shù)設(shè)置請求中, 并將封裝后的參數(shù)設(shè)置請求進行發(fā)送。
第二方面,本發(fā)明實施例提供了一種輔助數(shù)據(jù)流的傳輸方法,所述方法包括:
在miracast的能力協(xié)商階段,目的端接收輔助數(shù)據(jù)流支持信息的請求消息;其中,所述請求消息用于獲取目的端對輔助數(shù)據(jù)流的支持信息;
所述目的端發(fā)送所述輔助數(shù)據(jù)流支持信息;
所述目的端接收所述輔助數(shù)據(jù)流的參數(shù)信息。
在上述方案中,所述方法還包括:
所述目的端根據(jù)所述輔助數(shù)據(jù)流的參數(shù)信息初始化自身的數(shù)據(jù)流接收參數(shù)。
在上述方案中,所述輔助數(shù)據(jù)流支持信息包括:所述目的端所支持的輔助數(shù)據(jù)流的格式和所述目的端所支持的輔助數(shù)據(jù)流的數(shù)據(jù)分組數(shù)量。
在上述方案中,所述目的端發(fā)送所述輔助數(shù)據(jù)流支持信息,具體包括:
所述目的端將所述輔助數(shù)據(jù)流支持信息封裝于針對實時流協(xié)議rtsp的參數(shù)獲取請求的響應(yīng)消息中,并發(fā)送封裝后的響應(yīng)消息。
在上述方案中,所述輔助數(shù)據(jù)流的參數(shù)信息,具體包括:所述輔助數(shù)據(jù)流在mpeg-ts流中所處的節(jié)目標(biāo)識、所述輔助數(shù)據(jù)流在mpeg-ts流的節(jié)目中所處的頻道標(biāo)識、所述輔助數(shù)據(jù)流的優(yōu)先級、數(shù)據(jù)分組數(shù)量和文件格式。
第三方面,本發(fā)明實施例提供了一種源端設(shè)備,所述源端設(shè)備包括:第一發(fā)送模塊和第一接收模塊;其中,
所述第一發(fā)送模塊,用于在miracast的能力協(xié)商階段,發(fā)送輔助數(shù)據(jù)流支持信息的請求消息;其中,所述請求消息用于獲取目的端對輔助數(shù)據(jù)流的支持信息;
所述第一接收模塊,用于接收輔助數(shù)據(jù)流支持信息;
所述第一發(fā)送模塊,還用于根據(jù)所述輔助數(shù)據(jù)流支持信息和待傳輸?shù)妮o助數(shù)據(jù)流發(fā)送輔助數(shù)據(jù)流的參數(shù)信息。
在上述方案中,所述輔助數(shù)據(jù)流支持信息包括:所述目的端所支持的輔助 數(shù)據(jù)流的格式和所述目的端所支持的輔助數(shù)據(jù)流的數(shù)據(jù)分組數(shù)量。
在上述方案中,所述第一發(fā)送模塊,用于將所述輔助數(shù)據(jù)流支持信息的請求消息封裝于實時流協(xié)議rtsp的參數(shù)獲取請求中,并將封裝后的參數(shù)獲取請求進行發(fā)送。
在上述方案中,所述第一發(fā)送模塊,用于根據(jù)所述待傳輸?shù)妮o助數(shù)據(jù)流的打包形式,確定所述輔助數(shù)據(jù)流在mpeg-ts流中所處的節(jié)目標(biāo)識以及所述輔助數(shù)據(jù)流在mpeg-ts流的節(jié)目中所處的頻道標(biāo)識;
以及,根據(jù)所述待傳輸?shù)妮o助數(shù)據(jù)流的內(nèi)容,確定所述輔助數(shù)據(jù)流的優(yōu)先級、數(shù)據(jù)分組數(shù)量和文件格式;
以及,將所述輔助數(shù)據(jù)流在mpeg-ts流中所處的節(jié)目標(biāo)識、所述輔助數(shù)據(jù)流在mpeg-ts流的節(jié)目中所處的頻道標(biāo)識、所述輔助數(shù)據(jù)流的優(yōu)先級、數(shù)據(jù)分組數(shù)量和文件格式進行發(fā)送。
在上述方案中,所述第一發(fā)送模塊,用于將所述輔助數(shù)據(jù)流的參數(shù)信息封裝于rtsp的參數(shù)設(shè)置請求中,并將封裝后的參數(shù)設(shè)置請求進行發(fā)送。
第四方面,本發(fā)明實施例提供了一種目的端設(shè)備,所述目的端設(shè)備包括:第二接收模塊、第二發(fā)送模塊;其中,
所述第二接收模塊,用于在miracast的能力協(xié)商階段,接收輔助數(shù)據(jù)流支持信息的請求消息;其中,所述請求消息用于獲取目的端對輔助數(shù)據(jù)流的支持信息;
所述第二發(fā)送模塊,用于發(fā)送所述輔助數(shù)據(jù)流支持信息;
所述第二接收模塊,還用于接收所述輔助數(shù)據(jù)流的參數(shù)信息。
在上述方案中,所述目的端設(shè)備還包括初始化模塊,用于根據(jù)所述輔助數(shù)據(jù)流的參數(shù)信息初始化自身的數(shù)據(jù)流接收參數(shù)。
在上述方案中,所述輔助數(shù)據(jù)流支持信息包括:所述目的端所支持的輔助數(shù)據(jù)流的格式和所述目的端所支持的輔助數(shù)據(jù)流的數(shù)據(jù)分組數(shù)量。
在上述方案中,所述第二發(fā)送模塊,用于將所述輔助數(shù)據(jù)流支持信息封裝于針對實時流協(xié)議rtsp的參數(shù)獲取請求的響應(yīng)消息中,并發(fā)送封裝后的響應(yīng) 消息。
在上述方案中,所述輔助數(shù)據(jù)流的參數(shù)信息,具體包括:所述輔助數(shù)據(jù)流在mpeg-ts流中所處的節(jié)目標(biāo)識、所述輔助數(shù)據(jù)流在mpeg-ts流的節(jié)目中所處的頻道標(biāo)識、所述輔助數(shù)據(jù)流的優(yōu)先級、數(shù)據(jù)分組數(shù)量和文件格式。
第五方面,本發(fā)明實施例提供了一種輔助數(shù)據(jù)流的傳輸系統(tǒng),所述系統(tǒng)包括:源端設(shè)備和目的端設(shè)備;其中,
所述源端設(shè)備,用于在miracast的能力協(xié)商階段,發(fā)送輔助數(shù)據(jù)流支持信息的請求消息;其中,所述請求消息用于獲取目的端對輔助數(shù)據(jù)流的支持信息;
以及,接收輔助數(shù)據(jù)流支持信息;
以及,根據(jù)所述輔助數(shù)據(jù)流支持信息和待傳輸?shù)妮o助數(shù)據(jù)流發(fā)送輔助數(shù)據(jù)流的參數(shù)信息;
所述目的端設(shè)備,用于在miracast的能力協(xié)商階段,接收所述輔助數(shù)據(jù)流支持信息的請求消息;
以及,發(fā)送所述輔助數(shù)據(jù)流支持信息;
以及,接收所述輔助數(shù)據(jù)流的參數(shù)信息。
本發(fā)明實施例提供了一種輔助數(shù)據(jù)流的傳輸方法、設(shè)備和系統(tǒng);通過在wfd能力協(xié)商過程中,將與待傳輸?shù)亩嗝襟w數(shù)據(jù)流關(guān)聯(lián)的輔助數(shù)據(jù)流的相關(guān)信息進行協(xié)商,從而能夠在多媒體數(shù)據(jù)流傳輸?shù)耐瑫r還能夠傳輸與多媒體數(shù)據(jù)流相關(guān)聯(lián)的輔助數(shù)據(jù)流,也能夠在目的端同步的將多媒體數(shù)據(jù)流和相關(guān)聯(lián)的輔助數(shù)據(jù)流進行播放。
附圖說明
圖1為本發(fā)明實施例提供的一種應(yīng)用場景的示意圖;
圖2為本發(fā)明實施例提供的一種輔助數(shù)據(jù)流的傳輸方法的流程示意圖;
圖3為本發(fā)明實施例提供的一種源端發(fā)送輔助數(shù)據(jù)流的參數(shù)信息的流程示意圖;
圖4為本發(fā)明實施例提供的一種輔助數(shù)據(jù)流的傳輸方法的具體實現(xiàn)過程示 意圖;
圖5為本發(fā)明實施例提供的一種m3請求消息的示意圖;
圖6為本發(fā)明實施例提供的一種m3應(yīng)答消息的示意圖;
圖7為本發(fā)明實施例提供的一種m4請求消息的示意圖;
圖8為本發(fā)明實施例提供的一種m4應(yīng)答消息的示意圖;
圖9為本發(fā)明實施例提供的一種目的端進行播放的流程示意圖;
圖10為本發(fā)明實施例提供的另一種m3應(yīng)答消息的示意圖;
圖11為本發(fā)明實施例提供的另一種m4請求消息的示意圖;
圖12為本發(fā)明實施例提供的一種基于源端的輔助數(shù)據(jù)流的傳輸方法流程示意圖;
圖13為本發(fā)明實施例提供的一種基于目的端的輔助數(shù)據(jù)流的傳輸方法流程示意圖;
圖14為本發(fā)明實施例提供的一種源端設(shè)備結(jié)構(gòu)示意圖;
圖15為本發(fā)明實施例提供的一種目的端設(shè)備結(jié)構(gòu)示意圖;
圖16為本發(fā)明實施例提供的另一種目的端設(shè)備結(jié)構(gòu)示意圖;
圖17為本發(fā)明實施例提供的一種輔助數(shù)據(jù)流的傳輸系統(tǒng)結(jié)構(gòu)示意圖。
具體實施方式
下面將結(jié)合本發(fā)明實施例中的附圖,對本發(fā)明實施例中的技術(shù)方案進行清楚、完整地描述。
參見圖1,其示出了本發(fā)明實施例提供的一種應(yīng)用場景,在該場景中,源端10和目的端20之間通過miracast連接實現(xiàn)屏幕共享;其中,進行影像傳輸?shù)脑O(shè)備稱之為源端設(shè)備,接收被傳輸?shù)挠跋竦脑O(shè)備稱之為目的端設(shè)備。在該示例性場景中,源端10可以為支持miracast功能的智能手機、平板電腦、筆記本電腦等;目的端20可以為支持miracast功能的電視、投影設(shè)備等??梢岳斫獾?,該應(yīng)用場景僅用于對本發(fā)明實施例提供的技術(shù)方案進行說明,并不對本發(fā)明實施例進行任何限定。
可以理解地,在圖1所示的應(yīng)用場景中,源端10和目的端20之間僅能夠進行video-only、audio-only以及video+audio三種模式的多媒體流,分別對應(yīng)視頻、音頻以及有聲音的視頻,無法對輔助數(shù)據(jù)流,例如輔助字幕流、輔助音頻流和輔助視頻流的傳輸。
實施例一
參見圖2,其示出了本發(fā)明實施例提供的一種輔助數(shù)據(jù)流的傳輸方法,該方法可以應(yīng)用于圖1所示的場景,該方法可以包括:
s201:在miracast的能力協(xié)商階段,源端發(fā)送輔助數(shù)據(jù)流支持信息的請求消息;
其中,請求消息用于獲取目的端對輔助數(shù)據(jù)流的支持信息;而輔助數(shù)據(jù)流支持信息包括:目的端所支持的輔助數(shù)據(jù)流的格式和所述目的端所支持的輔助數(shù)據(jù)流的數(shù)據(jù)分組數(shù)量;具體地,輔助數(shù)據(jù)流的一個數(shù)據(jù)分組表示該輔助數(shù)據(jù)流的一路傳輸。
需要說明的是,本實施例的技術(shù)方案可以應(yīng)用于源端和目的端遵循miracast1.0規(guī)范流程的wfd能力協(xié)商(wfdcapabilitynegotiation)階段。在步驟s201之前的wfd能力協(xié)商階段中,源端首先向目的端發(fā)送實時流協(xié)議(rtsp,realtimestreamingprotocol)的m1消息以詢問目的端所支持的rtsp方法,目的端對m1消息回復(fù)應(yīng)答;然后目的端向源端發(fā)送m2消息以詢問源端所支持的rtsp方法,源端對m2消息進行回復(fù)應(yīng)答。
接下來,源端就能夠發(fā)送輔助數(shù)據(jù)流支持信息的請求消息;在具體實現(xiàn)過程中,源端將所述輔助數(shù)據(jù)流支持信息的請求消息封裝于實時流協(xié)議rtsp的參數(shù)獲取請求(rtspget_parameter請求,即m3消息)中,并將封裝后的參數(shù)獲取請求進行發(fā)送。
s202:目的端接收到輔助數(shù)據(jù)流支持信息的請求消息后,發(fā)送所述輔助數(shù)據(jù)流支持信息;
示例性地,在具體實現(xiàn)過程中,步驟s202具體可以包括:目的端將所述輔助數(shù)據(jù)流支持信息封裝于針對實時流協(xié)議rtsp的參數(shù)獲取請求的響應(yīng)消息(即 針對m3消息的應(yīng)答消息)中,并發(fā)送封裝后的響應(yīng)消息。
s203:源端接收到輔助數(shù)據(jù)流支持信息后,根據(jù)所述輔助數(shù)據(jù)流支持信息和待傳輸?shù)妮o助數(shù)據(jù)流發(fā)送輔助數(shù)據(jù)流的參數(shù)信息。
示例性地,輔助數(shù)據(jù)流的參數(shù)信息,具體包括:所述輔助數(shù)據(jù)流在mpeg-ts流中所處的節(jié)目標(biāo)識、所述輔助數(shù)據(jù)流在mpeg-ts流的節(jié)目中所處的頻道標(biāo)識、所述輔助數(shù)據(jù)流的優(yōu)先級、數(shù)據(jù)分組數(shù)量和文件格式。
具體地,如圖3所示,所述源端根據(jù)輔助數(shù)據(jù)流支持信息和待傳輸?shù)妮o助數(shù)據(jù)流發(fā)送輔助數(shù)據(jù)流的參數(shù)信息,具體包括:
s2031:源端根據(jù)待傳輸?shù)妮o助數(shù)據(jù)流的打包形式,確定輔助數(shù)據(jù)流在mpeg-ts流中所處的節(jié)目標(biāo)識以及輔助數(shù)據(jù)流在mpeg-ts流的節(jié)目中所處的頻道標(biāo)識;
s2032:源端根據(jù)待傳輸?shù)妮o助數(shù)據(jù)流的內(nèi)容,確定輔助數(shù)據(jù)流的優(yōu)先級、數(shù)據(jù)分組數(shù)量和文件格式;
s2033:源端將輔助數(shù)據(jù)流在mpeg-ts流中所處的節(jié)目標(biāo)識、輔助數(shù)據(jù)流在mpeg-ts流的節(jié)目中所處的頻道標(biāo)識、輔助數(shù)據(jù)流的優(yōu)先級、數(shù)據(jù)分組數(shù)量和文件格式進行發(fā)送。
其中,輔助數(shù)據(jù)流在mpeg-ts流中所處的節(jié)目標(biāo)識可以為patid值;輔助數(shù)據(jù)流在mpeg-ts流的節(jié)目中所處的頻道標(biāo)識可以為pmtid值,需要說明的是,將不同的多媒體數(shù)據(jù)流和多媒體輔助數(shù)據(jù)流打包為一個mpeg-ts流時,多媒體數(shù)據(jù)流和多媒體輔助數(shù)據(jù)流需要打包到不同的節(jié)目中,即具有不同的patid值;但多媒體輔助數(shù)據(jù)流都打包到一個節(jié)目中,即具有相同的patid值,不同的pmtid值。
在具體實現(xiàn)過程中,步驟s203可以具體實現(xiàn)為:源端將輔助數(shù)據(jù)流的參數(shù)信息封裝于rtsp的參數(shù)設(shè)置請求(rtspset_parameter請求,即m4消息)中,并將封裝后的參數(shù)設(shè)置請求進行發(fā)送。
s204:目的端接收輔助數(shù)據(jù)流的參數(shù)信息,并且根據(jù)輔助數(shù)據(jù)流的參數(shù)信息初始化自身的數(shù)據(jù)流接收參數(shù)。
s205:目的端初始化自身的數(shù)據(jù)流接收參數(shù)成功之后,返回初始化成功消息。
在具體實現(xiàn)過程中,目的端可以通過針對m4消息的應(yīng)答消息來發(fā)送初始化成功消息。
需要說明的是,步驟s205之后,源端和目的端之間的m5至m16消息可以按照當(dāng)前的miracast標(biāo)準(zhǔn)消息進行交互,無需作任何改動。并且源端設(shè)備在對多媒體數(shù)據(jù)流和多媒體的輔助數(shù)據(jù)流進行打包的同時,還可以設(shè)置和使用同一同步信息。
當(dāng)目的端設(shè)備解包后,若包含視頻媒體信息,則將視頻流的輔助數(shù)據(jù)流疊加在視頻流上層;若包含音頻媒體信息,則將音頻流的輔助數(shù)據(jù)流與音頻流進行混音播放。對于視頻流的疊加和音頻流的混音均為本領(lǐng)域的常用實現(xiàn)手段,本發(fā)明實施例對此不作具體限定。
本實施例提供了一種輔助數(shù)據(jù)流的傳輸方法;通過在wfd能力協(xié)商過程中,將與待傳輸?shù)亩嗝襟w數(shù)據(jù)流關(guān)聯(lián)的輔助數(shù)據(jù)流的相關(guān)信息進行協(xié)商,從而能夠在多媒體數(shù)據(jù)流傳輸?shù)耐瑫r還能夠傳輸與多媒體數(shù)據(jù)流相關(guān)聯(lián)的輔助數(shù)據(jù)流,也能夠在目的端同步的將多媒體數(shù)據(jù)流和相關(guān)聯(lián)的輔助數(shù)據(jù)流進行播放。
實施例二
基于實施例一的技術(shù)方案,參見圖4,本實施例提供一種輔助數(shù)據(jù)流的傳輸方法的具體實現(xiàn)過程,在本實施例中,源端設(shè)備需要發(fā)送的多媒體數(shù)據(jù)流為一部外國電影的視頻流,輔助數(shù)據(jù)流為該外國電影的原版字幕和中文字幕,可以理解地,常見的字幕的編碼格式有unicode、utf-8等。該具體過程可以包括:
s401:源端可以在m3請求消息中額外增加消息參數(shù)以獲取目的端所支持的輔助數(shù)據(jù)流信息;
具體地,除了按照現(xiàn)有的miracast標(biāo)準(zhǔn)所傳輸?shù)膮?shù)之外,如圖5所示的m3請求消息的示意圖,在m3請求消息的內(nèi)容中,通過加粗的斜體參數(shù)用來表示源端在m3請求消息中額外增加的消息參數(shù)。
其中,參數(shù)wfd_auxiliary_caption_formats、wfd_auxiliary_video_formats以 及wfd_auxiliary_audio_codecs分別表示目的端所支持的輔助字幕流的格式、目的端所支持的輔助視頻流的格式和目的端所支持的輔助音頻流的格式;
wfd_auxiliary_caption_count、wfd_auxiliary_video_count以及wfd_auxiliary_audio_count分別表示目的端可支持傳輸幾路輔助字幕流、目的端可支持傳輸幾路輔助視頻流以及目的端可支持傳輸幾路輔助音頻流。
s402:源端將額外增加消息參數(shù)的m3請求消息發(fā)送至目的端;
s403:目的端接收到額外增加消息參數(shù)的m3請求消息后,將額外增加的消息參數(shù)所對應(yīng)的參數(shù)值封裝于m3應(yīng)答消息;
需要說明的是,目的端可以根據(jù)自身可支持的輔助數(shù)據(jù)流的類型、格式和輔助數(shù)據(jù)流的數(shù)據(jù)分組數(shù)量,對m3請求消息中的各參數(shù)進行應(yīng)答,并生成m3應(yīng)答消息;在本實施例中,目的端支持兩路輔助字幕流,并且輔助字幕流的編碼格式為unicode。因此,除了按照現(xiàn)有的miracast標(biāo)準(zhǔn)所傳輸?shù)膮?shù)之外,如圖6所示的m3應(yīng)答消息的示意圖;在m3應(yīng)答消息的內(nèi)容中,通過加粗的斜體參數(shù)及對應(yīng)的數(shù)值來表示目的端對源端m3請求消息中的各參數(shù)進行應(yīng)答的參數(shù)。
s404:目的端將m3應(yīng)答消息返回至源端;
s405:源端根據(jù)待傳輸?shù)囊曨l流和輔助字幕流確定待傳輸?shù)妮o助字幕流的參數(shù),并根據(jù)待傳輸?shù)妮o助字幕流的參數(shù)生成m4請求消息;
具體地,在具體實施過程中,待傳輸?shù)妮o助數(shù)據(jù)流的參數(shù)可以包括:wfd_auxiliary_patid和wfd_auxiliary_aaa_priority_codec_b;其中,wfd_auxiliary_patid表明輔助數(shù)據(jù)流在mpeg-ts流中的位置,即在mpeg-ts流中所處的節(jié)目標(biāo)識patid;wfd_auxiliary_aaa_priority_codec_b表示輔助數(shù)據(jù)流對應(yīng)的優(yōu)先級和支持的格式等信息,具體的參數(shù)值可以包括輔助數(shù)據(jù)流在mpeg-ts流的節(jié)目中所處的頻道標(biāo)識pmtid、優(yōu)先級priority和支持的格式codec;而對于wfd_auxiliary_aaa_priority_codec_b參數(shù)名稱本身,“aaa”為輔助數(shù)據(jù)流的類型,在“caption、video、audio”三個值中取值;b從1開始累加,表示輔助數(shù)據(jù)流的數(shù)據(jù)分組標(biāo)識,如有x路輔助數(shù)據(jù)流,則每路輔助數(shù)據(jù) 流都對應(yīng)一個wfd_auxiliary_aaa_priority_codec_b參數(shù)值。
在本實施例中,源端需要傳輸?shù)亩嗝襟w流為視頻流,需要傳輸?shù)妮o助數(shù)據(jù)流為兩路輔助字幕流,因此,待傳輸?shù)妮o助字幕流的參數(shù)可以包括:輔助字幕流所在的在mpeg-ts流中所處的節(jié)目標(biāo)識wfd_auxiliary_patid、兩路輔助字幕流對應(yīng)的優(yōu)先級和支持的格式信息wfd_auxiliary_caption_priority_codec_1以及wfd_auxiliary_caption_priority_codec_2;因此,除了按照現(xiàn)有的miracast標(biāo)準(zhǔn)所傳輸?shù)膮?shù)之外,如圖7所示的m4請求消息,在m4請求消息的內(nèi)容中,通過加粗的斜體參數(shù)及對應(yīng)的數(shù)值來表示源端發(fā)送輔助數(shù)據(jù)流的參數(shù)信息。
s406:源端將m4請求消息發(fā)送至目的端;
s407:目的端根據(jù)m4請求消息初始化自身的接收參數(shù);
s408:目的端初始化成功后,向源端發(fā)送用于表征初始化成功的m4應(yīng)答消息。
具體地,m4應(yīng)答消息的內(nèi)容如圖8所示。
可以理解地,通過s401至s408的過程,后續(xù)階段可以使用miracast1.0標(biāo)準(zhǔn)消息,無需作任何改動。當(dāng)源端將視頻流和兩路輔助字幕流打包為mpeg-ts流發(fā)送至目的端后,目的端可以通過miracast1.0標(biāo)準(zhǔn)消息接收打包之后mpeg-ts流,并將mpeg-ts流進行解析得到視頻流和兩路輔助字幕流,目的端在進行播放的時候?qū)⑤o助字幕流疊加至視頻流上。目的端進行具體播放的流程如圖9所示。
實施例三
基于前述兩個實施例的技術(shù)方案,在本實施例中,當(dāng)源端設(shè)備需要發(fā)送的多媒體數(shù)據(jù)流為一部電影的視頻流,輔助數(shù)據(jù)流為兩路輔助音頻流的時候,具體過程可以依照圖4所示的技術(shù)方案進行,但是,m3應(yīng)答消息與m4請求消息應(yīng)對應(yīng)修改為圖10和圖11所示的消息內(nèi)容。
實施例四
基于前述實施例相同的技術(shù)構(gòu)思,參見圖12,其示出了本發(fā)明實施例提供的一種基于源端的輔助數(shù)據(jù)流的傳輸方法流程,可以包括:
s121:在miracast的能力協(xié)商階段,源端發(fā)送輔助數(shù)據(jù)流支持信息的請求消息;
其中,請求消息用于獲取目的端對輔助數(shù)據(jù)流的支持信息;
s122:源端接收到輔助數(shù)據(jù)流支持信息后,根據(jù)輔助數(shù)據(jù)流支持信息和待傳輸?shù)妮o助數(shù)據(jù)流發(fā)送輔助數(shù)據(jù)流的參數(shù)信息。
在上述方案中,所述輔助數(shù)據(jù)流支持信息包括:所述目的端所支持的輔助數(shù)據(jù)流的格式和所述目的端所支持的輔助數(shù)據(jù)流的數(shù)據(jù)分組數(shù)量。
在上述方案中,所述源端發(fā)送輔助數(shù)據(jù)流支持信息的請求消息,具體包括:
所述源端將所述輔助數(shù)據(jù)流支持信息的請求消息封裝于實時流協(xié)議rtsp的參數(shù)獲取請求中,并將封裝后的參數(shù)獲取請求進行發(fā)送。
在上述方案中,所述源端根據(jù)所述輔助數(shù)據(jù)流支持信息和待傳輸?shù)妮o助數(shù)據(jù)流發(fā)送輔助數(shù)據(jù)流的參數(shù)信息,具體包括:
源端根據(jù)所述待傳輸?shù)妮o助數(shù)據(jù)流的打包形式,確定所述輔助數(shù)據(jù)流在mpeg-ts流中所處的節(jié)目標(biāo)識以及所述輔助數(shù)據(jù)流在mpeg-ts流的節(jié)目中所處的頻道標(biāo)識;
源端根據(jù)所述待傳輸?shù)妮o助數(shù)據(jù)流的內(nèi)容,確定所述輔助數(shù)據(jù)流的優(yōu)先級、數(shù)據(jù)分組數(shù)量和文件格式;
源端將所述輔助數(shù)據(jù)流在mpeg-ts流中所處的節(jié)目標(biāo)識、所述輔助數(shù)據(jù)流在mpeg-ts流的節(jié)目中所處的頻道標(biāo)識、所述輔助數(shù)據(jù)流的優(yōu)先級、數(shù)據(jù)分組數(shù)量和文件格式進行發(fā)送。
在上述方案中,所述源端發(fā)送所述輔助數(shù)據(jù)流的參數(shù)信息,具體包括:
所述源端將所述輔助數(shù)據(jù)流的參數(shù)信息封裝于rtsp的參數(shù)設(shè)置請求中,并將封裝后的參數(shù)設(shè)置請求進行發(fā)送。
實施例五
基于前述實施例相同的技術(shù)構(gòu)思,參見圖13,其實示出了本發(fā)明實施例提供的一種基于目的端的輔助數(shù)據(jù)流的傳輸方法流程,可以包括:
s131:在miracast的能力協(xié)商階段,目的端接收輔助數(shù)據(jù)流支持信息的請 求消息;
其中,所述請求消息用于獲取目的端對輔助數(shù)據(jù)流的支持信息;
s132:目的端發(fā)送所述輔助數(shù)據(jù)流支持信息;
s133:目的端接收所述輔助數(shù)據(jù)流的參數(shù)信息。
在上述方案中,所述方法還包括:目的端根據(jù)所述輔助數(shù)據(jù)流的參數(shù)信息初始化自身的數(shù)據(jù)流接收參數(shù)。
在上述方案中,所述輔助數(shù)據(jù)流支持信息包括:所述目的端所支持的輔助數(shù)據(jù)流的格式和所述目的端所支持的輔助數(shù)據(jù)流的數(shù)據(jù)分組數(shù)量。
在上述方案中,所述目的端發(fā)送所述輔助數(shù)據(jù)流支持信息,具體包括:
所述目的端將所述輔助數(shù)據(jù)流支持信息封裝于針對實時流協(xié)議rtsp的參數(shù)獲取請求的響應(yīng)消息中,并發(fā)送封裝后的響應(yīng)消息。
在上述方案中,所述輔助數(shù)據(jù)流的參數(shù)信息,具體包括:所述輔助數(shù)據(jù)流在mpeg-ts流中所處的節(jié)目標(biāo)識、所述輔助數(shù)據(jù)流在mpeg-ts流的節(jié)目中所處的頻道標(biāo)識、所述輔助數(shù)據(jù)流的優(yōu)先級、數(shù)據(jù)分組數(shù)量和文件格式。
實施例六
基于前述實施例相同的技術(shù)構(gòu)思,參見圖14,其示出了本發(fā)明實施例提供的一種源端設(shè)備140,可以包括:第一發(fā)送模塊1401和第一接收模塊1402;其中,
第一發(fā)送模塊1401,用于在miracast的能力協(xié)商階段,發(fā)送輔助數(shù)據(jù)流支持信息的請求消息;其中,請求消息用于獲取目的端對輔助數(shù)據(jù)流的支持信息;
第一接收模塊1402,用于接收輔助數(shù)據(jù)流支持信息;
第一發(fā)送模塊1401,還用于根據(jù)輔助數(shù)據(jù)流支持信息和待傳輸?shù)妮o助數(shù)據(jù)流發(fā)送輔助數(shù)據(jù)流的參數(shù)信息。
在上述方案中,輔助數(shù)據(jù)流支持信息包括:目的端所支持的輔助數(shù)據(jù)流的格式和目的端所支持的輔助數(shù)據(jù)流的數(shù)據(jù)分組數(shù)量。
在上述方案中,第一發(fā)送模塊1401,用于將輔助數(shù)據(jù)流支持信息的請求消息封裝于實時流協(xié)議rtsp的參數(shù)獲取請求中,并將封裝后的參數(shù)獲取請求進 行發(fā)送。
在上述方案中,第一發(fā)送模塊1401,用于根據(jù)待傳輸?shù)妮o助數(shù)據(jù)流的打包形式,確定輔助數(shù)據(jù)流在mpeg-ts流中所處的節(jié)目標(biāo)識以及輔助數(shù)據(jù)流在mpeg-ts流的節(jié)目中所處的頻道標(biāo)識;
以及,根據(jù)待傳輸?shù)妮o助數(shù)據(jù)流的內(nèi)容,確定輔助數(shù)據(jù)流的優(yōu)先級、數(shù)據(jù)分組數(shù)量和文件格式;
以及,將輔助數(shù)據(jù)流在mpeg-ts流中所處的節(jié)目標(biāo)識、輔助數(shù)據(jù)流在mpeg-ts流的節(jié)目中所處的頻道標(biāo)識、輔助數(shù)據(jù)流的優(yōu)先級、數(shù)據(jù)分組數(shù)量和文件格式進行發(fā)送。
在上述方案中,第一發(fā)送模塊1401,用于將輔助數(shù)據(jù)流的參數(shù)信息封裝于rtsp的參數(shù)設(shè)置請求中,并將封裝后的參數(shù)設(shè)置請求進行發(fā)送。
實施例七
基于前述實施例相同的技術(shù)構(gòu)思,參見圖15,其示出了本發(fā)明實施例提供的一種目的端設(shè)備150,可以包括:第二接收模塊1501、第二發(fā)送模塊1502;其中,
第二接收模塊1501,用于在miracast的能力協(xié)商階段,接收輔助數(shù)據(jù)流支持信息的請求消息;其中,請求消息用于獲取目的端對輔助數(shù)據(jù)流的支持信息;
第二發(fā)送模塊1502,用于發(fā)送輔助數(shù)據(jù)流支持信息;
第二接收模塊1501,還用于接收輔助數(shù)據(jù)流的參數(shù)信息。
在上述方案中,如圖16所示,目的端設(shè)備150還包括初始化模塊1503,用于根據(jù)輔助數(shù)據(jù)流的參數(shù)信息初始化自身的數(shù)據(jù)流接收參數(shù)。
在上述方案中,輔助數(shù)據(jù)流支持信息包括:目的端所支持的輔助數(shù)據(jù)流的格式和目的端所支持的輔助數(shù)據(jù)流的數(shù)據(jù)分組數(shù)量。
在上述方案中,第二發(fā)送模塊1502,用于將輔助數(shù)據(jù)流支持信息封裝于針對實時流協(xié)議rtsp的參數(shù)獲取請求的響應(yīng)消息中,并發(fā)送封裝后的響應(yīng)消息。
在上述方案中,輔助數(shù)據(jù)流的參數(shù)信息,具體包括:輔助數(shù)據(jù)流在mpeg-ts流中所處的節(jié)目標(biāo)識、輔助數(shù)據(jù)流在mpeg-ts流的節(jié)目中所處的頻道標(biāo)識、 輔助數(shù)據(jù)流的優(yōu)先級、數(shù)據(jù)分組數(shù)量和文件格式。
實施例八
基于前述實施例相同的技術(shù)構(gòu)思,參見圖17,其示出了本發(fā)明實施例提供的一種輔助數(shù)據(jù)流的傳輸系統(tǒng)170,其特征在于,所述系統(tǒng)包括:源端設(shè)備140和目的端設(shè)備150;其中,
所述源端設(shè)備140,用于在miracast的能力協(xié)商階段,發(fā)送輔助數(shù)據(jù)流支持信息的請求消息;其中,所述請求消息用于獲取目的端對輔助數(shù)據(jù)流的支持信息;
以及,接收輔助數(shù)據(jù)流支持信息;
以及,根據(jù)所述輔助數(shù)據(jù)流支持信息和待傳輸?shù)妮o助數(shù)據(jù)流發(fā)送輔助數(shù)據(jù)流的參數(shù)信息;
所述目的端設(shè)備150,用于在miracast的能力協(xié)商階段,接收所述輔助數(shù)據(jù)流支持信息的請求消息;
以及,發(fā)送所述輔助數(shù)據(jù)流支持信息;
以及,接收所述輔助數(shù)據(jù)流的參數(shù)信息。
本領(lǐng)域內(nèi)的技術(shù)人員應(yīng)明白,本發(fā)明的實施例可提供為方法、系統(tǒng)、或計算機程序產(chǎn)品。因此,本發(fā)明可采用硬件實施例、軟件實施例、或結(jié)合軟件和硬件方面的實施例的形式。而且,本發(fā)明可采用在一個或多個其中包含有計算機可用程序代碼的計算機可用存儲介質(zhì)(包括但不限于磁盤存儲器和光學(xué)存儲器等)上實施的計算機程序產(chǎn)品的形式。
本發(fā)明是參照根據(jù)本發(fā)明實施例的方法、設(shè)備(系統(tǒng))、和計算機程序產(chǎn)品的流程圖和/或方框圖來描述的。應(yīng)理解可由計算機程序指令實現(xiàn)流程圖和/或方框圖中的每一流程和/或方框、以及流程圖和/或方框圖中的流程和/或方框的結(jié)合。可提供這些計算機程序指令到通用計算機、專用計算機、嵌入式處理機或其他可編程數(shù)據(jù)處理設(shè)備的處理器以產(chǎn)生一個機器,使得通過計算機或其他可編程數(shù)據(jù)處理設(shè)備的處理器執(zhí)行的指令產(chǎn)生用于實現(xiàn)在流程圖一個流程或多個流程和/或方框圖一個方框或多個方框中指定的功能的裝置。
這些計算機程序指令也可存儲在能引導(dǎo)計算機或其他可編程數(shù)據(jù)處理設(shè)備以特定方式工作的計算機可讀存儲器中,使得存儲在該計算機可讀存儲器中的指令產(chǎn)生包括指令裝置的制造品,該指令裝置實現(xiàn)在流程圖一個流程或多個流程和/或方框圖一個方框或多個方框中指定的功能。
這些計算機程序指令也可裝載到計算機或其他可編程數(shù)據(jù)處理設(shè)備上,使得在計算機或其他可編程設(shè)備上執(zhí)行一系列操作步驟以產(chǎn)生計算機實現(xiàn)的處理,從而在計算機或其他可編程設(shè)備上執(zhí)行的指令提供用于實現(xiàn)在流程圖一個流程或多個流程和/或方框圖一個方框或多個方框中指定的功能的步驟。
以上,僅為本發(fā)明的較佳實施例而已,并非用于限定本發(fā)明的保護范圍。