本發(fā)明涉及信息處理技術(shù)領(lǐng)域,具體涉及一種流數(shù)據(jù)的傳輸方法,以及一種流數(shù)據(jù)的傳輸裝置。
背景技術(shù):
隨著互聯(lián)網(wǎng)的發(fā)展,網(wǎng)絡(luò)直播作為流媒體的重要組成形式被越來越多的用戶參與。在直播平臺(tái)系統(tǒng)中,主播端和嘉賓端具有推送直播流數(shù)據(jù)的權(quán)限,而普通用戶端不具有推送直播流數(shù)據(jù)的權(quán)限。
在直播平臺(tái)使用過程中,普通用戶端可以向主播端發(fā)送連麥請(qǐng)求,待連麥請(qǐng)求成功后,普通用戶端變成嘉賓端,從而具有推送直播流數(shù)據(jù)的權(quán)限。
但是,在主播對(duì)連麥請(qǐng)求的審批過程中,主播只知曉當(dāng)前有連麥請(qǐng)求,連麥請(qǐng)求的審批操作無審批依據(jù),因此所得的審批結(jié)果不夠準(zhǔn)確,主播體驗(yàn)較差。
技術(shù)實(shí)現(xiàn)要素:
鑒于上述問題,提出了本發(fā)明以便提供一種克服上述問題或者至少部分地解決上述問題的流數(shù)據(jù)的傳輸方法和相應(yīng)的流數(shù)據(jù)的傳輸裝置。
依據(jù)本發(fā)明的一個(gè)方面,提供了一種流數(shù)據(jù)的傳輸方法,包括:
接收從第一客戶端按照傳輸路徑傳輸?shù)牡谝涣鲾?shù)據(jù);
按照所述傳輸路徑向所述第一客戶端發(fā)送特殊權(quán)限的申請(qǐng)請(qǐng)求,所述申請(qǐng)請(qǐng)求攜帶預(yù)覽信息;
接收所述第一客戶端根據(jù)所述預(yù)覽信息反饋的批準(zhǔn)通知。
可選地,所述預(yù)覽信息為音視頻數(shù)據(jù),在所述按照所述傳輸路徑向所述第一客戶端發(fā)送特殊權(quán)限的申請(qǐng)請(qǐng)求之前,所述方法還包括:
接收用戶對(duì)特殊權(quán)限的觸發(fā)操作;
調(diào)用音視頻采集接口采集所述用戶的音視頻數(shù)據(jù),或從設(shè)定位置提取預(yù)先采集的所述用戶的音視頻數(shù)據(jù)。
可選地,所述預(yù)覽信息攜帶單播傳輸類型的第一標(biāo)識(shí),以供傳輸節(jié)點(diǎn)根據(jù)該第一標(biāo)識(shí)將所述申請(qǐng)請(qǐng)求發(fā)送至所述第一客戶端。
可選地,所述方法還包括:
接收所述第一客戶端下發(fā)的具備特殊權(quán)限的特殊客戶端的客戶端信息,并在當(dāng)前客戶端進(jìn)行展示,所述客戶端信息包括特殊客戶端的個(gè)數(shù)、端標(biāo)識(shí)、端狀態(tài)、特殊客戶端的數(shù)量上限中至少一種。
可選地,在所述在當(dāng)前第一客戶端進(jìn)行展示之前,所述方法還包括:
提取新下發(fā)的客戶端信息的版本標(biāo)識(shí),并與本地存儲(chǔ)的客戶端信息的版本標(biāo)識(shí)進(jìn)行比對(duì);
判定比對(duì)結(jié)果為不一致。
可選地,所述傳輸路徑經(jīng)過多個(gè)目標(biāo)傳輸節(jié)點(diǎn),至少一個(gè)目標(biāo)傳輸節(jié)點(diǎn)具有關(guān)聯(lián)傳輸節(jié)點(diǎn),所述方法還包括:
向所述目標(biāo)傳輸節(jié)點(diǎn)傳輸?shù)诙鲾?shù)據(jù),以由各目標(biāo)傳輸節(jié)點(diǎn)將所述第二流數(shù)據(jù),經(jīng)所述關(guān)聯(lián)傳輸節(jié)點(diǎn)推送至所述第一客戶端以及至少一個(gè)第二客戶端。
可選地,所述第二流數(shù)據(jù)攜帶廣播傳輸方式的第二標(biāo)識(shí),以供各目標(biāo)傳輸節(jié)點(diǎn)識(shí)別,并根據(jù)該第二標(biāo)識(shí)將所述第二流數(shù)據(jù)推送至所述第一客戶端以及至少一個(gè)第二客戶端。
可選地,所述傳輸路徑經(jīng)過的各目標(biāo)傳輸節(jié)點(diǎn)記錄有其上行目標(biāo)傳輸節(jié)點(diǎn);
所述按照所述傳輸路徑向所述第一客戶端發(fā)送特殊權(quán)限的申請(qǐng)請(qǐng)求包括:
將所述申請(qǐng)請(qǐng)求傳輸至與傳輸路徑的最后一個(gè)目標(biāo)傳輸節(jié)點(diǎn),由所述最后一個(gè)目標(biāo)傳輸節(jié)點(diǎn)將所述申請(qǐng)請(qǐng)求傳輸至其上行目標(biāo)傳輸節(jié)點(diǎn),直至將所述申請(qǐng)請(qǐng)求傳輸至所述第一客戶端。
可選地,所述第一流數(shù)據(jù)攜帶傳輸過程中順次經(jīng)過的各目標(biāo)傳輸節(jié)點(diǎn)的節(jié)點(diǎn)標(biāo)識(shí)的集合;
所述按照所述傳輸路徑向所述第一客戶端發(fā)送特殊權(quán)限的申請(qǐng)請(qǐng)求包括:
按照所述節(jié)點(diǎn)標(biāo)識(shí)的集合反向順次將所述申請(qǐng)請(qǐng)求經(jīng)至少一個(gè)中間目標(biāo)傳輸節(jié)點(diǎn)傳輸至所述第一客戶端。
根據(jù)本發(fā)明的另一方面,提供了一種流數(shù)據(jù)的傳輸方法,包括:
按照傳輸路徑將第一流數(shù)據(jù)從第一客戶端傳送至第三客戶端;
接收所述第三客戶端對(duì)特殊權(quán)限的申請(qǐng)請(qǐng)求,并按照所述傳輸路徑將所述申請(qǐng)請(qǐng)求轉(zhuǎn)發(fā)至所述第一客戶端,所述申請(qǐng)請(qǐng)求攜帶預(yù)覽信息;
將所述第一客戶端根據(jù)所述預(yù)覽信息反饋的批準(zhǔn)通知轉(zhuǎn)發(fā)至所述第三客戶端。
可選地,所述傳輸路徑經(jīng)過的各目標(biāo)傳輸節(jié)點(diǎn)記錄有其上行目標(biāo)傳輸節(jié)點(diǎn),所述按照所述傳輸路徑將所述申請(qǐng)請(qǐng)求轉(zhuǎn)發(fā)至所述第一客戶端包括:
查找傳輸路徑的最后一個(gè)目標(biāo)傳輸節(jié)點(diǎn)的上行傳輸節(jié)點(diǎn),并將所述申請(qǐng)請(qǐng)求傳輸至所查找的上行目標(biāo)傳輸節(jié)點(diǎn);
由所述上行目標(biāo)傳輸節(jié)點(diǎn)將所述申請(qǐng)請(qǐng)求傳輸至其上行目標(biāo)傳輸節(jié)點(diǎn),直至將所述申請(qǐng)請(qǐng)求傳輸至所述第一客戶端。
可選地,所述傳輸路徑經(jīng)過多個(gè)目標(biāo)傳輸節(jié)點(diǎn),至少一個(gè)目標(biāo)傳輸節(jié)點(diǎn)具有關(guān)聯(lián)傳輸節(jié)點(diǎn),所述方法還包括:
接收所述第三客戶端向所述目標(biāo)傳輸節(jié)點(diǎn)傳輸?shù)牡诙鲾?shù)據(jù);
將所述第二流數(shù)據(jù)從各目標(biāo)傳輸節(jié)點(diǎn),經(jīng)所述關(guān)聯(lián)傳輸節(jié)點(diǎn)推送至所述第一客戶端以及至少一個(gè)第二客戶端。
可選地,在所述將所述第二流數(shù)據(jù)從各目標(biāo)傳輸節(jié)點(diǎn)經(jīng)所述關(guān)聯(lián)傳輸節(jié)點(diǎn)推送至所述第一客戶端以及至少一個(gè)第二客戶端之前,所述方法還包括:
判定所述第二流數(shù)據(jù)指向廣播傳輸方式。
可選地,所述方法還包括:
若所述第二流數(shù)據(jù)不指向廣播傳輸方式,則將所述第二流數(shù)據(jù)從各目標(biāo)傳輸節(jié)點(diǎn)推送至所述第一客戶端。
可選地,在所述確定所述第二流數(shù)據(jù)指向廣播傳輸方式之后,所述方法還包括:
判定所述第三客戶端具備廣播權(quán)限。
可選地,所述判定所述第三客戶端具備廣播權(quán)限包括:
查找具備廣播權(quán)限的特征客戶端集合;
確定所述第三客戶端存在所述特征客戶端集合中。
可選地,所述接收第三客戶端向所述目標(biāo)傳輸節(jié)點(diǎn)傳輸?shù)牡诙鲾?shù)據(jù)包括:
接收所述第三客戶端向直接連接的目標(biāo)傳輸節(jié)點(diǎn)傳輸?shù)牡诙鲾?shù)據(jù);
按照所述傳輸路徑的反向順序,將所述第二流數(shù)據(jù)順次推送到其他目標(biāo)傳輸節(jié)點(diǎn)。
可選地,所述將所述第二流數(shù)據(jù)從各目標(biāo)傳輸節(jié)點(diǎn),經(jīng)所述關(guān)聯(lián)傳輸節(jié)點(diǎn)推送至所述第一客戶端以及至少一個(gè)第二客戶端包括:
將所述第二流數(shù)據(jù)推送至與所述目標(biāo)傳輸節(jié)點(diǎn)直接連接的一級(jí)關(guān)聯(lián)傳輸節(jié)點(diǎn)或第一客戶端或第二客戶端;
迭代執(zhí)行推送步驟,將所述第二流數(shù)據(jù)從接收到所述第二流數(shù)據(jù)的N級(jí)關(guān)聯(lián)傳輸節(jié)點(diǎn)推送至直接連接的N+1級(jí)關(guān)聯(lián)傳輸節(jié)點(diǎn)或第一客戶端或第二客戶端,直至推送至接入傳輸節(jié)點(diǎn)集群的第一客戶端和所有第二客戶端。
可選地,所述目標(biāo)傳輸節(jié)點(diǎn)本地記錄有在所述傳輸路徑中的下行目標(biāo)傳輸節(jié)點(diǎn),在所述將所述第二流數(shù)據(jù)推送至與所述目標(biāo)傳輸節(jié)點(diǎn)直接連接的一級(jí)關(guān)聯(lián)傳輸節(jié)點(diǎn)或第一客戶端或第二客戶端之前,所述方法還包括:
查找所述目標(biāo)傳輸節(jié)點(diǎn)在所述傳輸路徑中的下行目標(biāo)傳輸節(jié)點(diǎn);
從與所述目標(biāo)傳輸節(jié)點(diǎn)直接連接的一級(jí)關(guān)聯(lián)傳輸節(jié)點(diǎn)中,去除所查找的下行目標(biāo)傳輸節(jié)點(diǎn)。
可選地,所述下行目標(biāo)傳輸節(jié)點(diǎn)與所述第一流數(shù)據(jù)的流標(biāo)識(shí)對(duì)應(yīng)存儲(chǔ),所述第二流數(shù)據(jù)攜帶所述第一流數(shù)據(jù)的流標(biāo)識(shí);
所述查找所述目標(biāo)傳輸節(jié)點(diǎn)在所述傳輸路徑中的下行目標(biāo)傳輸節(jié)點(diǎn)包括:
根據(jù)所述第一流數(shù)據(jù)的流標(biāo)識(shí),提取對(duì)應(yīng)存儲(chǔ)的下行目標(biāo)傳輸節(jié)點(diǎn)。
根據(jù)本發(fā)明的另一方面,提供了一種流數(shù)據(jù)的傳輸裝置,包括:
第一流數(shù)據(jù)接收模塊,用于接收從第一客戶端按照傳輸路徑傳輸?shù)牡谝涣鲾?shù)據(jù);
申請(qǐng)請(qǐng)求發(fā)送模塊,用于按照所述傳輸路徑向所述第一客戶端發(fā)送特殊權(quán)限的申請(qǐng)請(qǐng)求,所述申請(qǐng)請(qǐng)求攜帶預(yù)覽信息;
批準(zhǔn)通知接收模塊,用于接收所述第一客戶端根據(jù)所述預(yù)覽信息反饋的批準(zhǔn)通知。
可選地,所述裝置還包括:
觸發(fā)操作接收模塊,用于所述預(yù)覽信息為音視頻數(shù)據(jù),在所述按照所述傳輸路徑向所述第一客戶端發(fā)送特殊權(quán)限的申請(qǐng)請(qǐng)求之前,接收用戶對(duì)特殊權(quán)限的觸發(fā)操作;
音視頻數(shù)據(jù)獲取模塊,用于調(diào)用音視頻采集接口采集所述用戶的音視頻數(shù)據(jù),或從設(shè)定位置提取預(yù)先采集的所述用戶的音視頻數(shù)據(jù)。
可選地,所述預(yù)覽信息攜帶單播傳輸類型的第一標(biāo)識(shí),以供傳輸節(jié)點(diǎn)根據(jù)該第一標(biāo)識(shí)將所述申請(qǐng)請(qǐng)求發(fā)送至所述第一客戶端。
可選地,所述裝置還包括:
客戶端信息接收模塊,用于接收所述第一客戶端下發(fā)的具備特殊權(quán)限的特殊客戶端的客戶端信息,并在當(dāng)前客戶端進(jìn)行展示,所述客戶端信息包括特殊客戶端的個(gè)數(shù)、端標(biāo)識(shí)、端狀態(tài)、特殊客戶端的數(shù)量上限中至少一種。
可選地,所述裝置還包括:
版本標(biāo)識(shí)提取模塊,用于在所述在當(dāng)前第一客戶端進(jìn)行展示之前,提取新下發(fā)的客戶端信息的版本標(biāo)識(shí),并與本地存儲(chǔ)的客戶端信息的版本標(biāo)識(shí)進(jìn)行比對(duì);
比對(duì)結(jié)果判定模塊,用于判定比對(duì)結(jié)果為不一致。
可選地,所述裝置還包括:
第二流數(shù)據(jù)傳輸模塊,用于向所述目標(biāo)傳輸節(jié)點(diǎn)傳輸?shù)诙鲾?shù)據(jù),以由各目標(biāo)傳輸節(jié)點(diǎn)將所述第二流數(shù)據(jù),經(jīng)所述關(guān)聯(lián)傳輸節(jié)點(diǎn)推送至所述第一客戶端以及至少一個(gè)第二客戶端,所述傳輸路徑經(jīng)過多個(gè)目標(biāo)傳輸節(jié)點(diǎn),至少一個(gè)目標(biāo)傳輸節(jié)點(diǎn)具有關(guān)聯(lián)傳輸節(jié)點(diǎn)。
可選地,所述第二流數(shù)據(jù)攜帶廣播傳輸方式的第二標(biāo)識(shí),以供各目標(biāo)傳輸節(jié)點(diǎn)識(shí)別,并根據(jù)該第二標(biāo)識(shí)將所述第二流數(shù)據(jù)推送至所述第一客戶端以及至少一個(gè)第二客戶端。
可選地,所述申請(qǐng)請(qǐng)求發(fā)送模塊,具體用于將所述申請(qǐng)請(qǐng)求傳輸至與傳輸路徑的最后一個(gè)目標(biāo)傳輸節(jié)點(diǎn),由所述最后一個(gè)目標(biāo)傳輸節(jié)點(diǎn)將所述申請(qǐng)請(qǐng)求傳輸至其上行目標(biāo)傳輸節(jié)點(diǎn),直至將所述申請(qǐng)請(qǐng)求傳輸至所述第一客戶端,所述傳輸路徑經(jīng)過的各目標(biāo)傳輸節(jié)點(diǎn)記錄有其上行目標(biāo)傳輸節(jié)點(diǎn)。
可選地,所述申請(qǐng)請(qǐng)求發(fā)送模塊,具體用于按照所述節(jié)點(diǎn)標(biāo)識(shí)的集合反向順次將所述申請(qǐng)請(qǐng)求經(jīng)至少一個(gè)中間目標(biāo)傳輸節(jié)點(diǎn)傳輸至所述第一客戶端,所述第一流數(shù)據(jù)攜帶傳輸過程中順次經(jīng)過的各目標(biāo)傳輸節(jié)點(diǎn)的節(jié)點(diǎn)標(biāo)識(shí)的集合。
根據(jù)本發(fā)明的另一方面,提供了一種流數(shù)據(jù)的傳輸裝置,包括:
第一流數(shù)據(jù)傳輸模塊,用于按照傳輸路徑將第一流數(shù)據(jù)從第一客戶端傳送至第三客戶端;
申請(qǐng)請(qǐng)求接收模塊,用于接收所述第三客戶端對(duì)特殊權(quán)限的申請(qǐng)請(qǐng)求;
申請(qǐng)請(qǐng)求轉(zhuǎn)發(fā)模塊,用于按照所述傳輸路徑將所述申請(qǐng)請(qǐng)求轉(zhuǎn)發(fā)至所述第一客戶端,所述申請(qǐng)請(qǐng)求攜帶預(yù)覽信息;
批準(zhǔn)通知轉(zhuǎn)發(fā)模塊,用于將所述第一客戶端根據(jù)所述預(yù)覽信息反饋的批準(zhǔn)通知轉(zhuǎn)發(fā)至所述第三客戶端。
可選地,所述申請(qǐng)請(qǐng)求轉(zhuǎn)發(fā)模塊包括:
上行傳輸節(jié)點(diǎn)查找子模塊,用于查找傳輸路徑的最后一個(gè)目標(biāo)傳輸節(jié)點(diǎn)的上行傳輸節(jié)點(diǎn),并將所述申請(qǐng)請(qǐng)求傳輸至所查找的上行目標(biāo)傳輸節(jié)點(diǎn),所述傳輸路徑經(jīng)過的各目標(biāo)傳輸節(jié)點(diǎn)記錄有其上行目標(biāo)傳輸節(jié)點(diǎn);
申請(qǐng)請(qǐng)求傳輸子模塊,用于由所述上行目標(biāo)傳輸節(jié)點(diǎn)將所述申請(qǐng)請(qǐng)求傳輸至其上行目標(biāo)傳輸節(jié)點(diǎn),直至將所述申請(qǐng)請(qǐng)求傳輸至所述第一客戶端。
可選地,所述裝置還包括:
第二流數(shù)據(jù)接收模塊,用于接收所述第三客戶端向所述目標(biāo)傳輸節(jié)點(diǎn)傳輸?shù)牡诙鲾?shù)據(jù),所述傳輸路徑經(jīng)過多個(gè)目標(biāo)傳輸節(jié)點(diǎn),至少一個(gè)目標(biāo)傳輸節(jié)點(diǎn)具有關(guān)聯(lián)傳輸節(jié)點(diǎn);
第二流數(shù)據(jù)推送模塊,用于將所述第二流數(shù)據(jù)從各目標(biāo)傳輸節(jié)點(diǎn),經(jīng)所述關(guān)聯(lián)傳輸節(jié)點(diǎn)推送至所述第一客戶端以及至少一個(gè)第二客戶端。
可選地,所述裝置還包括:
廣播傳輸方式判定模塊,用于在所述將所述第二流數(shù)據(jù)從各目標(biāo)傳輸節(jié)點(diǎn)經(jīng)所述關(guān)聯(lián)傳輸節(jié)點(diǎn)推送至所述第一客戶端以及至少一個(gè)第二客戶端之前,判定所述第二流數(shù)據(jù)指向廣播傳輸方式。
可選地,所述裝置還包括:
第二流數(shù)據(jù)單播模塊,用于若所述第二流數(shù)據(jù)不指向廣播傳輸方式,則將所述第二流數(shù)據(jù)從各目標(biāo)傳輸節(jié)點(diǎn)推送至所述第一客戶端。
可選地,所述裝置還包括:
廣播權(quán)限判定模塊,用于在所述確定所述第二流數(shù)據(jù)指向廣播傳輸方式之后,判定所述第三客戶端具備廣播權(quán)限。
可選地,所述廣播權(quán)限判定模塊包括:
集合查找子模塊,用于查找具備廣播權(quán)限的特征客戶端集合;
第三客戶端確定子模塊,用于確定所述第三客戶端存在所述特征客戶端集合中。
可選地,所述第二流數(shù)據(jù)接收模塊包括:
第二流數(shù)據(jù)獲取子模塊,用于接收所述第三客戶端向直接連接的目標(biāo)傳輸節(jié)點(diǎn)傳輸?shù)牡诙鲾?shù)據(jù);
第二流數(shù)據(jù)反向傳輸子模塊,用于按照所述傳輸路徑的反向順序,將所述第二流數(shù)據(jù)順次推送到其他目標(biāo)傳輸節(jié)點(diǎn)。
可選地,所述第二流數(shù)據(jù)推送模塊包括:
第二流數(shù)據(jù)直接傳輸子模塊,用于將所述第二流數(shù)據(jù)推送至與所述目標(biāo)傳輸節(jié)點(diǎn)直接連接的一級(jí)關(guān)聯(lián)傳輸節(jié)點(diǎn)或第一客戶端或第二客戶端;
第二流數(shù)據(jù)迭代推送子模塊,用于迭代執(zhí)行推送步驟,將所述第二流數(shù)據(jù)從接收到所述第二流數(shù)據(jù)的N級(jí)關(guān)聯(lián)傳輸節(jié)點(diǎn)推送至直接連接的N+1級(jí)關(guān)聯(lián)傳輸節(jié)點(diǎn)或第一客戶端或第二客戶端,直至推送至接入傳輸節(jié)點(diǎn)集群的第一客戶端和所有第二客戶端。
可選地,所述裝置還包括:
下行目標(biāo)傳輸節(jié)點(diǎn)查找模塊,用于在所述將所述第二流數(shù)據(jù)推送至與所述目標(biāo)傳輸節(jié)點(diǎn)直接連接的一級(jí)關(guān)聯(lián)傳輸節(jié)點(diǎn)或第一客戶端或第二客戶端之前,查找所述目標(biāo)傳輸節(jié)點(diǎn)在所述傳輸路徑中的下行目標(biāo)傳輸節(jié)點(diǎn),所述目標(biāo)傳輸節(jié)點(diǎn)本地記錄有在所述傳輸路徑中的下行目標(biāo)傳輸節(jié)點(diǎn);
下行目標(biāo)傳輸節(jié)點(diǎn)去除模塊,用于從與所述目標(biāo)傳輸節(jié)點(diǎn)直接連接的一級(jí)關(guān)聯(lián)傳輸節(jié)點(diǎn)中,去除所查找的下行目標(biāo)傳輸節(jié)點(diǎn)。
可選地,所述下行目標(biāo)傳輸節(jié)點(diǎn)查找模塊,具體用于根據(jù)所述第一流數(shù)據(jù)的流標(biāo)識(shí),提取對(duì)應(yīng)存儲(chǔ)的下行目標(biāo)傳輸節(jié)點(diǎn),所述下行目標(biāo)傳輸節(jié)點(diǎn)與所述第一流數(shù)據(jù)的流標(biāo)識(shí)對(duì)應(yīng)存儲(chǔ),所述第二流數(shù)據(jù)攜帶所述第一流數(shù)據(jù)的流標(biāo)識(shí)。
依據(jù)本發(fā)明實(shí)施例,按照第一客戶端傳輸?shù)谝涣鲾?shù)據(jù)時(shí)的傳輸路徑,向第一客戶端發(fā)送特殊權(quán)限的申請(qǐng)請(qǐng)求,由于申請(qǐng)請(qǐng)求攜帶預(yù)覽信息,因此使用第一客戶端的用戶可以對(duì)預(yù)覽信息進(jìn)行查看,并根據(jù)查看結(jié)果對(duì)申請(qǐng)請(qǐng)求做出判斷,從而提高了用戶體驗(yàn),同時(shí)提高了申請(qǐng)請(qǐng)求的判斷結(jié)果的準(zhǔn)確性。同時(shí),本發(fā)明實(shí)施例使用同一傳輸路徑傳輸流數(shù)據(jù)和信令,省去了傳統(tǒng)方法中對(duì)流數(shù)據(jù)和信令的不同傳輸路徑的建立,節(jié)省了路徑建立。
本發(fā)明實(shí)施例利用目標(biāo)傳輸節(jié)點(diǎn)及其關(guān)聯(lián)傳輸節(jié)點(diǎn)對(duì)流數(shù)據(jù)進(jìn)行推送,當(dāng)關(guān)聯(lián)傳輸節(jié)點(diǎn)具有多個(gè)層級(jí)時(shí),按層級(jí)對(duì)流數(shù)據(jù)進(jìn)行逐級(jí)推送,最終將流數(shù)據(jù)推送至接入傳輸節(jié)點(diǎn)集群的多個(gè)客戶端,實(shí)現(xiàn)流數(shù)據(jù)的廣播。
上述說明僅是本發(fā)明技術(shù)方案的概述,為了能夠更清楚了解本發(fā)明的技術(shù)手段,而可依照說明書的內(nèi)容予以實(shí)施,并且為了讓本發(fā)明的上述和其它目的、特征和優(yōu)點(diǎn)能夠更明顯易懂,以下特舉本發(fā)明的具體實(shí)施方式。
附圖說明
通過閱讀下文優(yōu)選實(shí)施方式的詳細(xì)描述,各種其他的優(yōu)點(diǎn)和益處對(duì)于本領(lǐng)域普通技術(shù)人員將變得清楚明了。附圖僅用于示出優(yōu)選實(shí)施方式的目的,而并不認(rèn)為是對(duì)本發(fā)明的限制。而且在整個(gè)附圖中,用相同的參考符號(hào)表示相同的部件。在附圖中:
圖1示出了根據(jù)本發(fā)明實(shí)施例一的一種流數(shù)據(jù)的傳輸方法的步驟流程示意圖;
圖2示出了根據(jù)本發(fā)明實(shí)施例二的一種流數(shù)據(jù)的傳輸方法的步驟流程示意圖;
圖3示出了根據(jù)本發(fā)明實(shí)施例三的一種流數(shù)據(jù)的傳輸方法的步驟流程示意圖;
圖4示出了根據(jù)本發(fā)明實(shí)施例四的一種流數(shù)據(jù)的傳輸方法的步驟流程示意圖;
圖5示出了根據(jù)本發(fā)明實(shí)施例五的一種流數(shù)據(jù)的傳輸方法的步驟流程示意圖;
圖6示出了根據(jù)本發(fā)明實(shí)施例六的一種流數(shù)據(jù)的傳輸裝置的結(jié)構(gòu)框圖;
圖7示出了根據(jù)本發(fā)明實(shí)施例七的一種流數(shù)據(jù)的傳輸裝置的結(jié)構(gòu)框圖;
圖8示出了根據(jù)本發(fā)明實(shí)施例八的一種流數(shù)據(jù)的傳輸裝置的結(jié)構(gòu)框圖;
圖9示出了根據(jù)本發(fā)明實(shí)施例九的一種流數(shù)據(jù)的傳輸裝置的結(jié)構(gòu)框圖;
圖10示出了根據(jù)本發(fā)明實(shí)施例十的一種流數(shù)據(jù)的傳輸裝置的結(jié)構(gòu)框圖。
具體實(shí)施方式
下面將參照附圖更詳細(xì)地描述本公開的示例性實(shí)施例。雖然附圖中顯示了本公開的示例性實(shí)施例,然而應(yīng)當(dāng)理解,可以以各種形式實(shí)現(xiàn)本公開而不應(yīng)被這里闡述的實(shí)施例所限制。相反,提供這些實(shí)施例是為了能夠更透徹地理解本公開,并且能夠?qū)⒈竟_的范圍完整的傳達(dá)給本領(lǐng)域的技術(shù)人員。
參照?qǐng)D1,示出了根據(jù)本發(fā)明實(shí)施例一的一種流數(shù)據(jù)的傳輸方法的步驟流程示意圖,具體可以包括如下步驟:
步驟101、接收從第一客戶端按照傳輸路徑傳輸?shù)牡谝涣鲾?shù)據(jù)。
本發(fā)明實(shí)施例所述的方法應(yīng)用于存在以流式傳輸方式傳輸?shù)囊曨l流數(shù)據(jù)的場景。
本發(fā)明實(shí)施例中,連入網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)的客戶端為多個(gè),客戶端與客戶端之間通過傳輸路徑連接,傳輸路徑流經(jīng)一個(gè)或多個(gè)傳輸節(jié)點(diǎn),基于多條傳輸路徑使得某一客戶端與其他多個(gè)客戶端連接。
接入網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)的第一客戶端可以根據(jù)預(yù)先建立的傳輸路徑向其他客戶端傳輸?shù)谝涣鲾?shù)據(jù)??梢允褂脙?nèi)容分發(fā)網(wǎng)絡(luò)(Content Delivery Network,CDN)對(duì)客戶端間傳輸?shù)牧鲾?shù)據(jù)進(jìn)行傳輸。
本發(fā)明實(shí)施例所述方法可以應(yīng)用于多種應(yīng)用場景,例如應(yīng)用于視頻直播場景、視頻會(huì)議場景等。當(dāng)本發(fā)明實(shí)施例所述方法應(yīng)用于視頻直播場景時(shí),直播間內(nèi)包括主播端、嘉賓端和普通用戶端,第一客戶端可以為主播端,第一流數(shù)據(jù)為主播端傳輸?shù)囊曨l流數(shù)據(jù)。
當(dāng)用戶進(jìn)入某一直播間成為普通用戶后,調(diào)度節(jié)點(diǎn)會(huì)為該普通用戶端分配其與主播端、嘉賓端和其他普通用戶端的傳輸路徑,即調(diào)度節(jié)點(diǎn)會(huì)對(duì)直播間的網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)進(jìn)行調(diào)整,將新加入的普通用戶端添加至網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)中。調(diào)度節(jié)點(diǎn)可以根據(jù)普通用戶端所在區(qū)域的地理位置信息、傳輸節(jié)點(diǎn)的負(fù)載情況等信息,為普通用戶端分配傳輸路徑。
步驟102、按照傳輸路徑向第一客戶端發(fā)送特殊權(quán)限的申請(qǐng)請(qǐng)求,申請(qǐng)請(qǐng)求攜帶預(yù)覽信息。
本發(fā)明實(shí)施例中,特殊權(quán)限為多種形式,例如廣播流數(shù)據(jù)權(quán)限,其他客戶端可以向第一客戶端發(fā)送申請(qǐng)請(qǐng)求,申請(qǐng)請(qǐng)求由第一客戶端用戶審批。只有在申請(qǐng)請(qǐng)求被批準(zhǔn)后,客戶端才具特殊權(quán)限。
當(dāng)前客戶端在按照預(yù)先建立的傳輸路徑向第一客戶端發(fā)送特殊權(quán)限的申請(qǐng)請(qǐng)求時(shí),會(huì)在申請(qǐng)請(qǐng)求中攜帶預(yù)覽信息供第一客戶端用戶預(yù)覽。預(yù)覽信息可以指示發(fā)送申請(qǐng)請(qǐng)求的客戶端用戶的相關(guān)信息,可以為多種形式,如視頻數(shù)據(jù)、音頻數(shù)據(jù)等,當(dāng)預(yù)覽信息為音視頻數(shù)據(jù)時(shí),預(yù)覽信息可以是現(xiàn)場錄制的一段直播流數(shù)據(jù),也可以是預(yù)先錄制的一段音視頻數(shù)據(jù)。
在視頻直播場景中,普通用戶端預(yù)廣播流數(shù)據(jù)時(shí),可以向主播端發(fā)送廣播流數(shù)據(jù)權(quán)限的申請(qǐng)請(qǐng)求,申請(qǐng)請(qǐng)求中攜帶該普通用戶端用戶的預(yù)覽信息,如用戶的音視頻數(shù)據(jù)。
步驟103、接收第一客戶端根據(jù)預(yù)覽信息反饋的批準(zhǔn)通知。
第一客戶端接收到攜帶預(yù)覽信息的申請(qǐng)請(qǐng)求后,可以對(duì)預(yù)覽信息進(jìn)行展示,第一客戶端用戶對(duì)展示的預(yù)覽信息進(jìn)行預(yù)覽,并根據(jù)預(yù)覽結(jié)果對(duì)申請(qǐng)請(qǐng)求做出審批。由于預(yù)覽信息為申請(qǐng)請(qǐng)求的審批提供了依據(jù),因此在申請(qǐng)請(qǐng)求中攜帶預(yù)覽信息提高了審批者的體驗(yàn)效果,使得審批結(jié)果更加準(zhǔn)確。
如果申請(qǐng)請(qǐng)求得到批準(zhǔn),則第一客戶端會(huì)向發(fā)送申請(qǐng)請(qǐng)求的客戶端反饋批準(zhǔn)通知,客戶端接收到批準(zhǔn)通知后客戶端身份發(fā)生變化,具有特殊權(quán)限。
以視頻直播場景為例,直播間包括主播、嘉賓和普通用戶,主播端具有廣播流數(shù)據(jù)權(quán)限,主播對(duì)普通用戶端發(fā)送的廣播流數(shù)據(jù)權(quán)限的申請(qǐng)請(qǐng)求進(jìn)行審批。普通用戶端向主播端發(fā)送廣播流數(shù)據(jù)權(quán)限的申請(qǐng)請(qǐng)求即發(fā)送連麥請(qǐng)求時(shí),在申請(qǐng)請(qǐng)求中攜帶普通用戶的視頻數(shù)據(jù),主播端接收到申請(qǐng)請(qǐng)求后展示該視頻,主播可以通過觀看視頻了解普通用戶的相關(guān)信息,并以該視頻為依據(jù)對(duì)申請(qǐng)請(qǐng)求做出審批。
如果申請(qǐng)請(qǐng)求得到批準(zhǔn),則主播端會(huì)向發(fā)送申請(qǐng)請(qǐng)求的普通用戶端反饋批準(zhǔn)通知,普通用戶端接收到批準(zhǔn)通知后客戶端身份發(fā)生變化,從普通客戶端變成嘉賓端,具有廣播流數(shù)據(jù)權(quán)限。
依據(jù)本發(fā)明實(shí)施例,按照第一客戶端傳輸?shù)谝涣鲾?shù)據(jù)時(shí)的傳輸路徑,向第一客戶端發(fā)送特殊權(quán)限的申請(qǐng)請(qǐng)求,由于申請(qǐng)請(qǐng)求攜帶預(yù)覽信息,因此使用第一客戶端的用戶可以對(duì)預(yù)覽信息進(jìn)行查看,并根據(jù)查看結(jié)果對(duì)申請(qǐng)請(qǐng)求做出判斷,從而提高了用戶體驗(yàn),同時(shí)提高了申請(qǐng)請(qǐng)求的判斷結(jié)果的準(zhǔn)確性。同時(shí),本發(fā)明實(shí)施例使用同一傳輸路徑傳輸流數(shù)據(jù)和信令,省去了傳統(tǒng)方法中對(duì)流數(shù)據(jù)和信令的不同傳輸路徑的建立,節(jié)省了路徑建立。
參照?qǐng)D2,示出了根據(jù)本發(fā)明實(shí)施例二的一種流數(shù)據(jù)的傳輸方法的步驟流程示意圖,具體可以包括如下步驟:
步驟201、接收從第一客戶端按照傳輸路徑傳輸?shù)牡谝涣鲾?shù)據(jù)。
步驟202、按照傳輸路徑向第一客戶端發(fā)送特殊權(quán)限的申請(qǐng)請(qǐng)求,申請(qǐng)請(qǐng)求攜帶預(yù)覽信息。
某一客戶端可以按照預(yù)先建立的傳輸路徑向第一客戶端發(fā)送特殊權(quán)限的申請(qǐng)請(qǐng)求,具體地可以通過以下方式執(zhí)行上述步驟:第一種,可以事先在傳輸路徑經(jīng)過的各目標(biāo)傳輸節(jié)點(diǎn)記錄其上行目標(biāo)傳輸節(jié)點(diǎn),發(fā)送申請(qǐng)請(qǐng)求時(shí),將申請(qǐng)請(qǐng)求傳輸至與傳輸路徑的最后一個(gè)目標(biāo)傳輸節(jié)點(diǎn),即傳輸至與發(fā)送申請(qǐng)請(qǐng)求的客戶端直接連接的目標(biāo)傳輸節(jié)點(diǎn),由該最后一個(gè)目標(biāo)傳輸節(jié)點(diǎn)將申請(qǐng)請(qǐng)求傳輸至其上行目標(biāo)傳輸節(jié)點(diǎn),按照上述方法,直至將申請(qǐng)請(qǐng)求傳輸至第一客戶端。
在網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)中,對(duì)于某一傳輸路徑中相鄰的兩個(gè)傳輸節(jié)點(diǎn),按照第一客戶端至其他客戶端的傳輸方向,限定位于傳輸方向末端的傳輸節(jié)點(diǎn)是位于傳輸方向起始端的傳輸節(jié)點(diǎn)的下行傳輸節(jié)點(diǎn)。例如,第一客戶端到第二客戶端的傳輸路徑為節(jié)點(diǎn)1-節(jié)點(diǎn)2-節(jié)點(diǎn)3,第一客戶端與節(jié)點(diǎn)1直接連接,第二客戶端與節(jié)點(diǎn)3直接連接,限定節(jié)點(diǎn)2為節(jié)點(diǎn)1的下行傳輸節(jié)點(diǎn),節(jié)點(diǎn)1為節(jié)點(diǎn)2的上行傳輸節(jié)點(diǎn)。
第二種,限定第一客戶端發(fā)送第一流數(shù)據(jù)時(shí),讓第一流數(shù)據(jù)節(jié)點(diǎn)傳輸過程中順次經(jīng)過的各目標(biāo)傳輸節(jié)點(diǎn)的節(jié)點(diǎn)標(biāo)識(shí)的集合,發(fā)送申請(qǐng)請(qǐng)求客戶端在接收到第一流數(shù)據(jù)后,提取節(jié)點(diǎn)標(biāo)識(shí)的集合,并讓發(fā)送的申請(qǐng)請(qǐng)求攜帶節(jié)點(diǎn)標(biāo)識(shí)的集合,可以按照申請(qǐng)請(qǐng)求攜帶的節(jié)點(diǎn)標(biāo)識(shí)的集合反向順序?qū)⑸暾?qǐng)請(qǐng)求經(jīng)過至少一個(gè)中間傳輸節(jié)點(diǎn)傳輸至第一客戶端。
本發(fā)明實(shí)施例中,某一客戶端發(fā)送給第一客戶端的特殊權(quán)限的申請(qǐng)請(qǐng)求攜帶預(yù)覽信息,第一客戶端用戶可以根據(jù)預(yù)覽信息對(duì)申請(qǐng)請(qǐng)求做出審批。
當(dāng)預(yù)覽信息為音視頻數(shù)據(jù)時(shí),音視頻數(shù)據(jù)可以是實(shí)時(shí)采集的,也可以是預(yù)先存儲(chǔ)的。在按照傳輸路徑向第一客戶端發(fā)送特殊權(quán)限的申請(qǐng)請(qǐng)求之前,本發(fā)明實(shí)施例所述方法還可以包括:接收用戶對(duì)特殊權(quán)限的觸發(fā)操作,調(diào)用音視頻采集接口采集用戶的音視頻數(shù)據(jù),或者從設(shè)定位置提取預(yù)先采集的用戶的音視頻數(shù)據(jù)。
發(fā)送的申請(qǐng)請(qǐng)求的傳播方式為單播,只需按照發(fā)送申請(qǐng)請(qǐng)求的客戶端與第一客戶端間的傳輸路徑將申請(qǐng)請(qǐng)求單播至第一客戶端,為使傳輸路徑經(jīng)過的傳輸節(jié)點(diǎn)對(duì)申請(qǐng)請(qǐng)求進(jìn)行單播操作,發(fā)送申請(qǐng)請(qǐng)求的客戶端可以讓預(yù)覽信息攜帶單播傳輸類型的第一標(biāo)識(shí),以供傳輸節(jié)點(diǎn)根據(jù)該第一標(biāo)識(shí)將所述申請(qǐng)請(qǐng)求發(fā)送至所述第一客戶端。具體地,可以在傳輸節(jié)點(diǎn)中記錄標(biāo)識(shí)與傳輸方式的對(duì)應(yīng)關(guān)系,例如第一標(biāo)識(shí)對(duì)應(yīng)單播傳輸方式,傳輸節(jié)點(diǎn)在識(shí)別到申請(qǐng)請(qǐng)求的預(yù)覽信息攜帶第一標(biāo)識(shí)后,確定申請(qǐng)請(qǐng)求的傳播方式為單播。
步驟203、接收第一客戶端根據(jù)預(yù)覽信息反饋的批準(zhǔn)通知。
第一客戶端用戶批準(zhǔn)特殊權(quán)限的申請(qǐng)請(qǐng)求后,第一客戶端會(huì)向發(fā)送申請(qǐng)請(qǐng)求的客戶端反饋批準(zhǔn)通知,相應(yīng)地發(fā)送申請(qǐng)請(qǐng)求的客戶端會(huì)接收到第一客戶端反饋的批準(zhǔn)通知,自此具有特殊權(quán)限。
步驟204、接收第一客戶端下發(fā)的具備特殊權(quán)限的特殊客戶端的客戶端信息,并在當(dāng)前客戶端進(jìn)行展示。
當(dāng)?shù)谝豢蛻舳伺鷾?zhǔn)特殊權(quán)限的申請(qǐng)請(qǐng)求后,系統(tǒng)中具有特殊權(quán)限的特殊客戶端的客戶端信息發(fā)生了變化,客戶端信息可以包括具備特殊權(quán)限的特殊客戶端的個(gè)數(shù)、端標(biāo)識(shí)、端狀態(tài)和特殊客戶端的數(shù)量上限中至少一種。
為對(duì)系統(tǒng)中其他客戶端展示的特殊客戶端的客戶端信息進(jìn)行更新,第一客戶端會(huì)將更新后的特殊客戶端的客戶端信息下發(fā)給其他客戶端,其他客戶端會(huì)對(duì)更新后的特殊客戶端的客戶端信息進(jìn)行展示。具體地,第一客戶端會(huì)將更新后的客戶端信息傳送至與其直接連接的傳輸節(jié)點(diǎn),然后根據(jù)網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)中的多條傳輸路徑,將更新后的客戶端信息傳輸至接入網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)的其他客戶端并展示。需要說明的是,步驟203和步驟204可以同時(shí)進(jìn)行,也可以先后進(jìn)行,本發(fā)明在此不做限制。
第一客戶端可以根據(jù)不同時(shí)機(jī)對(duì)特殊客戶端的客戶端信息進(jìn)行下發(fā),例如,可以在批準(zhǔn)當(dāng)前特殊權(quán)限的申請(qǐng)請(qǐng)求后馬上下發(fā)特殊客戶端的客戶端信息,可以按照預(yù)設(shè)時(shí)段間隔下發(fā)特殊客戶端的客戶端信息。
如果其他客戶端本地存儲(chǔ)的特殊客戶端的客戶端信息與新下發(fā)的特殊客戶端的客戶端信息不同相同,則需要對(duì)客戶端信息進(jìn)行更新,展示更新后的客戶端信息。
可以針對(duì)不同客戶端信息設(shè)置不同的版本標(biāo)識(shí),例如版本標(biāo)識(shí)為數(shù)值,將每次更新后的版本標(biāo)識(shí)的數(shù)值增加1,這時(shí)可以通過以下方式判斷本地存儲(chǔ)的和新下發(fā)的特殊客戶端的客戶端信息是否相同:提取新下發(fā)的客戶端信息的版本標(biāo)識(shí),并與本地存儲(chǔ)的客戶端信息的版本表示進(jìn)行對(duì)比,如果判定比對(duì)結(jié)果不一致,則判定本地存儲(chǔ)的和新下發(fā)的客戶端信息不同,當(dāng)前客戶端對(duì)本地存儲(chǔ)的客戶端信息進(jìn)行更新,展示新下發(fā)的客戶端信息。
依據(jù)本發(fā)明實(shí)施例,按照第一客戶端傳輸?shù)谝涣鲾?shù)據(jù)時(shí)的傳輸路徑,向第一客戶端發(fā)送特殊權(quán)限的申請(qǐng)請(qǐng)求,由于申請(qǐng)請(qǐng)求攜帶預(yù)覽信息,因此使用第一客戶端的用戶可以對(duì)預(yù)覽信息進(jìn)行查看,并根據(jù)查看結(jié)果對(duì)申請(qǐng)請(qǐng)求做出判斷,從而提高了用戶體驗(yàn),同時(shí)提高了申請(qǐng)請(qǐng)求的判斷結(jié)果的準(zhǔn)確性。同時(shí),本發(fā)明實(shí)施例使用同一傳輸路徑傳輸流數(shù)據(jù)和信令,省去了傳統(tǒng)方法中對(duì)流數(shù)據(jù)和信令的不同傳輸路徑的建立,節(jié)省了路徑建立。
參照?qǐng)D3,示出了根據(jù)本發(fā)明實(shí)施例三的一種流數(shù)據(jù)的傳輸方法的步驟流程示意圖,具體可以包括如下步驟:
步驟301、接收從第一客戶端按照傳輸路徑傳輸?shù)牡谝涣鲾?shù)據(jù)。
步驟302、按照所述傳輸路徑向所述第一客戶端發(fā)送特殊權(quán)限的申請(qǐng)請(qǐng)求,所述申請(qǐng)請(qǐng)求攜帶預(yù)覽信息。
本發(fā)明實(shí)施例中,特殊權(quán)限為廣播流數(shù)據(jù)權(quán)限。
步驟303、接收所述第一客戶端根據(jù)所述預(yù)覽信息反饋的批準(zhǔn)通知。
步驟304、向目標(biāo)傳輸節(jié)點(diǎn)傳輸?shù)诙鲾?shù)據(jù),以由各目標(biāo)傳輸節(jié)點(diǎn)將第二流數(shù)據(jù),經(jīng)關(guān)聯(lián)傳輸節(jié)點(diǎn)推送至第一客戶端以及至少一個(gè)第二客戶端,傳輸路徑經(jīng)過多個(gè)目標(biāo)傳輸節(jié)點(diǎn),至少一個(gè)至少一個(gè)目標(biāo)傳輸節(jié)點(diǎn)具有關(guān)聯(lián)傳輸節(jié)點(diǎn)。
本發(fā)明實(shí)施例中,第一客戶端按照預(yù)先建立的傳輸路徑向當(dāng)前客戶端傳輸?shù)谝涣鲾?shù)據(jù)。第一客戶端與當(dāng)前客戶端的傳輸路徑經(jīng)過的傳輸節(jié)點(diǎn)稱為目標(biāo)傳輸節(jié)點(diǎn),目標(biāo)傳輸節(jié)點(diǎn)的數(shù)目為多個(gè),至少一個(gè)目標(biāo)傳輸節(jié)點(diǎn)具有關(guān)聯(lián)傳輸節(jié)點(diǎn)。關(guān)聯(lián)傳輸節(jié)點(diǎn)可以是與目標(biāo)傳輸節(jié)點(diǎn)直接連接的傳輸節(jié)點(diǎn),也可以是通過直接連接的傳輸節(jié)點(diǎn)與目標(biāo)傳輸節(jié)點(diǎn)間接連接的傳輸節(jié)點(diǎn)。
當(dāng)前客戶端接收到第一客戶端反饋的批準(zhǔn)通知后具有廣播流數(shù)據(jù)的權(quán)限。當(dāng)前客戶端廣播第二流數(shù)據(jù)時(shí),可以將第二流數(shù)據(jù)傳輸至當(dāng)前客戶端與第一客戶端的傳輸路徑經(jīng)過的各目標(biāo)傳輸節(jié)點(diǎn)上,如果目標(biāo)傳輸節(jié)點(diǎn)具有關(guān)聯(lián)傳輸節(jié)點(diǎn),則將第二流數(shù)據(jù)從目標(biāo)傳輸節(jié)點(diǎn)推送至關(guān)聯(lián)傳輸節(jié)點(diǎn),最終將第二流數(shù)據(jù)推送至接入網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)的第一客戶端和第三客戶端,完成對(duì)第二流數(shù)據(jù)的廣播傳輸。
具體地,可以將第二流數(shù)據(jù)推送至與當(dāng)前客戶端直接連接的第一目標(biāo)傳輸節(jié)點(diǎn)上,如果第一目標(biāo)傳輸節(jié)點(diǎn)具有關(guān)聯(lián)傳輸節(jié)點(diǎn),則在將第二流數(shù)據(jù)推送至與第一目標(biāo)傳輸節(jié)點(diǎn)直接連接的第二目標(biāo)傳輸節(jié)點(diǎn)的同時(shí),將第二流數(shù)據(jù)從第一目標(biāo)傳輸節(jié)點(diǎn)推送至其關(guān)聯(lián)傳輸節(jié)點(diǎn),循環(huán)執(zhí)行上述步驟,最終將第二流數(shù)據(jù)推送至第一客戶端和第三客戶端。
第一客戶端和當(dāng)前客戶端同時(shí)推送流數(shù)據(jù)時(shí),其他用戶客戶端會(huì)接收到兩路流數(shù)據(jù),這時(shí)其他用戶客戶端會(huì)對(duì)兩路流數(shù)據(jù)進(jìn)行合成,并對(duì)合成后的流數(shù)據(jù)進(jìn)行展示。
當(dāng)前客戶端具有廣播流數(shù)據(jù)權(quán)限后,可以對(duì)數(shù)據(jù)進(jìn)行單播或廣播,為使傳輸節(jié)點(diǎn)確定當(dāng)前客戶端傳送的數(shù)據(jù)所需的傳輸方式,可以讓當(dāng)前客戶端傳輸?shù)牡诙鲾?shù)據(jù)攜帶廣播傳輸方式的第二標(biāo)識(shí),以供各目標(biāo)傳輸節(jié)點(diǎn)識(shí)別,并根據(jù)該第二標(biāo)識(shí)對(duì)第二流數(shù)據(jù)進(jìn)行廣播,最終將第二流數(shù)據(jù)推送至第一客戶端以及至少一個(gè)第二客戶端。
在視頻直播場景中,第一客戶端可以為直播間內(nèi)的主播端,第二客戶端可以為直播間內(nèi)的其他嘉賓端或普通用戶端。普通用戶可以向主播發(fā)送廣播流數(shù)據(jù)權(quán)限的申請(qǐng)請(qǐng)求即發(fā)送連麥請(qǐng)求,申請(qǐng)請(qǐng)求被批準(zhǔn)后,普通用戶成為具有廣播流數(shù)據(jù)權(quán)限的嘉賓。嘉賓端廣播直播流數(shù)據(jù)時(shí),可以將直播流數(shù)據(jù)推送至與當(dāng)前嘉賓直接連接的目標(biāo)傳輸節(jié)點(diǎn),目標(biāo)傳輸節(jié)點(diǎn)位于當(dāng)前嘉賓與主播的傳輸路徑上,從直接連接的目標(biāo)傳輸節(jié)點(diǎn)起,經(jīng)過其他目標(biāo)傳輸節(jié)點(diǎn)和關(guān)聯(lián)傳輸節(jié)點(diǎn),最終將當(dāng)前嘉賓端上傳的直播流數(shù)據(jù)推送至主播端、其他嘉賓端和普通用戶端。
如果主播端和嘉賓端同時(shí)上傳視頻流數(shù)據(jù),則客戶端會(huì)對(duì)接收的兩路視頻流數(shù)據(jù)進(jìn)行處理,最終將兩部分視頻圖像同時(shí)顯示在客戶端界面,例如以畫中畫形式一起顯示。
通過上述分析可知,本發(fā)明實(shí)施例中,使用用一傳輸路徑對(duì)第一客戶端的第一流數(shù)據(jù)和其他客戶端的第二流數(shù)據(jù)進(jìn)行轉(zhuǎn)發(fā),網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)未發(fā)生變化,省去了傳統(tǒng)方法中第二流數(shù)據(jù)的新傳輸路徑的建立,節(jié)省了路徑建立時(shí)間,保證了流數(shù)據(jù)傳輸?shù)膶?shí)時(shí)性。相應(yīng)地本發(fā)明實(shí)施例僅需使用一套系統(tǒng)控制第一客戶端的流數(shù)據(jù)轉(zhuǎn)發(fā)以及第二客戶端的流數(shù)據(jù)轉(zhuǎn)發(fā),因此降低了系統(tǒng)開銷。
依據(jù)本發(fā)明實(shí)施例,按照第一客戶端傳輸?shù)谝涣鲾?shù)據(jù)時(shí)的傳輸路徑,向第一客戶端發(fā)送特殊權(quán)限的申請(qǐng)請(qǐng)求,由于申請(qǐng)請(qǐng)求攜帶預(yù)覽信息,因此使用第一客戶端的用戶可以對(duì)預(yù)覽信息進(jìn)行查看,并根據(jù)查看結(jié)果對(duì)申請(qǐng)請(qǐng)求做出判斷,從而提高了用戶體驗(yàn),同時(shí)提高了申請(qǐng)請(qǐng)求的判斷結(jié)果的準(zhǔn)確性。同時(shí),本發(fā)明實(shí)施例使用同一傳輸路徑傳輸流數(shù)據(jù)和信令,省去了傳統(tǒng)方法中對(duì)流數(shù)據(jù)和信令的不同傳輸路徑的建立,節(jié)省了路徑建立。
本發(fā)明實(shí)施例利用目標(biāo)傳輸節(jié)點(diǎn)及其關(guān)聯(lián)傳輸節(jié)點(diǎn)對(duì)流數(shù)據(jù)進(jìn)行推送,當(dāng)關(guān)聯(lián)傳輸節(jié)點(diǎn)具有多個(gè)層級(jí)時(shí),按層級(jí)對(duì)流數(shù)據(jù)進(jìn)行逐級(jí)推送,最終將流數(shù)據(jù)推送至接入傳輸節(jié)點(diǎn)集群的多個(gè)客戶端,實(shí)現(xiàn)流數(shù)據(jù)的廣播。
參照?qǐng)D4,示出了根據(jù)本發(fā)明實(shí)施例四的一種流數(shù)據(jù)的傳輸方法的步驟流程示意圖,具體可以包括如下步驟:
步驟401、按照傳輸路徑將第一流數(shù)據(jù)從第一客戶端傳送至第三客戶端。
本發(fā)明實(shí)施例中,系統(tǒng)包括多個(gè)客戶端,客戶端與客戶端之間通過網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)中的傳輸路徑連接,基于多條傳輸路徑使得某一客戶端與其他多個(gè)客戶端連接。
第一客戶端和第三客戶端之間建立有傳輸路徑,第一客戶端向第三客戶端發(fā)送第一流數(shù)據(jù)時(shí),第一流數(shù)據(jù)可以按照預(yù)先建立的傳輸路徑傳輸。
步驟402、接收第三客戶端對(duì)特殊權(quán)限的申請(qǐng)請(qǐng)求,并按照傳輸路徑轉(zhuǎn)發(fā)至第一客戶端,申請(qǐng)請(qǐng)求攜帶預(yù)覽信息。
本發(fā)明實(shí)施例中,特殊權(quán)限為多種形式,例如廣播流數(shù)據(jù)權(quán)限,申請(qǐng)請(qǐng)求由第一客戶端用戶審批。如果某一客戶端向第一客戶端發(fā)送特殊權(quán)限的申請(qǐng)請(qǐng)求,則只有在該申請(qǐng)請(qǐng)求被批準(zhǔn)后,該客戶端才具特殊權(quán)限。
為第一客戶端用戶提供審批依據(jù),本發(fā)明實(shí)施例限定第三客戶端在發(fā)送特殊權(quán)限的申請(qǐng)請(qǐng)求時(shí),在申請(qǐng)請(qǐng)求中攜帶預(yù)覽信息,預(yù)覽信息可以指示發(fā)送申請(qǐng)請(qǐng)求的客戶端用戶的相關(guān)信息。預(yù)覽信息可以為多種形式,如視頻數(shù)據(jù)、音頻數(shù)據(jù)、文字?jǐn)?shù)據(jù)、圖像數(shù)據(jù)和其他形式數(shù)據(jù)中的一種或多種,當(dāng)預(yù)覽信息為音視頻數(shù)據(jù)時(shí),預(yù)覽信息可以是現(xiàn)場錄制的一段直播流數(shù)據(jù),也可以是預(yù)先錄制的一段音視頻數(shù)據(jù)。
步驟403、將第一客戶端根據(jù)預(yù)覽信息反饋的批準(zhǔn)通知轉(zhuǎn)發(fā)至所述第三客戶端。
第一客戶端在接收到特殊權(quán)限的申請(qǐng)請(qǐng)求后,可以在客戶端界面對(duì)申請(qǐng)請(qǐng)求攜帶的預(yù)覽信息進(jìn)行展示,以預(yù)覽信息為審批依據(jù)對(duì)申請(qǐng)請(qǐng)求進(jìn)行審批,當(dāng)?shù)谝豢蛻舳私邮盏接脩舻呐鷾?zhǔn)指示后,會(huì)生成批準(zhǔn)通知,并將生成的批準(zhǔn)通知反饋至第三客戶端。由于預(yù)覽信息為申請(qǐng)請(qǐng)求的審批提供了依據(jù),因此在申請(qǐng)請(qǐng)求中攜帶預(yù)覽信息提高了審批者的體驗(yàn)效果,使得審批結(jié)果更加準(zhǔn)確。
本發(fā)明實(shí)施例中,優(yōu)選地,所述傳輸路徑經(jīng)過的各目標(biāo)傳輸節(jié)點(diǎn)記錄有其上行目標(biāo)傳輸節(jié)點(diǎn),所述按照傳輸路徑將第一流數(shù)據(jù)從第一客戶端傳送至第三客戶端包括:查找傳輸路徑的最后一個(gè)目標(biāo)傳輸節(jié)點(diǎn)的上行傳輸節(jié)點(diǎn),并將所述申請(qǐng)請(qǐng)求傳輸至所查找的上行目標(biāo)傳輸節(jié)點(diǎn);由所述上行目標(biāo)傳輸節(jié)點(diǎn)將所述申請(qǐng)請(qǐng)求傳輸至其上行目標(biāo)傳輸節(jié)點(diǎn),直至將所述申請(qǐng)請(qǐng)求傳輸至所述第一客戶端。
第一客戶端與第三客戶端的傳輸路徑的路徑方向?yàn)榈谝豢蛻舳酥恋谌蛻舳?,傳輸路徑流?jīng)的第一個(gè)目標(biāo)傳輸節(jié)點(diǎn)與第一客戶端連接,傳輸路徑流經(jīng)的最后一個(gè)目標(biāo)傳輸節(jié)點(diǎn)與第三客戶端連接。
第三客戶端向第一客戶端發(fā)送申請(qǐng)請(qǐng)求時(shí),第三客戶端將申請(qǐng)請(qǐng)求發(fā)送至與其直接連接的目標(biāo)傳輸節(jié)點(diǎn),可以通過查找當(dāng)前目標(biāo)傳輸節(jié)點(diǎn)的上行目標(biāo)傳輸節(jié)點(diǎn)以及將申請(qǐng)請(qǐng)求推送至該上行傳輸節(jié)點(diǎn)的方式,對(duì)申請(qǐng)請(qǐng)求進(jìn)行逐步傳輸,最終將申請(qǐng)請(qǐng)求推送至第一客戶端。
在網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)中,對(duì)于某一傳輸路徑中相鄰的兩個(gè)傳輸節(jié)點(diǎn),按照第一客戶端至其他客戶端的傳輸方向,限定位于傳輸方向起始端的傳輸節(jié)點(diǎn)是位于傳輸方向末端的傳輸節(jié)點(diǎn)的上行傳輸節(jié)點(diǎn)。例如,第一客戶端到第二客戶端的傳輸路徑為節(jié)點(diǎn)1—節(jié)點(diǎn)2—節(jié)點(diǎn)3,第一客戶端與節(jié)點(diǎn)1直接連接,第二客戶端與節(jié)點(diǎn)3直接連接,限定節(jié)點(diǎn)1為節(jié)點(diǎn)2的上行傳輸節(jié)點(diǎn),節(jié)點(diǎn)2為節(jié)點(diǎn)1的下行傳輸節(jié)點(diǎn),使用同樣方法對(duì)其他傳輸節(jié)點(diǎn)進(jìn)行限定。
可以通過多種方式查找當(dāng)前目標(biāo)傳輸節(jié)點(diǎn)的上行目標(biāo)傳輸節(jié)點(diǎn)。例如,在網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)構(gòu)建完成時(shí),可以在各傳輸節(jié)點(diǎn)記錄在不同傳輸路徑中該傳輸節(jié)點(diǎn)的上行傳輸節(jié)點(diǎn),具體可以記錄傳輸路徑連接的客戶端的端標(biāo)識(shí)與上行傳輸節(jié)點(diǎn)的對(duì)應(yīng)關(guān)系,第二流數(shù)據(jù)可以攜帶第二客戶端的客戶端端標(biāo)識(shí),傳輸節(jié)點(diǎn)接收到第二流數(shù)據(jù)后可以根據(jù)其攜帶的客戶端標(biāo)識(shí)查找對(duì)應(yīng)的上行傳輸節(jié)點(diǎn)。
如路徑1為第一客戶端-節(jié)點(diǎn)1-節(jié)點(diǎn)2-節(jié)點(diǎn)3-第三客戶端,路徑2為第一客戶端-節(jié)點(diǎn)1-節(jié)點(diǎn)4-節(jié)點(diǎn)3-第四客戶端,在節(jié)點(diǎn)3記錄第三客戶端的端標(biāo)識(shí)與節(jié)點(diǎn)2的對(duì)應(yīng)關(guān)系以及第四客戶端的端標(biāo)識(shí)與節(jié)點(diǎn)4的對(duì)應(yīng)關(guān)系,第三客戶端傳輸?shù)牡诙鲾?shù)據(jù)攜帶第三客戶端的端標(biāo)識(shí)。傳輸節(jié)點(diǎn)可以根據(jù)傳輸?shù)牡诙鲾?shù)據(jù)攜帶的第三客戶端的端標(biāo)識(shí),以及存儲(chǔ)的端標(biāo)識(shí)與上行傳輸節(jié)點(diǎn)的對(duì)應(yīng)關(guān)系,確定對(duì)應(yīng)的上行傳輸節(jié)點(diǎn)為節(jié)點(diǎn)2。
又例如,第一客戶端傳輸?shù)牡谝涣鲾?shù)據(jù)可以攜帶傳輸路徑經(jīng)過的目標(biāo)傳輸節(jié)點(diǎn)的集合,集合中多個(gè)目標(biāo)傳輸節(jié)點(diǎn)按照流經(jīng)順序排列,第三客戶端接收到第一流數(shù)據(jù)后會(huì)提取傳輸節(jié)點(diǎn)的集合,使其發(fā)送的第二流數(shù)據(jù)攜帶該集合,傳輸節(jié)點(diǎn)接收到第二流數(shù)據(jù)后,會(huì)根據(jù)集合中多個(gè)目標(biāo)傳輸節(jié)點(diǎn)的排列順序,確定當(dāng)前目標(biāo)傳輸節(jié)點(diǎn)的上行目標(biāo)傳輸節(jié)點(diǎn)。
依據(jù)本發(fā)明實(shí)施例,按照第一客戶端傳輸?shù)谝涣鲾?shù)據(jù)時(shí)的傳輸路徑,向第一客戶端發(fā)送特殊權(quán)限的申請(qǐng)請(qǐng)求,由于申請(qǐng)請(qǐng)求攜帶預(yù)覽信息,因此使用第一客戶端的用戶可以對(duì)預(yù)覽信息進(jìn)行查看,并根據(jù)查看結(jié)果對(duì)申請(qǐng)請(qǐng)求做出判斷,從而提高了用戶體驗(yàn),同時(shí)提高了申請(qǐng)請(qǐng)求的判斷結(jié)果的準(zhǔn)確性。同時(shí),本發(fā)明實(shí)施例使用同一傳輸路徑傳輸流數(shù)據(jù)和信令,省去了傳統(tǒng)方法中對(duì)流數(shù)據(jù)和信令的不同傳輸路徑的建立,節(jié)省了路徑建立。
參照?qǐng)D5,示出了根據(jù)本發(fā)明實(shí)施例五的一種流數(shù)據(jù)的傳輸方法的步驟流程示意圖,具體可以包括如下步驟:
步驟501、按照傳輸路徑將第一流數(shù)據(jù)從第一客戶端傳送至第三客戶端。
步驟502、接收第三客戶端對(duì)特殊權(quán)限的申請(qǐng)請(qǐng)求,并按照傳輸路徑將申請(qǐng)請(qǐng)求轉(zhuǎn)發(fā)至第一客戶端,申請(qǐng)請(qǐng)求攜帶預(yù)覽信息。
本發(fā)明實(shí)施例中,特殊權(quán)限為廣播流數(shù)據(jù)權(quán)限。
步驟503、將第一客戶端根據(jù)預(yù)覽信息反饋的批準(zhǔn)通知轉(zhuǎn)發(fā)至第三客戶端。
步驟504、接收第三客戶端向目標(biāo)傳輸節(jié)點(diǎn)傳輸?shù)牡诙鲾?shù)據(jù),傳輸路徑經(jīng)過多個(gè)目標(biāo)傳輸節(jié)點(diǎn),至少一個(gè)目標(biāo)傳輸節(jié)點(diǎn)具有關(guān)聯(lián)傳輸節(jié)點(diǎn)。
在網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)中,存在傳輸路徑與傳輸路徑交匯,兩條傳輸路徑具有共同的傳輸節(jié)點(diǎn)的情況,如傳輸路徑1與傳輸路徑2交匯于傳輸節(jié)點(diǎn)1,這時(shí)相對(duì)于傳輸路徑1,傳輸路徑2上除傳輸節(jié)點(diǎn)1外的其他傳輸節(jié)點(diǎn)稱為傳輸路徑1上的傳輸節(jié)點(diǎn)1的關(guān)聯(lián)傳輸節(jié)點(diǎn)。關(guān)聯(lián)傳輸節(jié)點(diǎn)可以是與某一傳輸節(jié)點(diǎn)直接連接的傳輸節(jié)點(diǎn),也可以是與某一傳輸節(jié)點(diǎn)直接連接和間接連接的多個(gè)傳輸節(jié)點(diǎn)。
所述接收第三客戶端向目標(biāo)傳輸節(jié)點(diǎn)傳輸?shù)牡诙鲾?shù)據(jù)的步驟具體可以包括:接收第三客戶端向直接連接的目標(biāo)傳輸節(jié)點(diǎn)傳輸?shù)牡诙鲾?shù)據(jù),按照傳輸路徑的反向順序,將第二流數(shù)據(jù)順次推送到其他目標(biāo)傳輸節(jié)點(diǎn)。
步驟505、將第二流數(shù)據(jù)從各目標(biāo)傳輸節(jié)點(diǎn),經(jīng)關(guān)聯(lián)傳輸節(jié)點(diǎn)推送至第一客戶端以及至少一個(gè)第二客戶端。
各目標(biāo)傳輸節(jié)點(diǎn)接收到第二流數(shù)據(jù)后,會(huì)將第二流數(shù)據(jù)推送至其關(guān)聯(lián)傳輸節(jié)點(diǎn),最終將第二流數(shù)據(jù)推送至第一客戶端以及第二客戶端。
在網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu),部分傳輸節(jié)點(diǎn)存在關(guān)聯(lián)傳輸節(jié)點(diǎn),關(guān)聯(lián)傳輸節(jié)點(diǎn)可以是直接連接的傳輸節(jié)點(diǎn)也可以是間接連接的傳輸節(jié)點(diǎn)??梢愿鶕?jù)節(jié)點(diǎn)連接順序,將關(guān)聯(lián)傳輸節(jié)點(diǎn)分為多個(gè)等級(jí),如一級(jí)關(guān)聯(lián)傳輸節(jié)點(diǎn)、二級(jí)關(guān)聯(lián)傳輸節(jié)點(diǎn)、三級(jí)關(guān)聯(lián)傳輸節(jié)點(diǎn)等,其中一級(jí)關(guān)聯(lián)傳輸節(jié)點(diǎn)為與某一傳輸節(jié)點(diǎn)直接連接的傳輸節(jié)點(diǎn),二級(jí)關(guān)聯(lián)傳輸節(jié)點(diǎn)為與一級(jí)關(guān)聯(lián)傳輸節(jié)點(diǎn)直接連接的傳輸節(jié)點(diǎn),其他級(jí)別的關(guān)聯(lián)傳輸節(jié)點(diǎn)以此類推。第一客戶端與第三客戶端的傳輸路徑經(jīng)過的目標(biāo)傳輸節(jié)點(diǎn)可以包括多種連接,如目標(biāo)傳輸節(jié)點(diǎn)可以與其他目標(biāo)傳輸節(jié)點(diǎn)、一級(jí)關(guān)聯(lián)傳輸節(jié)點(diǎn)、第一客戶端或第二客戶端直接連接。
當(dāng)關(guān)聯(lián)傳輸節(jié)點(diǎn)存在多級(jí)設(shè)置時(shí),可以通過以下方法執(zhí)行本步驟:首先,將第二流數(shù)據(jù)推送至與目標(biāo)傳輸節(jié)點(diǎn)直接連接的一級(jí)關(guān)聯(lián)傳輸節(jié)點(diǎn)或第一客戶端或第二客戶端。
建立第一客戶端和第三客戶端的傳輸路徑時(shí),可以在傳輸路徑經(jīng)過的目標(biāo)傳輸節(jié)點(diǎn)本地記錄其在該傳輸路徑中的下行目標(biāo)傳輸節(jié)點(diǎn)。這時(shí)在目標(biāo)傳輸節(jié)點(diǎn)接收到第三客戶端傳輸?shù)牡诙鲾?shù)據(jù)之后,在將第二流數(shù)據(jù)推送至與目標(biāo)傳輸節(jié)點(diǎn)直接連接的一級(jí)關(guān)聯(lián)傳輸節(jié)點(diǎn)或第一客戶端或第三客戶端之前,本發(fā)明實(shí)施例所述方法還可以包括:查找目標(biāo)傳輸節(jié)點(diǎn)在該傳輸路徑中的下行目標(biāo)傳輸節(jié)點(diǎn),從與目標(biāo)傳輸節(jié)點(diǎn)直接連接的一級(jí)關(guān)聯(lián)傳輸節(jié)點(diǎn)中,去除所查找的下行目標(biāo)傳輸節(jié)點(diǎn)。完成上述去除步驟后,目標(biāo)傳輸節(jié)點(diǎn)將第二流數(shù)據(jù)推送至除查找到的下行目標(biāo)傳輸節(jié)點(diǎn)外的其他一級(jí)關(guān)聯(lián)傳輸節(jié)點(diǎn)。
可以事先在各傳輸節(jié)點(diǎn)本地記錄該傳輸節(jié)點(diǎn)的所有一級(jí)關(guān)聯(lián)傳輸節(jié)點(diǎn),即上行目標(biāo)傳輸節(jié)點(diǎn)和所有下行目標(biāo)傳輸節(jié)點(diǎn),具體可以記錄所有一級(jí)關(guān)聯(lián)傳輸節(jié)點(diǎn)的節(jié)點(diǎn)標(biāo)識(shí)。完成對(duì)目標(biāo)傳輸節(jié)點(diǎn)在該傳輸路徑中的下行目標(biāo)傳輸節(jié)點(diǎn)的查找后,可以從目標(biāo)傳輸節(jié)點(diǎn)本地提取與該目標(biāo)傳輸節(jié)點(diǎn)直接連接的一級(jí)關(guān)聯(lián)傳輸節(jié)點(diǎn),之后從提取的所有一級(jí)關(guān)聯(lián)傳輸節(jié)點(diǎn)中去除所查找的下行目標(biāo)傳輸節(jié)點(diǎn)。
當(dāng)?shù)谝豢蛻舳伺c不同客戶端的多條傳輸路徑存在交叉或交匯時(shí),交叉或交匯處的傳輸節(jié)點(diǎn)本地記錄有針對(duì)多條傳輸路徑的多個(gè)下行目標(biāo)傳輸節(jié)點(diǎn)。為查找出針對(duì)某一傳輸路徑的下行目標(biāo)傳輸節(jié)點(diǎn),本發(fā)明實(shí)施例可以在使用某一傳輸路徑傳輸?shù)谝涣鲾?shù)據(jù)過程中,在第一流數(shù)據(jù)傳輸至某一目標(biāo)傳輸節(jié)點(diǎn)時(shí),將該目標(biāo)傳輸節(jié)點(diǎn)在該傳輸路徑中的下行目標(biāo)傳輸節(jié)點(diǎn)與第一流數(shù)據(jù)的流標(biāo)識(shí)對(duì)應(yīng)存儲(chǔ)在該目標(biāo)傳輸節(jié)點(diǎn)本地。
當(dāng)?shù)谝涣鲾?shù)據(jù)傳輸至第三客戶端后,第三客戶端發(fā)布第二流數(shù)據(jù),第二流數(shù)據(jù)攜帶有第一流數(shù)據(jù)的流標(biāo)識(shí),當(dāng)?shù)诙鲾?shù)據(jù)傳送至目標(biāo)傳輸節(jié)點(diǎn)后,目標(biāo)傳輸節(jié)點(diǎn)可以根據(jù)第一流數(shù)據(jù)的流標(biāo)識(shí),提取對(duì)應(yīng)存儲(chǔ)的下行目標(biāo)傳輸節(jié)點(diǎn)。具體地,目標(biāo)傳輸節(jié)點(diǎn)可以根據(jù)第二流數(shù)據(jù)攜帶的第一流數(shù)據(jù)的流標(biāo)識(shí),以及本地存儲(chǔ)的第一流標(biāo)識(shí)與下行目標(biāo)傳輸節(jié)點(diǎn)的對(duì)應(yīng)關(guān)系,提取與第一流標(biāo)識(shí)對(duì)應(yīng)的下行目標(biāo)傳輸節(jié)點(diǎn)。
當(dāng)?shù)谝涣鲾?shù)據(jù)傳輸至某一目標(biāo)傳輸節(jié)點(diǎn)時(shí),可以通過多種方式確定該目標(biāo)傳輸節(jié)點(diǎn)在該傳輸路徑中的下行傳輸節(jié)點(diǎn),例如,第一流數(shù)據(jù)攜帶該傳輸路徑經(jīng)過的所有目標(biāo)傳輸節(jié)點(diǎn)的節(jié)點(diǎn)標(biāo)識(shí),多個(gè)目標(biāo)傳輸節(jié)點(diǎn)的節(jié)點(diǎn)標(biāo)識(shí)按照第一客戶端至第三客戶端的流經(jīng)方向有序排列,當(dāng)?shù)谝涣鲾?shù)據(jù)傳輸至某一目標(biāo)傳輸節(jié)點(diǎn)后,可以獲取當(dāng)前目標(biāo)傳輸節(jié)點(diǎn)的節(jié)點(diǎn)標(biāo)識(shí),根據(jù)第一流數(shù)據(jù)攜帶的節(jié)點(diǎn)標(biāo)識(shí)序列,確定待傳輸?shù)南乱荒繕?biāo)傳輸節(jié)點(diǎn)為下行目標(biāo)傳輸節(jié)點(diǎn)。
還可以通過以下方法查找目標(biāo)傳輸節(jié)點(diǎn)在該傳輸路徑中的下行目標(biāo)傳輸節(jié)點(diǎn),方法具體包括:限定當(dāng)?shù)谌蛻舳藗鬏數(shù)牡诙鲾?shù)據(jù)傳輸至某一目標(biāo)傳輸節(jié)點(diǎn)時(shí),讓第二流數(shù)據(jù)攜帶該目標(biāo)傳輸節(jié)點(diǎn)的節(jié)點(diǎn)標(biāo)識(shí),當(dāng)?shù)诙鲾?shù)據(jù)傳輸至下一目標(biāo)傳輸節(jié)點(diǎn)時(shí),待下一目標(biāo)傳輸節(jié)點(diǎn)完成對(duì)第二流數(shù)據(jù)攜帶的節(jié)點(diǎn)標(biāo)識(shí)的提取后,對(duì)第二流數(shù)據(jù)攜帶的節(jié)點(diǎn)標(biāo)識(shí)做更改,更改成所述下一目標(biāo)傳輸節(jié)點(diǎn)的節(jié)點(diǎn)標(biāo)識(shí),按照上述方法傳輸?shù)诙鲾?shù)據(jù),當(dāng)?shù)诙鲾?shù)據(jù)傳輸至當(dāng)前目標(biāo)傳輸節(jié)點(diǎn)時(shí),可以通過提取第二流數(shù)據(jù)攜帶的節(jié)點(diǎn)標(biāo)識(shí)的方式,確定當(dāng)前目標(biāo)傳輸節(jié)點(diǎn)在該傳輸路徑中的下行目標(biāo)傳輸節(jié)點(diǎn)。
其次,在將第二流數(shù)據(jù)推送至與目標(biāo)傳輸節(jié)點(diǎn)連接的一級(jí)關(guān)聯(lián)傳輸節(jié)點(diǎn)或第一客戶端或第二客戶端之后,迭代執(zhí)行推送步驟,將第二流數(shù)據(jù)從接收到第二流數(shù)據(jù)的N級(jí)關(guān)聯(lián)傳輸節(jié)點(diǎn)推送至直接連接的N+1級(jí)關(guān)聯(lián)傳輸節(jié)點(diǎn)或第一客戶端或第二客戶端,直至推送至接入傳輸節(jié)點(diǎn)集群的第一客戶端和所有第二客戶端。
由于目標(biāo)傳輸節(jié)點(diǎn)的關(guān)聯(lián)傳輸節(jié)點(diǎn)可以包括直接連接和間接連接的多個(gè)傳輸節(jié)點(diǎn),多個(gè)傳輸節(jié)點(diǎn)可能存在多級(jí)別關(guān)聯(lián),因此在將第三客戶端傳輸?shù)牡诙鲾?shù)據(jù)推送至一級(jí)關(guān)聯(lián)傳輸節(jié)點(diǎn)后,循環(huán)執(zhí)行迭代步驟,將第二流數(shù)據(jù)推送至二級(jí)關(guān)聯(lián)傳輸節(jié)點(diǎn)、···、N級(jí)關(guān)聯(lián)傳輸節(jié)點(diǎn)、N+1級(jí)關(guān)聯(lián)傳輸節(jié)點(diǎn),直至推送至接入傳輸節(jié)點(diǎn)集群的第一客戶端和所有第二客戶端,從而完成對(duì)第三客戶端發(fā)布的第二流數(shù)據(jù)的廣播。因此本發(fā)明實(shí)施例利用目標(biāo)傳輸節(jié)點(diǎn)和關(guān)聯(lián)傳輸節(jié)點(diǎn),將流數(shù)據(jù)廣播至多個(gè)客戶端。
本發(fā)明實(shí)施例中,在將第二流數(shù)據(jù)從各目標(biāo)傳輸節(jié)點(diǎn)經(jīng)關(guān)聯(lián)傳輸節(jié)點(diǎn)推送至第一客戶端以及至少一個(gè)第二客戶端之前,所述方法還可以包括:判定第二流數(shù)據(jù)指向廣播傳輸方式。
由于具有廣播流數(shù)據(jù)權(quán)限的第三客戶端可以向第一客戶端單播流數(shù)據(jù)至第一客戶端,也可廣播流數(shù)據(jù)至第一客戶端和第二客戶端,因此目標(biāo)傳輸節(jié)點(diǎn)在接收到第三客戶端發(fā)布的第二流數(shù)據(jù)后,需要對(duì)第二流數(shù)據(jù)的傳輸方式進(jìn)行判斷,如果判斷第二流數(shù)據(jù)指向廣播傳輸方式,則對(duì)其進(jìn)行廣播傳輸;如果判定第二流數(shù)據(jù)不指向廣播傳輸方式,即確定第二流數(shù)據(jù)為單播,則將第二流數(shù)據(jù)從各目標(biāo)傳輸節(jié)點(diǎn)推送至第一客戶端。
可以通過多種方法判定第二流數(shù)據(jù)指向廣播傳輸方式,例如可以通過確定第二流數(shù)據(jù)的數(shù)據(jù)協(xié)議頭中包括廣播傳輸方式的標(biāo)識(shí)的方法判定。傳播方式的標(biāo)識(shí)可以為多種形式,例如數(shù)字、字母、文字、圖形等。可以預(yù)先在用戶客戶端設(shè)定指示不同傳輸方式的不同標(biāo)識(shí),例如針對(duì)廣播傳輸方式設(shè)置標(biāo)識(shí)“a”,針對(duì)單播傳輸方式設(shè)置標(biāo)識(shí)“b”,并且限定在客戶端上傳流數(shù)據(jù)時(shí),在流數(shù)據(jù)的數(shù)據(jù)協(xié)議頭中添加數(shù)據(jù)傳輸方式對(duì)應(yīng)的標(biāo)識(shí);或者預(yù)先為不同客戶端設(shè)置端標(biāo)識(shí),如設(shè)置第一客戶端的端標(biāo)識(shí)為“0”,除第一客戶端外的其他客戶端的端標(biāo)識(shí)均為“1”,端標(biāo)識(shí)“1”指示廣播傳輸方式,并且限定在客戶端上傳流數(shù)據(jù)時(shí),在流數(shù)據(jù)的數(shù)據(jù)協(xié)議頭中添加接收流數(shù)據(jù)的目的客戶端的端標(biāo)識(shí)。
以視頻直播場景為例,可以預(yù)先設(shè)定嘉賓端的端標(biāo)識(shí)為正整數(shù),設(shè)定指示廣播傳輸方式的目標(biāo)標(biāo)識(shí)為“0xFFFF”,將嘉賓端及其對(duì)應(yīng)的端標(biāo)識(shí)以及指示廣播傳輸方式的目標(biāo)標(biāo)識(shí)存儲(chǔ)在各個(gè)傳輸節(jié)點(diǎn)上。如果傳輸節(jié)點(diǎn)識(shí)別到指示廣播傳輸方式的目標(biāo)標(biāo)識(shí)“0xFFFF”,則確定第二流數(shù)據(jù)的傳播方式為廣播,識(shí)別到嘉賓標(biāo)識(shí)后確定該客戶端具有廣播流數(shù)據(jù)的權(quán)限。
還可以通過確定第二流數(shù)據(jù)發(fā)送至多個(gè)目的客戶端的方法,判定第二流數(shù)據(jù)指向廣播傳輸方式。
預(yù)對(duì)第二流數(shù)據(jù)進(jìn)行廣播傳輸時(shí),第三客戶端對(duì)第二流數(shù)據(jù)進(jìn)行相應(yīng)處理,使發(fā)布的第二流數(shù)據(jù)攜帶多個(gè)目的客戶端的端標(biāo)識(shí)、多個(gè)目的客戶端的數(shù)目或指示目的客戶端數(shù)目為多個(gè)的標(biāo)識(shí)等信息。相應(yīng)地,目標(biāo)傳輸節(jié)點(diǎn)識(shí)別到上述信息后,確定第二流數(shù)據(jù)為廣播傳輸方式。
本發(fā)明實(shí)施例中,優(yōu)選地,在判定第二流數(shù)據(jù)指向廣播傳輸方式后,所述方法還可以包括:判定第三客戶端具有廣播權(quán)限。
可以通過多種方式判定第二客戶端具有廣播權(quán)限,例如可以查找具備廣播權(quán)限的特征客戶端集合,并確定第二客戶端存在該特征客戶端集合中。
特征客戶端集合為具有廣播權(quán)限的客戶端的集合,特征客戶端集合存儲(chǔ)在各傳輸節(jié)點(diǎn)中。如果確定第二客戶端在傳輸節(jié)點(diǎn)本地存儲(chǔ)的特征客戶端集合內(nèi),則判定第二客戶端具有廣播權(quán)限。
依據(jù)本發(fā)明實(shí)施例,按照第一客戶端傳輸?shù)谝涣鲾?shù)據(jù)時(shí)的傳輸路徑,向第一客戶端發(fā)送特殊權(quán)限的申請(qǐng)請(qǐng)求,由于申請(qǐng)請(qǐng)求攜帶預(yù)覽信息,因此使用第一客戶端的用戶可以對(duì)預(yù)覽信息進(jìn)行查看,并根據(jù)查看結(jié)果對(duì)申請(qǐng)請(qǐng)求做出判斷,從而提高了用戶體驗(yàn),同時(shí)提高了申請(qǐng)請(qǐng)求的判斷結(jié)果的準(zhǔn)確性。同時(shí),本發(fā)明實(shí)施例使用同一傳輸路徑傳輸流數(shù)據(jù)和信令,省去了傳統(tǒng)方法中對(duì)流數(shù)據(jù)和信令的不同傳輸路徑的建立,節(jié)省了路徑建立。
本發(fā)明實(shí)施例利用目標(biāo)傳輸節(jié)點(diǎn)及其關(guān)聯(lián)傳輸節(jié)點(diǎn)對(duì)流數(shù)據(jù)進(jìn)行推送,當(dāng)關(guān)聯(lián)傳輸節(jié)點(diǎn)具有多個(gè)層級(jí)時(shí),按層級(jí)對(duì)流數(shù)據(jù)進(jìn)行逐級(jí)推送,最終將流數(shù)據(jù)推送至接入傳輸節(jié)點(diǎn)集群的多個(gè)客戶端,實(shí)現(xiàn)流數(shù)據(jù)的廣播。
圖6示出了根據(jù)本發(fā)明實(shí)施例六的一種流數(shù)據(jù)的傳輸裝置的結(jié)構(gòu)框圖。圖6中的流數(shù)據(jù)的傳輸裝置包括:
第一流數(shù)據(jù)接收模塊601,用于接收從第一客戶端按照傳輸路徑傳輸?shù)牡谝涣鲾?shù)據(jù)。
申請(qǐng)請(qǐng)求發(fā)送模塊602,用于按照所述傳輸路徑向所述第一客戶端發(fā)送特殊權(quán)限的申請(qǐng)請(qǐng)求,所述申請(qǐng)請(qǐng)求攜帶預(yù)覽信息。
批準(zhǔn)通知接收模塊603,用于接收所述第一客戶端根據(jù)所述預(yù)覽信息反饋的批準(zhǔn)通知。
依據(jù)本發(fā)明實(shí)施例,按照第一客戶端傳輸?shù)谝涣鲾?shù)據(jù)時(shí)的傳輸路徑,向第一客戶端發(fā)送特殊權(quán)限的申請(qǐng)請(qǐng)求,由于申請(qǐng)請(qǐng)求攜帶預(yù)覽信息,因此使用第一客戶端的用戶可以對(duì)預(yù)覽信息進(jìn)行查看,并根據(jù)查看結(jié)果對(duì)申請(qǐng)請(qǐng)求做出判斷,從而提高了用戶體驗(yàn),同時(shí)提高了申請(qǐng)請(qǐng)求的判斷結(jié)果的準(zhǔn)確性。同時(shí),本發(fā)明實(shí)施例使用同一傳輸路徑傳輸流數(shù)據(jù)和信令,省去了傳統(tǒng)方法中對(duì)流數(shù)據(jù)和信令的不同傳輸路徑的建立,節(jié)省了路徑建立。
圖7示出了根據(jù)本發(fā)明實(shí)施例七的一種流數(shù)據(jù)的傳輸裝置的結(jié)構(gòu)框圖。圖7中的流數(shù)據(jù)的傳輸裝置包括:
第一流數(shù)據(jù)接收模塊701,用于接收從第一客戶端按照傳輸路徑傳輸?shù)牡谝涣鲾?shù)據(jù)。
申請(qǐng)請(qǐng)求發(fā)送模塊702,用于按照所述傳輸路徑向所述第一客戶端發(fā)送特殊權(quán)限的申請(qǐng)請(qǐng)求,所述申請(qǐng)請(qǐng)求攜帶預(yù)覽信息。
批準(zhǔn)通知接收模塊703,用于接收所述第一客戶端根據(jù)所述預(yù)覽信息反饋的批準(zhǔn)通知。
客戶端信息接收模塊704,用于接收所述第一客戶端下發(fā)的具備特殊權(quán)限的特殊客戶端的客戶端信息,并在當(dāng)前客戶端進(jìn)行展示,所述客戶端信息包括特殊客戶端的個(gè)數(shù)、端標(biāo)識(shí)、端狀態(tài)、特殊客戶端的數(shù)量上限中至少一種。
本發(fā)明實(shí)施例中,優(yōu)選地,所述裝置還包括:
觸發(fā)操作接收模塊,用于所述預(yù)覽信息為音視頻數(shù)據(jù),在所述按照所述傳輸路徑向所述第一客戶端發(fā)送特殊權(quán)限的申請(qǐng)請(qǐng)求之前,接收用戶對(duì)特殊權(quán)限的觸發(fā)操作;
音視頻數(shù)據(jù)獲取模塊,用于調(diào)用音視頻采集接口采集所述用戶的音視頻數(shù)據(jù),或從設(shè)定位置提取預(yù)先采集的所述用戶的音視頻數(shù)據(jù)。
本發(fā)明實(shí)施例中,優(yōu)選地,所述預(yù)覽信息攜帶單播傳輸類型的第一標(biāo)識(shí),以供傳輸節(jié)點(diǎn)根據(jù)該第一標(biāo)識(shí)將所述申請(qǐng)請(qǐng)求發(fā)送至所述第一客戶端。
本發(fā)明實(shí)施例中,優(yōu)選地,所述裝置還包括:
客戶端信息接收模塊,用于接收所述第一客戶端下發(fā)的具備特殊權(quán)限的特殊客戶端的客戶端信息,并在當(dāng)前客戶端進(jìn)行展示,所述客戶端信息包括特殊客戶端的個(gè)數(shù)、端標(biāo)識(shí)、端狀態(tài)、特殊客戶端的數(shù)量上限中至少一種。
本發(fā)明實(shí)施例中,優(yōu)選地,所述裝置還包括:
版本標(biāo)識(shí)提取模塊,用于在所述在當(dāng)前第一客戶端進(jìn)行展示之前,提取新下發(fā)的客戶端信息的版本標(biāo)識(shí),并與本地存儲(chǔ)的客戶端信息的版本標(biāo)識(shí)進(jìn)行比對(duì);
比對(duì)結(jié)果判定模塊,用于判定比對(duì)結(jié)果為不一致。
本發(fā)明實(shí)施例中,優(yōu)選地,所述申請(qǐng)請(qǐng)求發(fā)送模塊,具體用于將所述申請(qǐng)請(qǐng)求傳輸至與傳輸路徑的最后一個(gè)目標(biāo)傳輸節(jié)點(diǎn),由所述最后一個(gè)目標(biāo)傳輸節(jié)點(diǎn)將所述申請(qǐng)請(qǐng)求傳輸至其上行目標(biāo)傳輸節(jié)點(diǎn),直至將所述申請(qǐng)請(qǐng)求傳輸至所述第一客戶端,所述傳輸路徑經(jīng)過的各目標(biāo)傳輸節(jié)點(diǎn)記錄有其上行目標(biāo)傳輸節(jié)點(diǎn)。
本發(fā)明實(shí)施例中,優(yōu)選地,所述申請(qǐng)請(qǐng)求發(fā)送模塊,具體用于按照所述節(jié)點(diǎn)標(biāo)識(shí)的集合反向順次將所述申請(qǐng)請(qǐng)求經(jīng)至少一個(gè)中間目標(biāo)傳輸節(jié)點(diǎn)傳輸至所述第一客戶端,所述第一流數(shù)據(jù)攜帶傳輸過程中順次經(jīng)過的各目標(biāo)傳輸節(jié)點(diǎn)的節(jié)點(diǎn)標(biāo)識(shí)的集合。
依據(jù)本發(fā)明實(shí)施例,按照第一客戶端傳輸?shù)谝涣鲾?shù)據(jù)時(shí)的傳輸路徑,向第一客戶端發(fā)送特殊權(quán)限的申請(qǐng)請(qǐng)求,由于申請(qǐng)請(qǐng)求攜帶預(yù)覽信息,因此使用第一客戶端的用戶可以對(duì)預(yù)覽信息進(jìn)行查看,并根據(jù)查看結(jié)果對(duì)申請(qǐng)請(qǐng)求做出判斷,從而提高了用戶體驗(yàn),同時(shí)提高了申請(qǐng)請(qǐng)求的判斷結(jié)果的準(zhǔn)確性。同時(shí),本發(fā)明實(shí)施例使用同一傳輸路徑傳輸流數(shù)據(jù)和信令,省去了傳統(tǒng)方法中對(duì)流數(shù)據(jù)和信令的不同傳輸路徑的建立,節(jié)省了路徑建立。
圖8示出了根據(jù)本發(fā)明實(shí)施例八的一種流數(shù)據(jù)的傳輸裝置的結(jié)構(gòu)框圖。圖8中的流數(shù)據(jù)的傳輸裝置包括:
第一流數(shù)據(jù)接收模塊801,用于接收從第一客戶端按照傳輸路徑傳輸?shù)牡谝涣鲾?shù)據(jù)。
申請(qǐng)請(qǐng)求發(fā)送模塊802,用于按照所述傳輸路徑向所述第一客戶端發(fā)送特殊權(quán)限的申請(qǐng)請(qǐng)求,所述申請(qǐng)請(qǐng)求攜帶預(yù)覽信息。
批準(zhǔn)通知接收模塊803,用于接收所述第一客戶端根據(jù)所述預(yù)覽信息反饋的批準(zhǔn)通知。
第二流數(shù)據(jù)傳輸模塊804,用于向所述目標(biāo)傳輸節(jié)點(diǎn)傳輸?shù)诙鲾?shù)據(jù),以由各目標(biāo)傳輸節(jié)點(diǎn)將所述第二流數(shù)據(jù),經(jīng)所述關(guān)聯(lián)傳輸節(jié)點(diǎn)推送至所述第一客戶端以及至少一個(gè)第二客戶端,所述傳輸路徑經(jīng)過多個(gè)目標(biāo)傳輸節(jié)點(diǎn),至少一個(gè)目標(biāo)傳輸節(jié)點(diǎn)具有關(guān)聯(lián)傳輸節(jié)點(diǎn)。
本發(fā)明實(shí)施例中,優(yōu)選地,所述第二流數(shù)據(jù)攜帶廣播傳輸方式的第二標(biāo)識(shí),以供各目標(biāo)傳輸節(jié)點(diǎn)識(shí)別,并根據(jù)該第二標(biāo)識(shí)將所述第二流數(shù)據(jù)推送至所述第一客戶端以及至少一個(gè)第二客戶端。
依據(jù)本發(fā)明實(shí)施例,按照第一客戶端傳輸?shù)谝涣鲾?shù)據(jù)時(shí)的傳輸路徑,向第一客戶端發(fā)送特殊權(quán)限的申請(qǐng)請(qǐng)求,由于申請(qǐng)請(qǐng)求攜帶預(yù)覽信息,因此使用第一客戶端的用戶可以對(duì)預(yù)覽信息進(jìn)行查看,并根據(jù)查看結(jié)果對(duì)申請(qǐng)請(qǐng)求做出判斷,從而提高了用戶體驗(yàn),同時(shí)提高了申請(qǐng)請(qǐng)求的判斷結(jié)果的準(zhǔn)確性。同時(shí),本發(fā)明實(shí)施例使用同一傳輸路徑傳輸流數(shù)據(jù)和信令,省去了傳統(tǒng)方法中對(duì)流數(shù)據(jù)和信令的不同傳輸路徑的建立,節(jié)省了路徑建立。
本發(fā)明實(shí)施例利用目標(biāo)傳輸節(jié)點(diǎn)及其關(guān)聯(lián)傳輸節(jié)點(diǎn)對(duì)流數(shù)據(jù)進(jìn)行推送,當(dāng)關(guān)聯(lián)傳輸節(jié)點(diǎn)具有多個(gè)層級(jí)時(shí),按層級(jí)對(duì)流數(shù)據(jù)進(jìn)行逐級(jí)推送,最終將流數(shù)據(jù)推送至接入傳輸節(jié)點(diǎn)集群的多個(gè)客戶端,實(shí)現(xiàn)流數(shù)據(jù)的廣播。
圖9示出了根據(jù)本發(fā)明實(shí)施例九的一種流數(shù)據(jù)的傳輸裝置的結(jié)構(gòu)框圖。圖9中的流數(shù)據(jù)的傳輸裝置包括:
第一流數(shù)據(jù)傳輸模塊901,用于按照傳輸路徑將第一流數(shù)據(jù)從第一客戶端傳送至第三客戶端。
申請(qǐng)請(qǐng)求接收模塊902,用于接收所述第三客戶端對(duì)特殊權(quán)限的申請(qǐng)請(qǐng)求。
申請(qǐng)請(qǐng)求轉(zhuǎn)發(fā)模塊903,用于按照所述傳輸路徑將所述申請(qǐng)請(qǐng)求轉(zhuǎn)發(fā)至所述第一客戶端,所述申請(qǐng)請(qǐng)求攜帶預(yù)覽信息。
批準(zhǔn)通知轉(zhuǎn)發(fā)模塊904,用于將所述第一客戶端根據(jù)所述預(yù)覽信息反饋的批準(zhǔn)通知轉(zhuǎn)發(fā)至所述第三客戶端。
依據(jù)本發(fā)明實(shí)施例,按照第一客戶端傳輸?shù)谝涣鲾?shù)據(jù)時(shí)的傳輸路徑,向第一客戶端發(fā)送特殊權(quán)限的申請(qǐng)請(qǐng)求,由于申請(qǐng)請(qǐng)求攜帶預(yù)覽信息,因此使用第一客戶端的用戶可以對(duì)預(yù)覽信息進(jìn)行查看,并根據(jù)查看結(jié)果對(duì)申請(qǐng)請(qǐng)求做出判斷,從而提高了用戶體驗(yàn),同時(shí)提高了申請(qǐng)請(qǐng)求的判斷結(jié)果的準(zhǔn)確性。同時(shí),本發(fā)明實(shí)施例使用同一傳輸路徑傳輸流數(shù)據(jù)和信令,省去了傳統(tǒng)方法中對(duì)流數(shù)據(jù)和信令的不同傳輸路徑的建立,節(jié)省了路徑建立。
圖10示出了根據(jù)本發(fā)明實(shí)施例十的一種流數(shù)據(jù)的傳輸裝置的結(jié)構(gòu)框圖。圖10中的流數(shù)據(jù)的傳輸裝置包括:
第一流數(shù)據(jù)傳輸模塊1001,用于按照傳輸路徑將第一流數(shù)據(jù)從第一客戶端傳送至第三客戶端。
申請(qǐng)請(qǐng)求接收模塊1002,用于接收所述第三客戶端對(duì)特殊權(quán)限的申請(qǐng)請(qǐng)求。
申請(qǐng)請(qǐng)求轉(zhuǎn)發(fā)模塊1003,用于按照所述傳輸路徑將所述申請(qǐng)請(qǐng)求轉(zhuǎn)發(fā)至所述第一客戶端,所述申請(qǐng)請(qǐng)求攜帶預(yù)覽信息。
批準(zhǔn)通知轉(zhuǎn)發(fā)模塊1004,用于將所述第一客戶端根據(jù)所述預(yù)覽信息反饋的批準(zhǔn)通知轉(zhuǎn)發(fā)至所述第三客戶端。
第二流數(shù)據(jù)接收模塊1005,用于接收所述第三客戶端向所述目標(biāo)傳輸節(jié)點(diǎn)傳輸?shù)牡诙鲾?shù)據(jù),所述傳輸路徑經(jīng)過多個(gè)目標(biāo)傳輸節(jié)點(diǎn),至少一個(gè)目標(biāo)傳輸節(jié)點(diǎn)具有關(guān)聯(lián)傳輸節(jié)點(diǎn)。
第二流數(shù)據(jù)推送模塊1006,用于將所述第二流數(shù)據(jù)從各目標(biāo)傳輸節(jié)點(diǎn),經(jīng)所述關(guān)聯(lián)傳輸節(jié)點(diǎn)推送至所述第一客戶端以及至少一個(gè)第二客戶端。
本發(fā)明實(shí)施例中,優(yōu)選地,所述申請(qǐng)請(qǐng)求轉(zhuǎn)發(fā)模塊包括:
上行傳輸節(jié)點(diǎn)查找子模塊,用于查找傳輸路徑的最后一個(gè)目標(biāo)傳輸節(jié)點(diǎn)的上行傳輸節(jié)點(diǎn),并將所述申請(qǐng)請(qǐng)求傳輸至所查找的上行目標(biāo)傳輸節(jié)點(diǎn),所述傳輸路徑經(jīng)過的各目標(biāo)傳輸節(jié)點(diǎn)記錄有其上行目標(biāo)傳輸節(jié)點(diǎn);
申請(qǐng)請(qǐng)求傳輸子模塊,用于由所述上行目標(biāo)傳輸節(jié)點(diǎn)將所述申請(qǐng)請(qǐng)求傳輸至其上行目標(biāo)傳輸節(jié)點(diǎn),直至將所述申請(qǐng)請(qǐng)求傳輸至所述第一客戶端。
本發(fā)明實(shí)施例中,優(yōu)選地,所述裝置還包括:
廣播傳輸方式判定模塊,用于在所述將所述第二流數(shù)據(jù)從各目標(biāo)傳輸節(jié)點(diǎn)經(jīng)所述關(guān)聯(lián)傳輸節(jié)點(diǎn)推送至所述第一客戶端以及至少一個(gè)第二客戶端之前,判定所述第二流數(shù)據(jù)指向廣播傳輸方式。
本發(fā)明實(shí)施例中,優(yōu)選地,所述裝置還包括:
第二流數(shù)據(jù)單播模塊,用于若所述第二流數(shù)據(jù)不指向廣播傳輸方式,則將所述第二流數(shù)據(jù)從各目標(biāo)傳輸節(jié)點(diǎn)推送至所述第一客戶端。
本發(fā)明實(shí)施例中,優(yōu)選地,所述裝置還包括:
廣播權(quán)限判定模塊,用于在所述確定所述第二流數(shù)據(jù)指向廣播傳輸方式之后,判定所述第三客戶端具備廣播權(quán)限。
本發(fā)明實(shí)施例中,優(yōu)選地,所述廣播權(quán)限判定模塊包括:
集合查找子模塊,用于查找具備廣播權(quán)限的特征客戶端集合;
第三客戶端確定子模塊,用于確定所述第三客戶端存在所述特征客戶端集合中。
本發(fā)明實(shí)施例中,優(yōu)選地,所述第二流數(shù)據(jù)接收模塊包括:
第二流數(shù)據(jù)獲取子模塊,用于接收所述第三客戶端向直接連接的目標(biāo)傳輸節(jié)點(diǎn)傳輸?shù)牡诙鲾?shù)據(jù);
第二流數(shù)據(jù)反向傳輸子模塊,用于按照所述傳輸路徑的反向順序,將所述第二流數(shù)據(jù)順次推送到其他目標(biāo)傳輸節(jié)點(diǎn)。
本發(fā)明實(shí)施例中,優(yōu)選地,所述第二流數(shù)據(jù)推送模塊包括:
第二流數(shù)據(jù)直接傳輸子模塊,用于將所述第二流數(shù)據(jù)推送至與所述目標(biāo)傳輸節(jié)點(diǎn)直接連接的一級(jí)關(guān)聯(lián)傳輸節(jié)點(diǎn)或第一客戶端或第二客戶端;
第二流數(shù)據(jù)迭代推送子模塊,用于迭代執(zhí)行推送步驟,將所述第二流數(shù)據(jù)從接收到所述第二流數(shù)據(jù)的N級(jí)關(guān)聯(lián)傳輸節(jié)點(diǎn)推送至直接連接的N+1級(jí)關(guān)聯(lián)傳輸節(jié)點(diǎn)或第一客戶端或第二客戶端,直至推送至接入傳輸節(jié)點(diǎn)集群的第一客戶端和所有第二客戶端。
本發(fā)明實(shí)施例中,優(yōu)選地,所述裝置還包括:
下行目標(biāo)傳輸節(jié)點(diǎn)查找模塊,用于在所述將所述第二流數(shù)據(jù)推送至與所述目標(biāo)傳輸節(jié)點(diǎn)直接連接的一級(jí)關(guān)聯(lián)傳輸節(jié)點(diǎn)或第一客戶端或第二客戶端之前,查找所述目標(biāo)傳輸節(jié)點(diǎn)在所述傳輸路徑中的下行目標(biāo)傳輸節(jié)點(diǎn),所述目標(biāo)傳輸節(jié)點(diǎn)本地記錄有在所述傳輸路徑中的下行目標(biāo)傳輸節(jié)點(diǎn);
下行目標(biāo)傳輸節(jié)點(diǎn)去除模塊,用于從與所述目標(biāo)傳輸節(jié)點(diǎn)直接連接的一級(jí)關(guān)聯(lián)傳輸節(jié)點(diǎn)中,去除所查找的下行目標(biāo)傳輸節(jié)點(diǎn)。
本發(fā)明實(shí)施例中,優(yōu)選地,所述下行目標(biāo)傳輸節(jié)點(diǎn)查找模塊,具體用于根據(jù)所述第一流數(shù)據(jù)的流標(biāo)識(shí),提取對(duì)應(yīng)存儲(chǔ)的下行目標(biāo)傳輸節(jié)點(diǎn),所述下行目標(biāo)傳輸節(jié)點(diǎn)與所述第一流數(shù)據(jù)的流標(biāo)識(shí)對(duì)應(yīng)存儲(chǔ),所述第二流數(shù)據(jù)攜帶所述第一流數(shù)據(jù)的流標(biāo)識(shí)。
依據(jù)本發(fā)明實(shí)施例,按照第一客戶端傳輸?shù)谝涣鲾?shù)據(jù)時(shí)的傳輸路徑,向第一客戶端發(fā)送特殊權(quán)限的申請(qǐng)請(qǐng)求,由于申請(qǐng)請(qǐng)求攜帶預(yù)覽信息,因此使用第一客戶端的用戶可以對(duì)預(yù)覽信息進(jìn)行查看,并根據(jù)查看結(jié)果對(duì)申請(qǐng)請(qǐng)求做出判斷,從而提高了用戶體驗(yàn),同時(shí)提高了申請(qǐng)請(qǐng)求的判斷結(jié)果的準(zhǔn)確性。同時(shí),本發(fā)明實(shí)施例使用同一傳輸路徑傳輸流數(shù)據(jù)和信令,省去了傳統(tǒng)方法中對(duì)流數(shù)據(jù)和信令的不同傳輸路徑的建立,節(jié)省了路徑建立。
本發(fā)明實(shí)施例利用目標(biāo)傳輸節(jié)點(diǎn)及其關(guān)聯(lián)傳輸節(jié)點(diǎn)對(duì)流數(shù)據(jù)進(jìn)行推送,當(dāng)關(guān)聯(lián)傳輸節(jié)點(diǎn)具有多個(gè)層級(jí)時(shí),按層級(jí)對(duì)流數(shù)據(jù)進(jìn)行逐級(jí)推送,最終將流數(shù)據(jù)推送至接入傳輸節(jié)點(diǎn)集群的多個(gè)客戶端,實(shí)現(xiàn)流數(shù)據(jù)的廣播。
在此提供的算法和顯示不與任何特定計(jì)算機(jī)、虛擬系統(tǒng)或者其它設(shè)備固有相關(guān)。各種通用系統(tǒng)也可以與基于在此的示教一起使用。根據(jù)上面的描述,構(gòu)造這類系統(tǒng)所要求的結(jié)構(gòu)是顯而易見的。此外,本發(fā)明也不針對(duì)任何特定編程語言。應(yīng)當(dāng)明白,可以利用各種編程語言實(shí)現(xiàn)在此描述的本發(fā)明的內(nèi)容,并且上面對(duì)特定語言所做的描述是為了披露本發(fā)明的最佳實(shí)施方式。
在此處所提供的說明書中,說明了大量具體細(xì)節(jié)。然而,能夠理解,本發(fā)明的實(shí)施例可以在沒有這些具體細(xì)節(jié)的情況下實(shí)踐。在一些實(shí)例中,并未詳細(xì)示出公知的方法、結(jié)構(gòu)和技術(shù),以便不模糊對(duì)本說明書的理解。
類似地,應(yīng)當(dāng)理解,為了精簡本公開并幫助理解各個(gè)發(fā)明方面中的一個(gè)或多個(gè),在上面對(duì)本發(fā)明的示例性實(shí)施例的描述中,本發(fā)明的各個(gè)特征有時(shí)被一起分組到單個(gè)實(shí)施例、圖、或者對(duì)其的描述中。然而,并不應(yīng)將該公開的方法解釋成反映如下意圖:即所要求保護(hù)的本發(fā)明要求比在每個(gè)權(quán)利要求中所明確記載的特征更多的特征。更確切地說,如下面的權(quán)利要求書所反映的那樣,發(fā)明方面在于少于前面公開的單個(gè)實(shí)施例的所有特征。因此,遵循具體實(shí)施方式的權(quán)利要求書由此明確地并入該具體實(shí)施方式,其中每個(gè)權(quán)利要求本身都作為本發(fā)明的單獨(dú)實(shí)施例。
本領(lǐng)域那些技術(shù)人員可以理解,可以對(duì)實(shí)施例中的設(shè)備中的模塊進(jìn)行自適應(yīng)性地改變并且把它們?cè)O(shè)置在與該實(shí)施例不同的一個(gè)或多個(gè)設(shè)備中。可以把實(shí)施例中的模塊或單元或組件組合成一個(gè)模塊或單元或組件,以及此外可以把它們分成多個(gè)子模塊或子單元或子組件。除了這樣的特征和/或過程或者單元中的至少一些是相互排斥之外,可以采用任何組合對(duì)本說明書(包括伴隨的權(quán)利要求、摘要和附圖)中公開的所有特征以及如此公開的任何方法或者設(shè)備的所有過程或單元進(jìn)行組合。除非另外明確陳述,本說明書(包括伴隨的權(quán)利要求、摘要和附圖)中公開的每個(gè)特征可以由提供相同、等同或相似目的的替代特征來代替。
此外,本領(lǐng)域的技術(shù)人員能夠理解,盡管在此所述的一些實(shí)施例包括其它實(shí)施例中所包括的某些特征而不是其它特征,但是不同實(shí)施例的特征的組合意味著處于本發(fā)明的范圍之內(nèi)并且形成不同的實(shí)施例。例如,在下面的權(quán)利要求書中,所要求保護(hù)的實(shí)施例的任意之一都可以以任意的組合方式來使用。
本發(fā)明的各個(gè)部件實(shí)施例可以以硬件實(shí)現(xiàn),或者以在一個(gè)或者多個(gè)處理器上運(yùn)行的軟件模塊實(shí)現(xiàn),或者以它們的組合實(shí)現(xiàn)。本領(lǐng)域的技術(shù)人員應(yīng)當(dāng)理解,可以在實(shí)踐中使用微處理器或者數(shù)字信號(hào)處理器(DSP)來實(shí)現(xiàn)根據(jù)本發(fā)明實(shí)施例的流數(shù)據(jù)的傳輸設(shè)備中的一些或者全部部件的一些或者全部功能。本發(fā)明還可以實(shí)現(xiàn)為用于執(zhí)行這里所描述的方法的一部分或者全部的設(shè)備或者裝置程序(例如,計(jì)算機(jī)程序和計(jì)算機(jī)程序產(chǎn)品)。這樣的實(shí)現(xiàn)本發(fā)明的程序可以存儲(chǔ)在計(jì)算機(jī)可讀介質(zhì)上,或者可以具有一個(gè)或者多個(gè)信號(hào)的形式。這樣的信號(hào)可以從因特網(wǎng)網(wǎng)站上下載得到,或者在載體信號(hào)上提供,或者以任何其他形式提供。
應(yīng)該注意的是上述實(shí)施例對(duì)本發(fā)明進(jìn)行說明而不是對(duì)本發(fā)明進(jìn)行限制,并且本領(lǐng)域技術(shù)人員在不脫離所附權(quán)利要求的范圍的情況下可設(shè)計(jì)出替換實(shí)施例。在權(quán)利要求中,不應(yīng)將位于括號(hào)之間的任何參考符號(hào)構(gòu)造成對(duì)權(quán)利要求的限制。單詞“包含”不排除存在未列在權(quán)利要求中的元件或步驟。位于元件之前的單詞“一”或“一個(gè)”不排除存在多個(gè)這樣的元件。本發(fā)明可以借助于包括有若干不同元件的硬件以及借助于適當(dāng)編程的計(jì)算機(jī)來實(shí)現(xiàn)。在列舉了若干裝置的單元權(quán)利要求中,這些裝置中的若干個(gè)可以是通過同一個(gè)硬件項(xiàng)來具體體現(xiàn)。單詞第一、第二、以及第三等的使用不表示任何順序。可將這些單詞解釋為名稱。
本發(fā)明公開了A1、一種流數(shù)據(jù)的傳輸方法,包括:
接收從第一客戶端按照傳輸路徑傳輸?shù)牡谝涣鲾?shù)據(jù);
按照所述傳輸路徑向所述第一客戶端發(fā)送特殊權(quán)限的申請(qǐng)請(qǐng)求,所述申請(qǐng)請(qǐng)求攜帶預(yù)覽信息;
接收所述第一客戶端根據(jù)所述預(yù)覽信息反饋的批準(zhǔn)通知。
A2、根據(jù)A1所述的方法,其中,所述預(yù)覽信息為音視頻數(shù)據(jù),在所述按照所述傳輸路徑向所述第一客戶端發(fā)送特殊權(quán)限的申請(qǐng)請(qǐng)求之前,所述方法還包括:
接收用戶對(duì)特殊權(quán)限的觸發(fā)操作;
調(diào)用音視頻采集接口采集所述用戶的音視頻數(shù)據(jù),或從設(shè)定位置提取預(yù)先采集的所述用戶的音視頻數(shù)據(jù)。
A3、根據(jù)A1所述的方法,其中,所述預(yù)覽信息攜帶單播傳輸類型的第一標(biāo)識(shí),以供傳輸節(jié)點(diǎn)根據(jù)該第一標(biāo)識(shí)將所述申請(qǐng)請(qǐng)求發(fā)送至所述第一客戶端。
A4、根據(jù)A1所述的方法,其中,所述方法還包括:
接收所述第一客戶端下發(fā)的具備特殊權(quán)限的特殊客戶端的客戶端信息,并在當(dāng)前客戶端進(jìn)行展示,所述客戶端信息包括特殊客戶端的個(gè)數(shù)、端標(biāo)識(shí)、端狀態(tài)、特殊客戶端的數(shù)量上限中至少一種。
A5、根據(jù)A4所述的方法,其中,在所述在當(dāng)前第一客戶端進(jìn)行展示之前,所述方法還包括:
提取新下發(fā)的客戶端信息的版本標(biāo)識(shí),并與本地存儲(chǔ)的客戶端信息的版本標(biāo)識(shí)進(jìn)行比對(duì);
判定比對(duì)結(jié)果為不一致。
A6、根據(jù)A1所述的方法,其中,所述傳輸路徑經(jīng)過多個(gè)目標(biāo)傳輸節(jié)點(diǎn),至少一個(gè)目標(biāo)傳輸節(jié)點(diǎn)具有關(guān)聯(lián)傳輸節(jié)點(diǎn),所述方法還包括:
向所述目標(biāo)傳輸節(jié)點(diǎn)傳輸?shù)诙鲾?shù)據(jù),以由各目標(biāo)傳輸節(jié)點(diǎn)將所述第二流數(shù)據(jù),經(jīng)所述關(guān)聯(lián)傳輸節(jié)點(diǎn)推送至所述第一客戶端以及至少一個(gè)第二客戶端。
A7、根據(jù)A6所述的方法,其中,所述第二流數(shù)據(jù)攜帶廣播傳輸方式的第二標(biāo)識(shí),以供各目標(biāo)傳輸節(jié)點(diǎn)識(shí)別,并根據(jù)該第二標(biāo)識(shí)將所述第二流數(shù)據(jù)推送至所述第一客戶端以及至少一個(gè)第二客戶端。
A8、根據(jù)A1所述的方法,其中,所述傳輸路徑經(jīng)過的各目標(biāo)傳輸節(jié)點(diǎn)記錄有其上行目標(biāo)傳輸節(jié)點(diǎn);
所述按照所述傳輸路徑向所述第一客戶端發(fā)送特殊權(quán)限的申請(qǐng)請(qǐng)求包括:
將所述申請(qǐng)請(qǐng)求傳輸至與傳輸路徑的最后一個(gè)目標(biāo)傳輸節(jié)點(diǎn),由所述最后一個(gè)目標(biāo)傳輸節(jié)點(diǎn)將所述申請(qǐng)請(qǐng)求傳輸至其上行目標(biāo)傳輸節(jié)點(diǎn),直至將所述申請(qǐng)請(qǐng)求傳輸至所述第一客戶端。
A9、根據(jù)A1所述的方法,其中,所述第一流數(shù)據(jù)攜帶傳輸過程中順次經(jīng)過的各目標(biāo)傳輸節(jié)點(diǎn)的節(jié)點(diǎn)標(biāo)識(shí)的集合;
所述按照所述傳輸路徑向所述第一客戶端發(fā)送特殊權(quán)限的申請(qǐng)請(qǐng)求包括:
按照所述節(jié)點(diǎn)標(biāo)識(shí)的集合反向順次將所述申請(qǐng)請(qǐng)求經(jīng)至少一個(gè)中間目標(biāo)傳輸節(jié)點(diǎn)傳輸至所述第一客戶端。
本發(fā)明還公開了B10、一種流數(shù)據(jù)的傳輸方法,包括:
按照傳輸路徑將第一流數(shù)據(jù)從第一客戶端傳送至第三客戶端;
接收所述第三客戶端對(duì)特殊權(quán)限的申請(qǐng)請(qǐng)求,并按照所述傳輸路徑將所述申請(qǐng)請(qǐng)求轉(zhuǎn)發(fā)至所述第一客戶端,所述申請(qǐng)請(qǐng)求攜帶預(yù)覽信息;
將所述第一客戶端根據(jù)所述預(yù)覽信息反饋的批準(zhǔn)通知轉(zhuǎn)發(fā)至所述第三客戶端。
B11、根據(jù)B10所述的方法,其中,所述傳輸路徑經(jīng)過的各目標(biāo)傳輸節(jié)點(diǎn)記錄有其上行目標(biāo)傳輸節(jié)點(diǎn),所述按照所述傳輸路徑將所述申請(qǐng)請(qǐng)求轉(zhuǎn)發(fā)至所述第一客戶端包括:
查找傳輸路徑的最后一個(gè)目標(biāo)傳輸節(jié)點(diǎn)的上行傳輸節(jié)點(diǎn),并將所述申請(qǐng)請(qǐng)求傳輸至所查找的上行目標(biāo)傳輸節(jié)點(diǎn);
由所述上行目標(biāo)傳輸節(jié)點(diǎn)將所述申請(qǐng)請(qǐng)求傳輸至其上行目標(biāo)傳輸節(jié)點(diǎn),直至將所述申請(qǐng)請(qǐng)求傳輸至所述第一客戶端。
B12、根據(jù)B10所述的方法,其中,所述傳輸路徑經(jīng)過多個(gè)目標(biāo)傳輸節(jié)點(diǎn),至少一個(gè)目標(biāo)傳輸節(jié)點(diǎn)具有關(guān)聯(lián)傳輸節(jié)點(diǎn),所述方法還包括:
接收所述第三客戶端向所述目標(biāo)傳輸節(jié)點(diǎn)傳輸?shù)牡诙鲾?shù)據(jù);
將所述第二流數(shù)據(jù)從各目標(biāo)傳輸節(jié)點(diǎn),經(jīng)所述關(guān)聯(lián)傳輸節(jié)點(diǎn)推送至所述第一客戶端以及至少一個(gè)第二客戶端。
B13、根據(jù)B12所述的方法,其中,在所述將所述第二流數(shù)據(jù)從各目標(biāo)傳輸節(jié)點(diǎn)經(jīng)所述關(guān)聯(lián)傳輸節(jié)點(diǎn)推送至所述第一客戶端以及至少一個(gè)第二客戶端之前,所述方法還包括:
判定所述第二流數(shù)據(jù)指向廣播傳輸方式。
B14、根據(jù)B13所述的方法,其中,所述方法還包括:
若所述第二流數(shù)據(jù)不指向廣播傳輸方式,則將所述第二流數(shù)據(jù)從各目標(biāo)傳輸節(jié)點(diǎn)推送至所述第一客戶端。
B15、根據(jù)B12所述的方法,其中,在所述確定所述第二流數(shù)據(jù)指向廣播傳輸方式之后,所述方法還包括:
判定所述第三客戶端具備廣播權(quán)限。
B16、根據(jù)B15所述的方法,其中,所述判定所述第三客戶端具備廣播權(quán)限包括:
查找具備廣播權(quán)限的特征客戶端集合;
確定所述第三客戶端存在所述特征客戶端集合中。
B17、根據(jù)B12所述的方法,其中,所述接收第三客戶端向所述目標(biāo)傳輸節(jié)點(diǎn)傳輸?shù)牡诙鲾?shù)據(jù)包括:
接收所述第三客戶端向直接連接的目標(biāo)傳輸節(jié)點(diǎn)傳輸?shù)牡诙鲾?shù)據(jù);
按照所述傳輸路徑的反向順序,將所述第二流數(shù)據(jù)順次推送到其他目標(biāo)傳輸節(jié)點(diǎn)。
B18、根據(jù)B12所述的方法,其中,所述將所述第二流數(shù)據(jù)從各目標(biāo)傳輸節(jié)點(diǎn),經(jīng)所述關(guān)聯(lián)傳輸節(jié)點(diǎn)推送至所述第一客戶端以及至少一個(gè)第二客戶端包括:
將所述第二流數(shù)據(jù)推送至與所述目標(biāo)傳輸節(jié)點(diǎn)直接連接的一級(jí)關(guān)聯(lián)傳輸節(jié)點(diǎn)或第一客戶端或第二客戶端;
迭代執(zhí)行推送步驟,將所述第二流數(shù)據(jù)從接收到所述第二流數(shù)據(jù)的N級(jí)關(guān)聯(lián)傳輸節(jié)點(diǎn)推送至直接連接的N+1級(jí)關(guān)聯(lián)傳輸節(jié)點(diǎn)或第一客戶端或第二客戶端,直至推送至接入傳輸節(jié)點(diǎn)集群的第一客戶端和所有第二客戶端。
B19、根據(jù)B18所述的方法,其中,所述目標(biāo)傳輸節(jié)點(diǎn)本地記錄有在所述傳輸路徑中的下行目標(biāo)傳輸節(jié)點(diǎn),在所述將所述第二流數(shù)據(jù)推送至與所述目標(biāo)傳輸節(jié)點(diǎn)直接連接的一級(jí)關(guān)聯(lián)傳輸節(jié)點(diǎn)或第一客戶端或第二客戶端之前,所述方法還包括:
查找所述目標(biāo)傳輸節(jié)點(diǎn)在所述傳輸路徑中的下行目標(biāo)傳輸節(jié)點(diǎn);
從與所述目標(biāo)傳輸節(jié)點(diǎn)直接連接的一級(jí)關(guān)聯(lián)傳輸節(jié)點(diǎn)中,去除所查找的下行目標(biāo)傳輸節(jié)點(diǎn)。
B20、根據(jù)B19所述的方法,其中,所述下行目標(biāo)傳輸節(jié)點(diǎn)與所述第一流數(shù)據(jù)的流標(biāo)識(shí)對(duì)應(yīng)存儲(chǔ),所述第二流數(shù)據(jù)攜帶所述第一流數(shù)據(jù)的流標(biāo)識(shí);
所述查找所述目標(biāo)傳輸節(jié)點(diǎn)在所述傳輸路徑中的下行目標(biāo)傳輸節(jié)點(diǎn)包括:
根據(jù)所述第一流數(shù)據(jù)的流標(biāo)識(shí),提取對(duì)應(yīng)存儲(chǔ)的下行目標(biāo)傳輸節(jié)點(diǎn)。
本發(fā)明還公開了C21、一種流數(shù)據(jù)的傳輸裝置,包括:
第一流數(shù)據(jù)接收模塊,用于接收從第一客戶端按照傳輸路徑傳輸?shù)牡谝涣鲾?shù)據(jù);
申請(qǐng)請(qǐng)求發(fā)送模塊,用于按照所述傳輸路徑向所述第一客戶端發(fā)送特殊權(quán)限的申請(qǐng)請(qǐng)求,所述申請(qǐng)請(qǐng)求攜帶預(yù)覽信息;
批準(zhǔn)通知接收模塊,用于接收所述第一客戶端根據(jù)所述預(yù)覽信息反饋的批準(zhǔn)通知。
C22、根據(jù)C21所述的裝置,其中,所述裝置還包括:
觸發(fā)操作接收模塊,用于所述預(yù)覽信息為音視頻數(shù)據(jù),在所述按照所述傳輸路徑向所述第一客戶端發(fā)送特殊權(quán)限的申請(qǐng)請(qǐng)求之前,接收用戶對(duì)特殊權(quán)限的觸發(fā)操作;
音視頻數(shù)據(jù)獲取模塊,用于調(diào)用音視頻采集接口采集所述用戶的音視頻數(shù)據(jù),或從設(shè)定位置提取預(yù)先采集的所述用戶的音視頻數(shù)據(jù)。
C23、根據(jù)C21所述的裝置,其中,所述預(yù)覽信息攜帶單播傳輸類型的第一標(biāo)識(shí),以供傳輸節(jié)點(diǎn)根據(jù)該第一標(biāo)識(shí)將所述申請(qǐng)請(qǐng)求發(fā)送至所述第一客戶端。
C24、根據(jù)C21所述的裝置,其中,所述裝置還包括:
客戶端信息接收模塊,用于接收所述第一客戶端下發(fā)的具備特殊權(quán)限的特殊客戶端的客戶端信息,并在當(dāng)前客戶端進(jìn)行展示,所述客戶端信息包括特殊客戶端的個(gè)數(shù)、端標(biāo)識(shí)、端狀態(tài)、特殊客戶端的數(shù)量上限中至少一種。
C25、根據(jù)C24所述的裝置,其中,所述裝置還包括:
版本標(biāo)識(shí)提取模塊,用于在所述在當(dāng)前第一客戶端進(jìn)行展示之前,提取新下發(fā)的客戶端信息的版本標(biāo)識(shí),并與本地存儲(chǔ)的客戶端信息的版本標(biāo)識(shí)進(jìn)行比對(duì);
比對(duì)結(jié)果判定模塊,用于判定比對(duì)結(jié)果為不一致。
C26、根據(jù)C 21所述的裝置,其中,所述裝置還包括:
第二流數(shù)據(jù)傳輸模塊,用于向所述目標(biāo)傳輸節(jié)點(diǎn)傳輸?shù)诙鲾?shù)據(jù),以由各目標(biāo)傳輸節(jié)點(diǎn)將所述第二流數(shù)據(jù),經(jīng)所述關(guān)聯(lián)傳輸節(jié)點(diǎn)推送至所述第一客戶端以及至少一個(gè)第二客戶端,所述傳輸路徑經(jīng)過多個(gè)目標(biāo)傳輸節(jié)點(diǎn),至少一個(gè)目標(biāo)傳輸節(jié)點(diǎn)具有關(guān)聯(lián)傳輸節(jié)點(diǎn)。
C27、根據(jù)C26所述的裝置,其中,所述第二流數(shù)據(jù)攜帶廣播傳輸方式的第二標(biāo)識(shí),以供各目標(biāo)傳輸節(jié)點(diǎn)識(shí)別,并根據(jù)該第二標(biāo)識(shí)將所述第二流數(shù)據(jù)推送至所述第一客戶端以及至少一個(gè)第二客戶端。
C28、根據(jù)C21所述的裝置,其中:
所述申請(qǐng)請(qǐng)求發(fā)送模塊,具體用于將所述申請(qǐng)請(qǐng)求傳輸至與傳輸路徑的最后一個(gè)目標(biāo)傳輸節(jié)點(diǎn),由所述最后一個(gè)目標(biāo)傳輸節(jié)點(diǎn)將所述申請(qǐng)請(qǐng)求傳輸至其上行目標(biāo)傳輸節(jié)點(diǎn),直至將所述申請(qǐng)請(qǐng)求傳輸至所述第一客戶端,所述傳輸路徑經(jīng)過的各目標(biāo)傳輸節(jié)點(diǎn)記錄有其上行目標(biāo)傳輸節(jié)點(diǎn)。
C29、根據(jù)C21所述的裝置,其中:
所述申請(qǐng)請(qǐng)求發(fā)送模塊,具體用于按照所述節(jié)點(diǎn)標(biāo)識(shí)的集合反向順次將所述申請(qǐng)請(qǐng)求經(jīng)至少一個(gè)中間目標(biāo)傳輸節(jié)點(diǎn)傳輸至所述第一客戶端,所述第一流數(shù)據(jù)攜帶傳輸過程中順次經(jīng)過的各目標(biāo)傳輸節(jié)點(diǎn)的節(jié)點(diǎn)標(biāo)識(shí)的集合。
本發(fā)明還公開了D30、一種流數(shù)據(jù)的傳輸裝置,包括:
第一流數(shù)據(jù)傳輸模塊,用于按照傳輸路徑將第一流數(shù)據(jù)從第一客戶端傳送至第三客戶端;
申請(qǐng)請(qǐng)求接收模塊,用于接收所述第三客戶端對(duì)特殊權(quán)限的申請(qǐng)請(qǐng)求;
申請(qǐng)請(qǐng)求轉(zhuǎn)發(fā)模塊,用于按照所述傳輸路徑將所述申請(qǐng)請(qǐng)求轉(zhuǎn)發(fā)至所述第一客戶端,所述申請(qǐng)請(qǐng)求攜帶預(yù)覽信息;
批準(zhǔn)通知轉(zhuǎn)發(fā)模塊,用于將所述第一客戶端根據(jù)所述預(yù)覽信息反饋的批準(zhǔn)通知轉(zhuǎn)發(fā)至所述第三客戶端。
D31、根據(jù)D30所述的裝置,其中,所述申請(qǐng)請(qǐng)求轉(zhuǎn)發(fā)模塊包括:
上行傳輸節(jié)點(diǎn)查找子模塊,用于查找傳輸路徑的最后一個(gè)目標(biāo)傳輸節(jié)點(diǎn)的上行傳輸節(jié)點(diǎn),并將所述申請(qǐng)請(qǐng)求傳輸至所查找的上行目標(biāo)傳輸節(jié)點(diǎn),所述傳輸路徑經(jīng)過的各目標(biāo)傳輸節(jié)點(diǎn)記錄有其上行目標(biāo)傳輸節(jié)點(diǎn);
申請(qǐng)請(qǐng)求傳輸子模塊,用于由所述上行目標(biāo)傳輸節(jié)點(diǎn)將所述申請(qǐng)請(qǐng)求傳輸至其上行目標(biāo)傳輸節(jié)點(diǎn),直至將所述申請(qǐng)請(qǐng)求傳輸至所述第一客戶端。
D32、根據(jù)D30所述的裝置,其中,所述裝置還包括:
第二流數(shù)據(jù)接收模塊,用于接收所述第三客戶端向所述目標(biāo)傳輸節(jié)點(diǎn)傳輸?shù)牡诙鲾?shù)據(jù),所述傳輸路徑經(jīng)過多個(gè)目標(biāo)傳輸節(jié)點(diǎn),至少一個(gè)目標(biāo)傳輸節(jié)點(diǎn)具有關(guān)聯(lián)傳輸節(jié)點(diǎn);
第二流數(shù)據(jù)推送模塊,用于將所述第二流數(shù)據(jù)從各目標(biāo)傳輸節(jié)點(diǎn),經(jīng)所述關(guān)聯(lián)傳輸節(jié)點(diǎn)推送至所述第一客戶端以及至少一個(gè)第二客戶端。
D33、根據(jù)D32所述的裝置,其中,所述裝置還包括:
廣播傳輸方式判定模塊,用于在所述將所述第二流數(shù)據(jù)從各目標(biāo)傳輸節(jié)點(diǎn)經(jīng)所述關(guān)聯(lián)傳輸節(jié)點(diǎn)推送至所述第一客戶端以及至少一個(gè)第二客戶端之前,判定所述第二流數(shù)據(jù)指向廣播傳輸方式。
D34、根據(jù)D33所述的裝置,其中,所述裝置還包括:
第二流數(shù)據(jù)單播模塊,用于若所述第二流數(shù)據(jù)不指向廣播傳輸方式,則將所述第二流數(shù)據(jù)從各目標(biāo)傳輸節(jié)點(diǎn)推送至所述第一客戶端。
D35、根據(jù)D32所述的裝置,其中,所述裝置還包括:
廣播權(quán)限判定模塊,用于在所述確定所述第二流數(shù)據(jù)指向廣播傳輸方式之后,判定所述第三客戶端具備廣播權(quán)限。
D36、根據(jù)D35所述的裝置,其中,所述廣播權(quán)限判定模塊包括:
集合查找子模塊,用于查找具備廣播權(quán)限的特征客戶端集合;
第三客戶端確定子模塊,用于確定所述第三客戶端存在所述特征客戶端集合中。
D37、根據(jù)D32所述的裝置,其中,所述第二流數(shù)據(jù)接收模塊包括:
第二流數(shù)據(jù)獲取子模塊,用于接收所述第三客戶端向直接連接的目標(biāo)傳輸節(jié)點(diǎn)傳輸?shù)牡诙鲾?shù)據(jù);
第二流數(shù)據(jù)反向傳輸子模塊,用于按照所述傳輸路徑的反向順序,將所述第二流數(shù)據(jù)順次推送到其他目標(biāo)傳輸節(jié)點(diǎn)。
D38、根據(jù)D32所述的裝置,其中,所述第二流數(shù)據(jù)推送模塊包括:
第二流數(shù)據(jù)直接傳輸子模塊,用于將所述第二流數(shù)據(jù)推送至與所述目標(biāo)傳輸節(jié)點(diǎn)直接連接的一級(jí)關(guān)聯(lián)傳輸節(jié)點(diǎn)或第一客戶端或第二客戶端;
第二流數(shù)據(jù)迭代推送子模塊,用于迭代執(zhí)行推送步驟,將所述第二流數(shù)據(jù)從接收到所述第二流數(shù)據(jù)的N級(jí)關(guān)聯(lián)傳輸節(jié)點(diǎn)推送至直接連接的N+1級(jí)關(guān)聯(lián)傳輸節(jié)點(diǎn)或第一客戶端或第二客戶端,直至推送至接入傳輸節(jié)點(diǎn)集群的第一客戶端和所有第二客戶端。
D39、根據(jù)D38所述的裝置,其中,所述裝置還包括:
下行目標(biāo)傳輸節(jié)點(diǎn)查找模塊,用于在所述將所述第二流數(shù)據(jù)推送至與所述目標(biāo)傳輸節(jié)點(diǎn)直接連接的一級(jí)關(guān)聯(lián)傳輸節(jié)點(diǎn)或第一客戶端或第二客戶端之前,查找所述目標(biāo)傳輸節(jié)點(diǎn)在所述傳輸路徑中的下行目標(biāo)傳輸節(jié)點(diǎn),所述目標(biāo)傳輸節(jié)點(diǎn)本地記錄有在所述傳輸路徑中的下行目標(biāo)傳輸節(jié)點(diǎn);
下行目標(biāo)傳輸節(jié)點(diǎn)去除模塊,用于從與所述目標(biāo)傳輸節(jié)點(diǎn)直接連接的一級(jí)關(guān)聯(lián)傳輸節(jié)點(diǎn)中,去除所查找的下行目標(biāo)傳輸節(jié)點(diǎn)。
D40、根據(jù)D39所述的裝置,其中:
所述下行目標(biāo)傳輸節(jié)點(diǎn)查找模塊,具體用于根據(jù)所述第一流數(shù)據(jù)的流標(biāo)識(shí),提取對(duì)應(yīng)存儲(chǔ)的下行目標(biāo)傳輸節(jié)點(diǎn),所述下行目標(biāo)傳輸節(jié)點(diǎn)與所述第一流數(shù)據(jù)的流標(biāo)識(shí)對(duì)應(yīng)存儲(chǔ),所述第二流數(shù)據(jù)攜帶所述第一流數(shù)據(jù)的流標(biāo)識(shí)。