節(jié)點服務(wù)器和CDN底層節(jié)點服務(wù)器之間的CDN中間節(jié)點服務(wù)器;
[0099]可選的,與網(wǎng)頁客戶端通信的CDN底層節(jié)點服務(wù)器可以是網(wǎng)頁客戶端最近的CDN節(jié)點服務(wù)器;網(wǎng)頁客戶端在請求直播視頻流數(shù)據(jù)時,可向最近的CDN節(jié)點服務(wù)器請求視頻流數(shù)據(jù),由該最近的CDN節(jié)點服務(wù)器逐層級向CDN頂層節(jié)點服務(wù)器請求視頻流數(shù)據(jù),從而使得視頻流數(shù)據(jù)由⑶N頂層節(jié)點服務(wù)器至⑶N中間節(jié)點服務(wù)器至⑶N底層節(jié)點服務(wù)器至網(wǎng)頁客戶端,的逐層級傳輸;
[0100]圖6示出了本發(fā)明實施例提供的將視頻流數(shù)據(jù)發(fā)送給網(wǎng)頁客戶端的方法流程圖,參照圖6,該方法可以包括:
[0101]步驟S400、與網(wǎng)頁客戶端通信的⑶N底層節(jié)點服務(wù)器根據(jù)網(wǎng)頁客戶端所請求的播放地址,確定與所述播放地址對應(yīng)的視頻流數(shù)據(jù);
[0102]可選的,播放地址可由網(wǎng)頁客戶端向直播服務(wù)器請求后,由直播服務(wù)器告知;網(wǎng)頁客戶端在確定播放地址后,可向最近的CDN節(jié)點服務(wù)器(S卩CDN底層節(jié)點服務(wù)器)請求與該播放地址相應(yīng)的視頻流數(shù)據(jù)。
[0103]步驟S410、CDN底層節(jié)點服務(wù)器通過⑶N中間節(jié)點服務(wù)器逐層級向⑶N頂層節(jié)點服務(wù)器,請求與所述播放地址對應(yīng)的視頻流數(shù)據(jù);
[0104]具體的,CDN底層節(jié)點服務(wù)器可向與其通信的⑶N中間節(jié)點服務(wù)器中的服務(wù)器,請求視頻流數(shù)據(jù);該服務(wù)器可在CDN中間節(jié)點服務(wù)器中向其上一層級的服務(wù)器請求視頻流數(shù)據(jù),以此類推,直至視頻流數(shù)據(jù)的請求到達CDN中間節(jié)點服務(wù)器中的頂層服務(wù)器,該頂層服務(wù)器再向CDN頂層節(jié)點服務(wù)器請求視頻流數(shù)據(jù),從而實現(xiàn)視頻流數(shù)據(jù)由CDN底層節(jié)點服務(wù)器至⑶N頂層節(jié)點服務(wù)器的逐層級傳輸。
[0105]步驟S420、CDN底層節(jié)點服務(wù)器接收⑶N頂層節(jié)點服務(wù)器通過⑶N中間節(jié)點服務(wù)器逐層級發(fā)送的,與所述播放地址相應(yīng)的流傳輸格式的視頻流數(shù)據(jù);
[0106]相應(yīng)的,CDN頂層節(jié)點服務(wù)器可將轉(zhuǎn)碼服務(wù)器發(fā)送的流傳輸格式的視頻流數(shù)據(jù),通過CDN中間節(jié)點服務(wù)器逐層級的發(fā)送至CDN底層節(jié)點服務(wù)器,實現(xiàn)CDN底層節(jié)點服務(wù)器對視頻流數(shù)據(jù)的獲取,以便后續(xù)將視頻流數(shù)據(jù)發(fā)送給相通信的網(wǎng)頁客戶端。
[0107]步驟S430、CDN底層節(jié)點服務(wù)器將所述流傳輸格式的視頻流數(shù)據(jù)發(fā)送給所述網(wǎng)頁客戶端。
[0108]可選的,為使得CDN節(jié)點支持對流傳輸格式的視頻流數(shù)據(jù)的傳輸,本發(fā)明實施例可在各CDN節(jié)點服務(wù)器(包括CDN頂層節(jié)點服務(wù)器,CDN中間節(jié)點服務(wù)器和CDN底層節(jié)點服務(wù)器)中設(shè)置流傳輸分發(fā)器,該流傳輸分發(fā)器可識別流傳輸格式的視頻流數(shù)據(jù),并實現(xiàn)流傳輸格式的視頻流數(shù)據(jù)的逐層級傳輸;顯然CDN節(jié)點除支持流傳輸格式的視頻流數(shù)據(jù)的傳輸外,還可支持其他格式的數(shù)據(jù)的傳輸,相應(yīng)的各CDN節(jié)點服務(wù)器需設(shè)置相應(yīng)格式的數(shù)據(jù)分發(fā)器。
[0109]下面以網(wǎng)頁客戶端的角度,對本發(fā)明實施例提供的視頻直播方法進行介紹,下文描述的視頻直播方法可與上文的信令流程內(nèi)容,以轉(zhuǎn)碼服務(wù)器和CDN節(jié)點角度描述的視頻直播方法相互對應(yīng)參照。
[0110]圖7為本發(fā)明實施例提供的視頻直播方法的又一流程圖,該方法可應(yīng)用于網(wǎng)頁客戶端,參照圖7,該方法可以包括:
[0111 ]步驟S500、確定直播視頻的播放地址,向⑶N節(jié)點請求與所述播放地址對應(yīng)的視頻流數(shù)據(jù);
[0112]可選的,網(wǎng)頁客戶端可向直播服務(wù)器發(fā)起直播請求,直播服務(wù)器可根據(jù)直播請求將直播頻道的播放地址告知用戶設(shè)備,以使得網(wǎng)頁客戶端確定直播視頻的播放地址;
[0113]網(wǎng)頁客戶端在確定播放地址后,可向CDN節(jié)點請求相應(yīng)的視頻流數(shù)據(jù),以便CDN節(jié)點向網(wǎng)頁客戶端分發(fā)視頻流數(shù)據(jù)。
[0114]步驟S510、接收CDN節(jié)點發(fā)送的預(yù)定的流傳輸格式的視頻流數(shù)據(jù),其中,所述流傳輸格式的視頻流數(shù)據(jù)由轉(zhuǎn)碼服務(wù)器將原始視頻流數(shù)據(jù)的格式,由原始格式轉(zhuǎn)換為預(yù)定的流傳輸格式后生成;
[0115]可選的,CDN節(jié)點發(fā)送給網(wǎng)頁客戶端的流傳輸格式的視頻流數(shù)據(jù)可以由轉(zhuǎn)碼服務(wù)器處獲得,轉(zhuǎn)碼服務(wù)器將原始視頻流數(shù)據(jù)的格式由原始格式轉(zhuǎn)換為預(yù)定的流傳輸格式后,轉(zhuǎn)碼服務(wù)器可將流傳輸格式的視頻流數(shù)據(jù)發(fā)送給CDN節(jié)點。
[0116]步驟S520、解析所述流傳輸格式的視頻流數(shù)據(jù),并基于所述流傳輸格式,以幀播放方式播放解析出的視頻流數(shù)據(jù)。
[0117]可選的,預(yù)設(shè)的原始格式可以為提供視頻直播服務(wù)的服務(wù)提供商所定義的私有協(xié)議格式;預(yù)定的流傳輸格式可以為RTMP格式,或RTMP的變種格式。
[0118]可選的,CDN節(jié)點可以包括多層級的CDN節(jié)點服務(wù)器;該多層級的⑶N節(jié)點服務(wù)器可以包括與轉(zhuǎn)碼服務(wù)器通信的CDN頂層節(jié)點服務(wù)器,與網(wǎng)頁客戶端通信的CDN底層節(jié)點服務(wù)器,及CDN頂層節(jié)點服務(wù)器和CDN底層節(jié)點服務(wù)器之間的CDN中間節(jié)點服務(wù)器;
[0119]可選的,與網(wǎng)頁客戶端通信的CDN底層節(jié)點服務(wù)器可以是網(wǎng)頁客戶端最近的CDN節(jié)點服務(wù)器;
[0120]相應(yīng)的,網(wǎng)頁客戶端可向CDN底層節(jié)點服務(wù)器請求與所述播放地址對應(yīng)的視頻流數(shù)據(jù);CDN底層節(jié)點服務(wù)器再通過CDN中間節(jié)點服務(wù)器逐層級向CDN頂層節(jié)點服務(wù)器,請求與所述播放地址對應(yīng)的視頻流數(shù)據(jù);從而使得CDN頂層節(jié)點服務(wù)器可通過CDN中間節(jié)點服務(wù)器向CDN底層節(jié)點服務(wù)器逐層發(fā)送,與所述播放地址相應(yīng)的流傳輸格式的視頻流數(shù)據(jù);再由CDN底層節(jié)點服務(wù)器將所述流傳輸格式的視頻流數(shù)據(jù)發(fā)送給網(wǎng)頁客戶端,實現(xiàn)網(wǎng)頁客戶端從CDN節(jié)點處接收流傳輸格式的視頻流數(shù)據(jù);
[0121 ]可選的,圖8示出了本發(fā)明實施提供的視頻直播方法的又另一流程圖,該方法可應(yīng)用于網(wǎng)頁客戶端,參照圖8,該方法可以包括:
[0122]步驟S600、確定直播視頻的播放地址,向與網(wǎng)頁客戶端通信的⑶N底層節(jié)點服務(wù)器請求與所述播放地址對應(yīng)的視頻流數(shù)據(jù);
[0123]步驟S610、接收CDN底層節(jié)點服務(wù)器發(fā)送的預(yù)定的流傳輸格式的視頻流數(shù)據(jù),其中,CDN底層節(jié)點服務(wù)器可逐層級向CDN頂層節(jié)點服務(wù)器,請求與所述播放地址對應(yīng)的視頻流數(shù)據(jù),及CDN頂層節(jié)點服務(wù)器可逐層級向CDN底層節(jié)點服務(wù)器發(fā)送與所述播放地址相應(yīng)的流傳輸格式的視頻流數(shù)據(jù);
[0124]步驟S620、解析所述流傳輸格式的視頻流數(shù)據(jù),并基于所述流傳輸格式,以幀播放方式播放解析出的視頻流數(shù)據(jù)。
[0125]下面對本發(fā)明實施例提供的視頻直播方法的應(yīng)用例進行介紹,圖9示出了本發(fā)明實施例提供的應(yīng)用例的示意圖;參照圖9,視頻源采集現(xiàn)場的視頻數(shù)據(jù)(所采集的視頻數(shù)據(jù)可以是游戲現(xiàn)場的視頻數(shù)據(jù),賽事現(xiàn)場的視頻數(shù)據(jù)等),并轉(zhuǎn)化為私有協(xié)議格式的視頻流數(shù)據(jù)發(fā)送給視頻流分發(fā)服務(wù)器;一方面,視頻流分發(fā)服務(wù)器將私有協(xié)議格式的視頻流數(shù)據(jù)發(fā)送給專用的視頻直播客戶端(如專用的安卓視頻直播客戶端,專用的1S視頻直播客戶端等),由專用的視頻直播客戶端解析私有協(xié)議格式的視頻流數(shù)據(jù),播放解析出的視頻流數(shù)據(jù);
[0126]另一方面,視頻流分發(fā)服務(wù)器將私有協(xié)議格式的視頻流數(shù)據(jù)發(fā)送給轉(zhuǎn)碼服務(wù)器,轉(zhuǎn)碼服務(wù)器將私有協(xié)議格式的視頻流數(shù)據(jù)轉(zhuǎn)換為RTMP格式的視頻流數(shù)據(jù);轉(zhuǎn)碼服務(wù)器將RTMP格式的視頻流數(shù)據(jù)發(fā)送給CDN節(jié)點;CDN節(jié)點通過逐層級的傳輸方式,將RTMP格式的視頻流數(shù)據(jù)傳輸至請求直播視頻的網(wǎng)頁客戶端;網(wǎng)頁客戶端解析所述RTMP格式的視頻流數(shù)據(jù),并基于所述RTMP格式,以幀播放方式播放解析出的視頻流數(shù)據(jù)。
[0127]本發(fā)明實施例提供的視頻直播方法是通過流傳輸格式進行視頻流數(shù)據(jù)至網(wǎng)頁客戶端的發(fā)送,因此視頻流數(shù)據(jù)的傳輸延遲較低,同時基于所述流傳輸格式,網(wǎng)頁客戶端可以幀播放方式播放視頻流數(shù)據(jù),將直播視頻播放的延遲控制在幀級別,因此極大的降低了網(wǎng)頁客戶端播放直播視頻時的延遲,實現(xiàn)了在網(wǎng)頁上播放直播視頻時降低延遲的目的。
[0128]下面對本發(fā)明實施例提供的轉(zhuǎn)碼服務(wù)器進行介紹,下文描述的轉(zhuǎn)碼服務(wù)器可與上文信令流程內(nèi)容,及以轉(zhuǎn)碼服務(wù)器角度描述的視頻直播方法相互對應(yīng)參照。
[0129]圖10為本發(fā)明實施例提供的轉(zhuǎn)碼服務(wù)器的結(jié)構(gòu)框圖,參照圖10,轉(zhuǎn)碼服務(wù)器可以包括:
[0130]原始視頻流數(shù)據(jù)接收模塊100,用于接收視頻流分發(fā)服務(wù)器發(fā)送的原始視頻流數(shù)據(jù),所述原始視頻流數(shù)據(jù)的格式為預(yù)設(shè)的原始格式;
[0131]格式轉(zhuǎn)換模塊110,用于將所述原始視頻流數(shù)據(jù)的格式由所述原始格式轉(zhuǎn)換為預(yù)定的流傳輸格式,得到流傳輸格式的視頻流數(shù)據(jù);
[0132]視頻流數(shù)據(jù)發(fā)送模塊120,用于將所述流傳輸格式的視頻流數(shù)據(jù)通過CDN節(jié)點發(fā)送給請求直播視頻的網(wǎng)頁客戶端,以便所述網(wǎng)頁客戶端在接收所述流傳輸格式的視頻流數(shù)據(jù)后,使得網(wǎng)頁客戶端解析所述流傳輸格式的視頻流數(shù)據(jù),并使得網(wǎng)頁客戶端基于所述流傳輸格式,以幀播放方式播放解析出的視頻流數(shù)據(jù)。
[0133]可選的,所述原始格式可以為私有協(xié)議格式,所述流傳輸格式為RTMP格式,或RTMP的變種格式。
[0134]可選的,圖11示出了本發(fā)明實施例提供的轉(zhuǎn)碼服務(wù)器的另一結(jié)構(gòu)框圖,結(jié)合圖10和圖11所示,該轉(zhuǎn)碼服務(wù)器還可以包括:
[0135]中斷確定模塊130,用于接收視頻流分發(fā)服務(wù)器發(fā)送的原始視頻流數(shù)據(jù)之后,若檢測到所述原始視頻流數(shù)據(jù)存在中斷,確定所述原始視頻流數(shù)據(jù)的中斷位置;
[0136]數(shù)據(jù)替代模塊140,用于在所述中斷位置添加入替代的視頻數(shù)據(jù),得到連續(xù)的原始視頻流數(shù)據(jù)。
[0137]相應(yīng)的,格式轉(zhuǎn)換模塊110具體可將所述連續(xù)的原始視頻流數(shù)據(jù)的格式由所述原始格式轉(zhuǎn)換為預(yù)定的流傳輸格式。
[0138]可選的,圖12示出了本發(fā)明實施例提供的數(shù)據(jù)替代模塊140的一種可選結(jié)構(gòu),參照圖12,數(shù)據(jù)替代模塊140可以包括:
[0139]第一替代單元141,用于確定所述中斷位置需替代的視頻數(shù)據(jù)量,在所述原始視頻流數(shù)據(jù)中斷前的視頻流數(shù)據(jù)的最后位置,選取與所述視頻數(shù)據(jù)量相應(yīng)的數(shù)據(jù),在所述中斷位置添加入所選取的數(shù)據(jù)。
[0140]可選的,圖13示出了本發(fā)明實施例提供的數(shù)據(jù)替代模塊140的另一種可選結(jié)構(gòu),參照圖13,數(shù)據(jù)替代模塊140可以包括:
[0141]第二替代單元142,用于選取所述原始視頻流數(shù)據(jù)中斷前的最后一個數(shù)據(jù),根據(jù)所述最后一個數(shù)據(jù)確定與所述中斷位置需替代的視頻數(shù)據(jù)量相應(yīng)的替代數(shù)據(jù),在所述中斷位置添加入所述替代數(shù)據(jù)。
[0142]可選的,轉(zhuǎn)碼服務(wù)器可以為硬件設(shè)備,上文描述的單元模塊可以為設(shè)置于轉(zhuǎn)碼服務(wù)器內(nèi)的功能模塊;圖14示出了轉(zhuǎn)碼服務(wù)器的硬件結(jié)構(gòu)框圖,參照圖14,轉(zhuǎn)碼服務(wù)器可以包括:處理器1,通信接口 2,存儲器3和通信總線4;其中處理器1、通信接口 2、存儲器3通過通信總線4完成相互間的通信;可選的,通信接口 2可以為通信