一種在cdn網(wǎng)絡(luò)中預(yù)取直播節(jié)目信息的方法與設(shè)備的制作方法
【專利摘要】本發(fā)明的目的是提供一種在CDN網(wǎng)絡(luò)中預(yù)取直播節(jié)目信息的方法與設(shè)備;獲取直播節(jié)目所對應(yīng)的第二二級M3U8文件及第三二級M3U8文件,其中,所述第三二級M3U8文件基于所述第二二級M3U8文件及所述直播節(jié)目對應(yīng)的直播延時信息確定;獲取所述直播節(jié)目中與所述第二二級M3U8文件及所述第三二級M3U8文件相對應(yīng)的直播節(jié)目信息,以滿足后續(xù)的相關(guān)直播請求。與現(xiàn)有技術(shù)相比,本發(fā)明通過一級M3U8文件與二級M3U8文件預(yù)取(經(jīng)延時的)直播節(jié)目信息,以提高帶寬資源利用率并改善用戶的節(jié)目訪問體驗,預(yù)取的方法可以非常有效地應(yīng)對網(wǎng)絡(luò)的抖動,從而保證用戶直播服務(wù)質(zhì)量。
【專利說明】一種在CDN網(wǎng)絡(luò)中預(yù)取直播節(jié)目信息的方法與設(shè)備
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及計算機領(lǐng)域,尤其涉及一種用于在CDN網(wǎng)絡(luò)中預(yù)取直播節(jié)目信息的技術(shù)。
【背景技術(shù)】
[0002]預(yù)取是基于內(nèi)容服務(wù)商與網(wǎng)絡(luò)運營商在建設(shè)內(nèi)容傳輸平臺(⑶N,ContentDelivery Network)時,通過提供用戶服務(wù)的⑶N節(jié)點集成預(yù)取模塊并以回源的方式事先預(yù)取回源CDN節(jié)點中的節(jié)目內(nèi)容。
[0003]現(xiàn)有IPTV直播是通過路由組播方式傳輸其直播的,用戶服務(wù)QoS保障通過對IPTV專網(wǎng)寬帶的約束來滿足?;ヂ?lián)網(wǎng)電視直播是通過單播方式傳輸在公網(wǎng)上的,而且無法通過對公網(wǎng)寬帶約束來滿足其用戶服務(wù)QoS保障。在互聯(lián)網(wǎng)電視的直播和點播這兩種基本業(yè)務(wù)中,直播的實時性要求更高。在這種情況下,通過技術(shù)手段保證用戶對直播業(yè)務(wù)的體驗顯的尤為重要。
[0004]現(xiàn)有的直播方式并沒有預(yù)取功能。由于直播頻道數(shù)目有限,在用戶基數(shù)較大的情況下,可以假設(shè)所有的直播頻道都會被用戶收看,又由于直播業(yè)務(wù)是實時的,需要實時通過回源來獲取直播內(nèi)容。因此,在用戶訪問直播業(yè)務(wù)高峰期對回源帶寬的要求是非常高的,一旦存在網(wǎng)絡(luò)抖動都會影響到用戶的體驗。
【發(fā)明內(nèi)容】
[0005]本發(fā)明的目的是提供一種在CDN網(wǎng)絡(luò)中預(yù)取直播節(jié)目信息的方法與設(shè)備。
[0006]根據(jù)本發(fā)明的一個方面,提供了一種在第一網(wǎng)絡(luò)設(shè)備端用于在⑶N網(wǎng)絡(luò)中預(yù)取直播節(jié)目信息的方法,其中,該方法包括:
[0007]獲取直播節(jié)目所對應(yīng)的第二二級M3U8文件及第三二級M3U8文件,其中,所述第三二級M3U8文件基于所述第二二級M3U8文件及所述直播節(jié)目對應(yīng)的直播延時信息確定;
[0008]獲取所述直播節(jié)目中與所述第二二級M3U8文件及所述第三二級M3U8文件相對應(yīng)的直播節(jié)目信息,以滿足后續(xù)的相關(guān)直播請求。
[0009]根據(jù)本發(fā)明的另一方面,還提供了一種在第二網(wǎng)絡(luò)設(shè)備端用于在⑶N網(wǎng)絡(luò)中預(yù)取直播節(jié)目信息的方法,其中,該方法包括:
[0010]生成直播節(jié)目所對應(yīng)的一級M3U8文件、第一二級M3U8文件及第二二級M3U8文件;
[0011 ] 生成所述直播節(jié)目所對應(yīng)的第三二級M3U8文件,其中,所述第三二級M3U8文件基于所述第二二級M3U8文件及所述直播節(jié)目對應(yīng)的直播延時信息確定。
[0012]根據(jù)本發(fā)明的又一方面,還提供了一種用于在⑶N網(wǎng)絡(luò)中預(yù)取直播節(jié)目信息的第一網(wǎng)絡(luò)設(shè)備,其中,該第一網(wǎng)絡(luò)設(shè)備包括:
[0013]第一裝置,用于獲取直播節(jié)目所對應(yīng)的第二二級M3U8文件及第三二級M3U8文件,其中,所述第三二級M3U8文件基于所述第二二級M3U8文件及所述直播節(jié)目對應(yīng)的直播延時信息確定;
[0014]第三裝置,用于獲取所述直播節(jié)目中與所述第二二級M3U8文件及所述第三二級M3U8文件相對應(yīng)的直播節(jié)目信息,以滿足后續(xù)的相關(guān)直播請求。
[0015]根據(jù)本發(fā)明的再一方面,還提供了一種用于在⑶N網(wǎng)絡(luò)中預(yù)取直播節(jié)目信息的第二網(wǎng)絡(luò)設(shè)備,其中,該第二網(wǎng)絡(luò)設(shè)備包括:
[0016]第二裝置,用于生成直播節(jié)目所對應(yīng)的一級M3U8文件、第一二級M3U8文件及第二二級M3U8文件;
[0017]第四裝置,用于生成所述直播節(jié)目所對應(yīng)的第三二級M3U8文件,其中,所述第三二級M3U8文件基于所述第二二級M3U8文件及所述直播節(jié)目對應(yīng)的直播延時信息確定。
[0018]根據(jù)本發(fā)明的再一方面,還提供了一種用于在⑶N網(wǎng)絡(luò)中預(yù)取直播節(jié)目信息的系統(tǒng),其中,該系統(tǒng)包括如上所述的第一網(wǎng)絡(luò)設(shè)備,以及如上所述的第二網(wǎng)絡(luò)設(shè)備。
[0019]與現(xiàn)有技術(shù)相比,本發(fā)明通過一級M3U8文件與二級M3U8文件預(yù)取(經(jīng)延時的)直播節(jié)目信息,以提高帶寬資源利用率并改善用戶的節(jié)目訪問體驗,預(yù)取的方法可以非常有效地應(yīng)對網(wǎng)絡(luò)的抖動,從而保證用戶直播服務(wù)質(zhì)量。
[0020]進一步地,本發(fā)明根據(jù)預(yù)定的碼率優(yōu)先規(guī)則,獲取對應(yīng)的直播節(jié)目信息,進一步提高了帶寬資源利用率,改善了用戶的節(jié)目訪問體驗。
【專利附圖】
【附圖說明】
[0021]通過閱讀參照以下附圖所作的對非限制性實施例所作的詳細描述,本發(fā)明的其它特征、目的和優(yōu)點將會變得更明顯:
[0022]圖1示出根據(jù)本發(fā)明一個方面的一種用于在CDN網(wǎng)絡(luò)中預(yù)取直播節(jié)目信息的設(shè)備示意圖;
[0023]圖2示出根據(jù)本發(fā)明另一個方面的一種用于在CDN網(wǎng)絡(luò)中預(yù)取直播節(jié)目信息的設(shè)備不意圖;
[0024]圖3示出根據(jù)本發(fā)明一個優(yōu)選實施例的一種用于在CDN網(wǎng)絡(luò)中預(yù)取直播節(jié)目信息的設(shè)備示意圖;
[0025]圖4示出根據(jù)本發(fā)明又一個方面的一種用于在CDN網(wǎng)絡(luò)中預(yù)取直播節(jié)目信息的方法流程圖;
[0026]圖5示出根據(jù)本發(fā)明再一個方面的一種用于在CDN網(wǎng)絡(luò)中預(yù)取直播節(jié)目信息的方法流程圖。
[0027]附圖中相同或相似的附圖標記代表相同或相似的部件。
【具體實施方式】
[0028]下面結(jié)合附圖對本發(fā)明作進一步詳細描述。
[0029]在本申請一個典型的配置中,終端、服務(wù)網(wǎng)絡(luò)的設(shè)備和可信方均包括一個或多個處理器(CPU)、輸入/輸出接口、網(wǎng)絡(luò)接口和內(nèi)存。
[0030]內(nèi)存可能包括計算機可讀介質(zhì)中的非永久性存儲器,隨機存取存儲器(RAM)和/或非易失性內(nèi)存等形式,如只讀存儲器(ROM)或閃存(flash RAM)。內(nèi)存是計算機可讀介質(zhì)的示例。
[0031]計算機可讀介質(zhì)包括永久性和非永久性、可移動和非可移動媒體可以由任何方法或技術(shù)來實現(xiàn)信息存儲。信息可以是計算機可讀指令、數(shù)據(jù)結(jié)構(gòu)、程序的模塊或其他數(shù)據(jù)。計算機的存儲介質(zhì)的例子包括,但不限于相變內(nèi)存(PRAM)、靜態(tài)隨機存取存儲器(SRAM)、動態(tài)隨機存取存儲器(DRAM)、其他類型的隨機存取存儲器(RAM)、只讀存儲器(ROM)、電可擦除可編程只讀存儲器(EEPROM)、快閃記憶體或其他內(nèi)存技術(shù)、只讀光盤只讀存儲器(CD-ROM)、數(shù)字多功能光盤(DVD)或其他光學存儲、磁盒式磁帶,磁帶磁磁盤存儲或其他磁性存儲設(shè)備或任何其他非傳輸介質(zhì),可用于存儲可以被計算設(shè)備訪問的信息。按照本文中的界定,計算機可讀介質(zhì)不包括非暫存電腦可讀媒體(transitory media),如調(diào)制的數(shù)據(jù)信號和載波。
[0032]圖1示出根據(jù)本發(fā)明一個方面的一種用于在CDN網(wǎng)絡(luò)中預(yù)取直播節(jié)目信息的設(shè)備示意圖。第一網(wǎng)絡(luò)設(shè)備I包括第一裝置101和第三裝置103。
[0033]其中,第一裝置101用于獲取直播節(jié)目所對應(yīng)的第二二級M3U8文件及第三二級M3U8文件,其中,所述第三二級M3U8文件基于所述第二二級M3U8文件及所述直播節(jié)目對應(yīng)的直播延時信息確定。
[0034]具體地,第一裝置101例如從第三方設(shè)備的指定位置讀取特定文件,以獲取直播節(jié)目所對應(yīng)的第二二級M3U8文件及第三二級M3U8文件,例如,從第二網(wǎng)絡(luò)設(shè)備2的指定目錄中,獲取該第二網(wǎng)絡(luò)設(shè)備2所生成的與直播節(jié)目所對應(yīng)的第二二級M3U8文件及第三二級M3U8文件。其中,該第三二級M3U8文件基于該第二二級M3U8文件及該直播節(jié)目對應(yīng)的直播延時信息確定。
[0035]例如,第二網(wǎng)絡(luò)設(shè)備2生成第二二級M3U8文件,并以一定的更新周期,例如以該直播節(jié)目對應(yīng)的直播延時信息作為更新周期,如每10秒,更新該第二二級M3U8文件,以生成第三二級M3U8文件。并將該第二二級M3U8文件和第三二級M3U8文件存放在指定目錄中。該第一網(wǎng)絡(luò)設(shè)備I的第一裝置101以一定的獲取周期,如每10秒,自該第二網(wǎng)絡(luò)設(shè)備2的指定目錄中,獲取該第二二級M3U8文件和第三二級M3U8文件。
[0036]在此,第二二級M3U8文件是對直播信號進行切片時生成的,第二網(wǎng)絡(luò)設(shè)備2對該第二二級M3U8文件的更新周期意味著第一網(wǎng)絡(luò)設(shè)備I在該更新周期才能獲取到最新的第三二級M3U8文件。在此,更新周期與獲取周期的值可以缺省設(shè)置,也可以根據(jù)實際情況進行調(diào)整。
[0037]在此,第一網(wǎng)絡(luò)設(shè)備I例如為執(zhí)行預(yù)取功能的計算設(shè)備,其可以獨立存在,也可以與CDN服務(wù)節(jié)點相集成。
[0038]在此,例如將該第二二級M3U8文件命名為Rmnf.m3u8。該文件內(nèi)容例如如下所示:
[0039]#EXTM3U
[0040]#EXT-X-VERS10N:3
[0041]#EXT-X-TARGETDURAT1N:10
[0042]#EXT-X-MEDIA-SEQUENCE:139537137
[0043]#EXTINF:10,
[0044]2014032111/139537137.ts
[0045]#EXTINF:10,
[0046]2014032111/139537138.ts
[0047]#EXTINF:10,
[0048]2014032111/139537139.ts
[0049]...
[0050]則該第三二級M3U8文件是基于上述第二二級M3U8文件,以該直播節(jié)目對應(yīng)的直播延時信息作為更新周期,所更新確定的。在此例中,假設(shè)該直播延時信息為10秒,則該第三二級M3U8文件內(nèi)容如下所示:
[0051]#EXTM3U
[0052]#EXT-X-VERS10N:3
[0053]#EXT-X-TARGETDURAT1N:10
[0054]#EXT-X-MEDIA-SEQUENCE:139537138
[0055]#EXTINF:10,
[0056]2014032111/139537138.ts
[0057]#EXTINF:10,
[0058]2014032111/139537139.ts
[0059]#EXTINF:10,
[0060]2014032111/139537140.ts
[0061]
[0062]本領(lǐng)域技術(shù)人員應(yīng)能理解上述獲取第二二級M3U8文件及第三二級M3U8文件的方式僅為舉例,其他現(xiàn)有的或今后可能出現(xiàn)的獲取第二二級M3U8文件及第三二級M3U8文件的方式如可適用于本發(fā)明,也應(yīng)包含在本發(fā)明保護范圍以內(nèi),并在此以引用方式包含于此。
[0063]第三裝置103用于獲取所述直播節(jié)目中與所述第二二級M3U8文件及所述第三二級M3U8文件相對應(yīng)的直播節(jié)目信息,以滿足后續(xù)的相關(guān)直播請求。
[0064]具體地,第三裝置103根據(jù)第一裝置101所獲取的第二二級M3U8文件及第三二級M3U8文件,在直播節(jié)目中獲取與該第二二級M3U8文件及第三二級M3U8文件相對應(yīng)的直播節(jié)目信息,以滿足后續(xù)的相關(guān)直播請求。例如,該第三裝置103獲取直播頻道URL的樣例如下:
[0065]http://192.168.1.10/CCTVl//workflowl/2014032111/139537137.ts
[0066]其中,http://192.168.1.10/CCTV1/是第一網(wǎng)絡(luò)設(shè)備I配置的基地址;
[0067]/workflowl/是寫死在第一網(wǎng)絡(luò)設(shè)備I的⑶N服務(wù)節(jié)點存放直播內(nèi)容的目錄地址;
[0068]2014032111/139537137.ts為第二二級M3U8文件或第三二級M3U8文件描述的切片地址。
[0069]進而,該第三裝置103例如將獲取到的與所述第二二級M3U8文件及所述第三二級M3U8文件相對應(yīng)的直播節(jié)目信息存放于該CDN服務(wù)節(jié)點的目錄中,以致后續(xù)若有相關(guān)直播請求,可至該CDN服務(wù)節(jié)點的目錄中,直接獲取該直播節(jié)目信息。
[0070]本領(lǐng)域技術(shù)人員應(yīng)能理解上述獲取直播節(jié)目信息的方式僅為舉例,其他現(xiàn)有的或今后可能出現(xiàn)的獲取直播節(jié)目信息的方式如可適用于本發(fā)明,也應(yīng)包含在本發(fā)明保護范圍以內(nèi),并在此以引用方式包含于此。
[0071]優(yōu)選地,第一網(wǎng)絡(luò)設(shè)備I的各個裝置之間是持續(xù)不斷工作的。具體地,第一裝置101用于獲取直播節(jié)目所對應(yīng)的第二二級M3U8文件及第三二級M3U8文件,其中,所述第三二級M3U8文件基于所述第二二級M3U8文件及所述直播節(jié)目對應(yīng)的直播延時信息確定;第三裝置103用于獲取所述直播節(jié)目中與所述第二二級M3U8文件及所述第三二級M3U8文件相對應(yīng)的直播節(jié)目信息,以滿足后續(xù)的相關(guān)直播請求。在此,本領(lǐng)域技術(shù)人員應(yīng)理解“持續(xù)”是指第一網(wǎng)絡(luò)設(shè)備I的各裝置分別按照設(shè)定的或?qū)崟r調(diào)整的工作模式要求,獲取第二二級M3U8文件及第三二級M3U8文件、獲取對應(yīng)的直播節(jié)目信息。
[0072]在此,第一網(wǎng)絡(luò)設(shè)備I通過一級M3U8文件與二級M3U8文件預(yù)取(經(jīng)延時的)直播節(jié)目信息,以提高帶寬資源利用率并改善用戶的節(jié)目訪問體驗,預(yù)取的方法可以非常有效地應(yīng)對網(wǎng)絡(luò)的抖動,從而保證用戶直播服務(wù)質(zhì)量。
[0073]優(yōu)選地,該第一網(wǎng)絡(luò)設(shè)備I還包括第五裝置(未示出)。該第五裝置用于根據(jù)關(guān)于所述直播節(jié)目的直播請求,將所述直播節(jié)目信息提供至所述直播請求所對應(yīng)的播放應(yīng)用。
[0074]具體地,當用戶提交了關(guān)于該直播節(jié)目的直播請求,該第五裝置根據(jù)該直播請求,將該第三裝置103所獲取的直播節(jié)目信息提供至該直播請求所對應(yīng)的播放應(yīng)用。例如,第三裝置103在直播節(jié)目中獲取與該第二二級M3U8文件及第三二級M3U8文件相對應(yīng)的直播節(jié)目信息,并將該直播節(jié)目信息存入CDN服務(wù)節(jié)點中,當用戶提交關(guān)于該直播節(jié)目的直播請求,該第五裝置從該CDN服務(wù)節(jié)點中,將該直播節(jié)目信息提供至該直播請求所對應(yīng)的播放應(yīng)用,以供該應(yīng)用進行播放。
[0075]優(yōu)選地,所述第三裝置103用于獲取所述直播節(jié)目中與所述第二二級M3U8文件及所述第三二級M3U8文件相對應(yīng)的直播節(jié)目信息包括:
[0076]根據(jù)預(yù)定的碼率優(yōu)先規(guī)則,獲取所述直播節(jié)目中與所述第二二級M3U8文件及所述第三二級M3U8文件相對應(yīng)的直播節(jié)目信息。
[0077]具體地,對于同一個直播節(jié)目,有一個預(yù)取進程獨立工作,該直播節(jié)目可能存在多種碼率,該直播節(jié)目的直播信號進行切片后,不同的直播節(jié)目切片也可能存在不同的碼率,第三裝置103可以根據(jù)預(yù)定的碼率優(yōu)先規(guī)則,獲取所述直播節(jié)目中與所述第二二級M3U8文件及所述第三二級M3U8文件相對應(yīng)的直播節(jié)目信息,例如,在一個進程中,優(yōu)先下載碼率較低的直播節(jié)目切片,再下載碼率較高的直播節(jié)目切片,以將該直播節(jié)目的所有碼率切片預(yù)取至CDN服務(wù)節(jié)點。較佳地,第三裝置103還可以根據(jù)不同類型的直播節(jié)目,確定不同的碼率優(yōu)先規(guī)則,以獲得更好的用戶使用體驗。
[0078]在此,第一網(wǎng)絡(luò)設(shè)備I根據(jù)預(yù)定的碼率優(yōu)先規(guī)則,獲取對應(yīng)的直播節(jié)目信息,進一步提高了帶寬資源利用率,改善了用戶的節(jié)目訪問體驗。
[0079]優(yōu)選地,所述直播延時信息對應(yīng)于所述直播節(jié)目的切片時長信息。
[0080]具體地,第三二級M3U8文件是基于第二二級M3U8文件及直播節(jié)目對應(yīng)的直播延時信息所確定的,該直播延時信息對應(yīng)于該直播節(jié)目的切片時長信息,如單個或多個切片時長。例如,該直播延時信息對應(yīng)于該直播節(jié)目的單個切片時長,而該單個切片時長為10s,則該第三二級M3U8文件是基于第二二級M3U8文件,以1s作為更新周期,所更新得到的。
[0081]優(yōu)選地,所述第一裝置101用于當收到直播觸發(fā)信息時,獲取獲取直播節(jié)目所對應(yīng)的第二二級M3U8文件及第三二級M3U8文件。
[0082]具體地,當?shù)谝谎b置101收到直播觸發(fā)信息時,例如接收到直播信號或其他觸發(fā)事件時,才從指定目錄中,如從第二網(wǎng)絡(luò)設(shè)備2的Rmnf.m3u8文件目錄中,獲取直播節(jié)目所對應(yīng)的第二二級M3U8文件及第三二級M3U8文件。例如,該第一裝置101實時地遍歷Rmnf.m3u8文件目錄,一旦發(fā)現(xiàn)該文件目錄中有Rmnf.m3u8文件更新了,即觸發(fā)獲取操作,獲取該Rmnf.m3u8 文件。
[0083]本領(lǐng)域技術(shù)人員應(yīng)能理解上述直播觸發(fā)信息僅為舉例,其他現(xiàn)有的或今后可能出現(xiàn)的直播觸發(fā)信息如可適用于本發(fā)明,也應(yīng)包含在本發(fā)明保護范圍以內(nèi),并在此以引用方式包含于此。
[0084]圖2示出根據(jù)本發(fā)明另一個方面的一種用于在CDN網(wǎng)絡(luò)中預(yù)取直播節(jié)目信息的設(shè)備示意圖。第二網(wǎng)絡(luò)設(shè)備2包括第二裝置202和第四裝置204。
[0085]其中,第二裝置202用于生成直播節(jié)目所對應(yīng)的一級M3U8文件、第一二級M3U8文件及第二二級M3U8文件。
[0086]具體地,直播系統(tǒng)在接收到直播信號之后,對該直播信號進行轉(zhuǎn)碼操作,隨后,該直播系統(tǒng)再對該轉(zhuǎn)碼后的直播信號進行切片、封裝等操作,第二裝置202基于此,生成直播節(jié)目所對應(yīng)的一級M3U8文件、第一二級M3U8文件及第二二級M3U8文件。
[0087]在此,該一級M3U8文件的文件地址樣例如下:
[0088]http://stream-js.bestvcdn.com/live/cctv4/live.m3u8? se = jiangsu&ct =2
[0089]該一級M3U8文件的文件樣例如下:
[0090]#EXTM3U
[0091]#EXT-X-STREAM-1NF:PROGRAM-1D = I, BANDWIDTH = 200000
[0092]workf lowl/mnf.m3u8
[0093]#EXT-X-STREAM-1NF:PROGRAM-1D = I, BANDWIDTH = 400000
[0094]workf low2/mnf.m3u8
[0095]#EXT-X-STREAM-1NF:PROGRAM-1D = I, BANDWIDTH = 700000
[0096]workf low3/mnf.m3u8
[0097]#EXT-X-STREAM-1NF:PROGRAM-1D = I, BANDWIDTH = 1300000
[0098]workf low4/mnf.m3u8
[0099]該第二裝置202還根據(jù)該一級M3U8文件的文件內(nèi)容,拼接二級M3U8文件的文件地址,該二級M3U8文件的文件地址樣例如下:
[0100]http://stream-j s.bestvcdn.com/live/cctv4/workflowl/mnf.m3u8
[0101]該二級M3U8文件的文件樣例如下:
[0102]#EXTM3U
[0103]#EXT-X-VERS10N:3
[0104]#EXT-X-TARGETDURAT1N:10
[0105]#EXT-X-MEDIA-SEQUENCE:139400839
[0106]#EXTINF:10,
[0107]2014030516/139400839.ts
[0108]#EXTINF:10,
[0109]2014030516/139400840.ts
[0110]#EXTINF:10,
[0111]2014030516/139400841.ts
[0112]其中,該二級M3U8文件包括第一二級M3U8文件和第二二級M3U8文件,該第一二級M3U8文件為提供給用戶服務(wù)的二級M3U8文件,該第二二級M3U8文件為提供給第一網(wǎng)絡(luò)設(shè)備1,即,執(zhí)行預(yù)取功能的計算設(shè)備,的二級M3U8文件。第二網(wǎng)絡(luò)設(shè)備2同時生成該直播節(jié)目所對應(yīng)的第一二級M3U8文件和第二二級M3U8文件。
[0113]例如,將該第一二級M3U8文件命名為mnf.m3u8。該文件內(nèi)容例如如下所示:
[0114]#EXTM3U
[0115]#EXT-X-VERS10N:3
[0116]#EXT-X-TARGETDURAT1N:10
[0117]#EXT-X-MEDIA-SEQUENCE:139537136
[0118]#EXTINF:10,
[0119]2014032111/139537136.ts
[0120]#EXTINF:10,
[0121]2014032111/139537137.ts
[0122]#EXTINF:10,
[0123]2014032111/139537138.ts
[0124]
[0125]例如,將該第二二級M3U8文件命名為Rmnf.m3u8。該文件內(nèi)容例如如下所示:
[0126]#EXTM3U
[0127]#EXT-X-VERS10N:3
[0128]#EXT-X-TARGETDURAT1N:10
[0129]#EXT-X-MEDIA-SEQUENCE:139537137
[0130]#EXTINF:10,
[0131]2014032111/139537137.ts
[0132]#EXTINF:10,
[0133]2014032111/139537138.ts
[0134]#EXTINF:10,
[0135]2014032111/139537139.ts
[0136]
[0137]在此,mnf.m3u8與Rmnf.m3u8是基于直播切片時同時生成的,兩個文件之間沒有繼承關(guān)系。
[0138]在此,第二網(wǎng)絡(luò)設(shè)備2例如為生成一級、二級M3U8文件的計算設(shè)備,其可以獨立存在,也可以與源服務(wù)器相集成。
[0139]本領(lǐng)域技術(shù)人員應(yīng)能理解,上述生成一級M3U8文件、第一二級M3U8文件及第二二級M3U8文件的方式僅為舉例,其他現(xiàn)有的或今后可能出現(xiàn)的生成一級M3U8文件、第一二級M3U8文件及第二二級M3U8文件的方式如可適用于本發(fā)明,也應(yīng)包含在本發(fā)明保護范圍以內(nèi),并在此以引用方式包含于此。
[0140]第四裝置204用于生成所述直播節(jié)目所對應(yīng)的第三二級M3U8文件,其中,所述第三二級M3U8文件基于所述第二二級M3U8文件及所述直播節(jié)目對應(yīng)的直播延時信息確定。
[0141]具體地,第四裝置204根據(jù)第二裝置202所生成的第二二級M3U8文件,通過對該第二二級M3U8文件進行更新,例如以該直播節(jié)目對應(yīng)的直播延時信息作為更新周期,對該第二二級M3U8文件進行更新,生成直播節(jié)目所對應(yīng)的第三二級M3U8文件。在此,第二二級M3U8文件是對直播信號進行切片時生成的,該第四裝置204對該第二二級M3U8文件的更新周期意味著第一網(wǎng)絡(luò)設(shè)備I在該更新周期才能獲取到最新的第三二級M3U8文件。在此,該更新周期例如缺省設(shè)置為10s,或者,其值可根據(jù)實際情況進行調(diào)整。
[0142]在此,第二網(wǎng)絡(luò)設(shè)備2通過一級M3U8文件與二級M3U8文件預(yù)取(經(jīng)延時的)直播節(jié)目信息,以提高帶寬資源利用率并改善用戶的節(jié)目訪問體驗,預(yù)取的方法可以非常有效地應(yīng)對網(wǎng)絡(luò)的抖動,從而保證用戶直播服務(wù)質(zhì)量。
[0143]優(yōu)選地,該第二網(wǎng)絡(luò)設(shè)備2還包括第六裝置(未示出)。該第六裝置用于根據(jù)關(guān)于所述直播節(jié)目的直播請求,將所述一級M3U8文件及所述第一二級M3U8文件提供至所述直播請求所對應(yīng)的播放應(yīng)用。
[0144]具體地,當用戶提交關(guān)于該直播節(jié)目的直播請求,第六裝置根據(jù)該直播請求,直接將該一級M3U8文件及該第一二級M3U8文件提供至該直播請求所對應(yīng)的播放應(yīng)用,以供該應(yīng)用進行播放。接前例,該第二裝置202所生成的一級M3U8文件的文件地址樣例如下:
[0145]http://stream-j s.bestvcdn.com/live/cctv4/live.m3u8? se = jiangsu&ct =2
[0146]該第二裝置202根據(jù)該一級M3U8文件的文件內(nèi)容,拼接二級M3U8文件的文件地址,該二級M3U8文件的文件地址樣例如下:
[0147]http://stream-j s.bestvcdn.com/live/cctv4/workflowl/mnf.m3u8
[0148]隨后,該第六裝置根據(jù)關(guān)于該直播節(jié)目的直播請求,根據(jù)二級M3U8文件內(nèi)容拼接實際的直播內(nèi)容切片地址如下:
[0149]http: / / stream - j s.bestvcdn.com/live / cctv4/workflowl/2014030516/139400839.ts
[0150]用戶機頂盒根據(jù)該地址從CDN服務(wù)節(jié)點中獲取直播內(nèi)容,以進行播放。
[0151]圖3示出根據(jù)本發(fā)明一個優(yōu)選實施例的一種用于在CDN網(wǎng)絡(luò)中預(yù)取直播節(jié)目信息的設(shè)備示意圖。
[0152]如該圖3所示,該系統(tǒng)首先對直播信號源進行實時轉(zhuǎn)碼處理,隨后,源服務(wù)器對該轉(zhuǎn)碼處理后的直播信號源進行切片、封裝等處理,第二網(wǎng)絡(luò)設(shè)備2 (獨立的、或與該源服務(wù)器相集成)基于此,生成直播節(jié)目所對應(yīng)的一級M3U8文件、第一二級M3U8文件及第二二級M3U8文件;隨后,該第二網(wǎng)絡(luò)設(shè)備2基于該第二二級M3U8文件和該直播節(jié)目對應(yīng)的直播延時信息,生成該直播節(jié)目所對應(yīng)的第三二級M3U8文件。該第二網(wǎng)絡(luò)設(shè)備2將該第二二級M3U8文件和第三二級M3U8文件存放于指定目錄中。第一網(wǎng)絡(luò)設(shè)備I (獨立的、或與⑶N服務(wù)節(jié)點相集成)自該指定目錄中,獲取直播節(jié)目所對應(yīng)的第二二級M3U8文件及第三二級M3U8文件,其中,所述第三二級M3U8文件基于所述第二二級M3U8文件及所述直播節(jié)目對應(yīng)的直播延時信息確定;隨后,該第一網(wǎng)絡(luò)設(shè)備I獲取該直播節(jié)目中與該第二二級M3U8文件及第三二級M3U8文件相對應(yīng)的直播節(jié)目信息,以滿足后續(xù)的相關(guān)直播請求。
[0153]在此,該第一二級M3U8文件為提供給用戶(機頂盒)服務(wù)的二級M3U8文件,該第二二級M3U8文件為提供給第一網(wǎng)絡(luò)設(shè)備1,即,執(zhí)行預(yù)取功能的計算設(shè)備,如預(yù)取模塊,的二級M3U8文件。這兩個二級M3U8文件是有差異的,如:
[0154]將該第一二級M3U8文件命名為mnf.m3u8。該文件內(nèi)容例如如下所示:
[0155]#EXTINF:10,
[0156]2014032111/139537136.ts
[0157]#EXTINF:10,
[0158]2014032111/139537137.ts
[0159]#EXTINF:10,
[0160]2014032111/139537138.ts
[0161]將該第二二級M3U8文件命名為Rmnf.m3u8。該文件內(nèi)容例如如下所示:
[0162]#EXTINF:10,
[0163]2014032111/139537137.ts
[0164]#EXTINF:10,
[0165]2014032111/139537138.ts
[0166]#EXTINF:10,
[0167]2014032111/139537139.ts
[0168]由上可知,兩者文件上的差異是:第二二級M3U8文件描述的切片文件描述要比第二二級M3U8文件切片早一個切片。其意味著用戶(機頂盒)在拿到例如2014032111/139537136.ts切片時,第一網(wǎng)絡(luò)設(shè)備1,如預(yù)取模塊,已經(jīng)將2014032111/139537137.ts 下載到 CDN 服務(wù)節(jié)點中。
[0169]圖4示出根據(jù)本發(fā)明又一個方面的一種用于在CDN網(wǎng)絡(luò)中預(yù)取直播節(jié)目信息的方法流程圖。
[0170]在步驟S401中,第一網(wǎng)絡(luò)設(shè)備I獲取直播節(jié)目所對應(yīng)的第二二級M3U8文件及第三二級M3U8文件,其中,所述第三二級M3U8文件基于所述第二二級M3U8文件及所述直播節(jié)目對應(yīng)的直播延時信息確定。
[0171]具體地,在步驟S401中,第一網(wǎng)絡(luò)設(shè)備I例如從第三方設(shè)備的指定位置讀取特定文件,以獲取直播節(jié)目所對應(yīng)的第二二級M3U8文件及第三二級M3U8文件,例如,從第二網(wǎng)絡(luò)設(shè)備2的指定目錄中,獲取該第二網(wǎng)絡(luò)設(shè)備2所生成的與直播節(jié)目所對應(yīng)的第二二級M3U8文件及第三二級M3U8文件。其中,該第三二級M3U8文件基于該第二二級M3U8文件及該直播節(jié)目對應(yīng)的直播延時信息確定。
[0172]例如,第二網(wǎng)絡(luò)設(shè)備2生成第二二級M3U8文件,并以一定的更新周期,例如以該直播節(jié)目對應(yīng)的直播延時信息作為更新周期,如每10秒,更新該第二二級M3U8文件,以生成第三二級M3U8文件。并將該第二二級M3U8文件和第三二級M3U8文件存放在指定目錄中。在步驟S401中,第一網(wǎng)絡(luò)設(shè)備I以一定的獲取周期,如每10秒,自該第二網(wǎng)絡(luò)設(shè)備2的指定目錄中,獲取該第二二級M3U8文件和第三二級M3U8文件。
[0173]在此,第二二級M3U8文件是對直播信號進行切片時生成的,第二網(wǎng)絡(luò)設(shè)備2對該第二二級M3U8文件的更新周期意味著第一網(wǎng)絡(luò)設(shè)備I在該更新周期才能獲取到最新的第三二級M3U8文件。在此,更新周期與獲取周期的值可以缺省設(shè)置,也可以根據(jù)實際情況進行調(diào)整。
[0174]在此,第一網(wǎng)絡(luò)設(shè)備I例如為執(zhí)行預(yù)取功能的計算設(shè)備,其可以獨立存在,也可以與CDN服務(wù)節(jié)點相集成。
[0175]在此,例如將該第二二級M3U8文件命名為Rmnf.m3u8。該文件內(nèi)容例如如下所示:
[0176]#EXTM3U
[0177]#EXT-X-VERS10N:3
[0178]#EXT-X-TARGETDURAT1N:10
[0179]#EXT-X-MEDIA-SEQUENCE:139537137
[0180]#EXTINF:10,
[0181]2014032111/139537137.ts
[0182]#EXTINF:10,
[0183]2014032111/139537138.ts
[0184]#EXTINF:10,
[0185]2014032111/139537139.ts
[0186]
[0187]則該第三二級M3U8文件是基于上述第二二級M3U8文件,以該直播節(jié)目對應(yīng)的直播延時信息作為更新周期,所更新確定的。在此例中,假設(shè)該直播延時信息為10秒,則該第三二級M3U8文件內(nèi)容如下所示:
[0188]#EXTM3U
[0189]#EXT-X-VERS10N:3
[0190]#EXT-X-TARGETDURAT1N:10
[0191]#EXT-X-MEDIA-SEQUENCE:139537138
[0192]#EXTINF:10,
[0193]2014032111/139537138.ts
[0194]#EXTINF:10,
[0195]2014032111/139537139.ts
[0196]#EXTINF:10,
[0197]2014032111/139537140.ts
[0198]
[0199]本領(lǐng)域技術(shù)人員應(yīng)能理解上述獲取第二二級M3U8文件及第三二級M3U8文件的方式僅為舉例,其他現(xiàn)有的或今后可能出現(xiàn)的獲取第二二級M3U8文件及第三二級M3U8文件的方式如可適用于本發(fā)明,也應(yīng)包含在本發(fā)明保護范圍以內(nèi),并在此以引用方式包含于此。
[0200]在步驟S403中,第一網(wǎng)絡(luò)設(shè)備I獲取所述直播節(jié)目中與所述第二二級M3U8文件及所述第三二級M3U8文件相對應(yīng)的直播節(jié)目信息,以滿足后續(xù)的相關(guān)直播請求。
[0201]具體地,在步驟S403中,第一網(wǎng)絡(luò)設(shè)備I根據(jù)在步驟S401中所獲取的第二二級M3U8文件及第三二級M3U8文件,在直播節(jié)目中獲取與該第二二級M3U8文件及第三二級M3U8文件相對應(yīng)的直播節(jié)目信息,以滿足后續(xù)的相關(guān)直播請求。例如,在步驟S403中,第一網(wǎng)絡(luò)設(shè)備I獲取直播頻道URL的樣例如下:
[0202]http://192.168.1.10/CCTVl//workflowl/2014032111/139537137.ts
[0203]其中,http://192.168.1.10/CCTV1/是第一網(wǎng)絡(luò)設(shè)備I配置的基地址;
[0204]/workflowl/是寫死在第一網(wǎng)絡(luò)設(shè)備I的⑶N服務(wù)節(jié)點存放直播內(nèi)容的目錄地址;
[0205]2014032111/139537137.ts為第二二級M3U8文件或第三二級M3U8文件描述的切片地址。
[0206]進而,在步驟S403中,第一網(wǎng)絡(luò)設(shè)備I例如將獲取到的與所述第二二級M3U8文件及所述第三二級M3U8文件相對應(yīng)的直播節(jié)目信息存放于該CDN服務(wù)節(jié)點的目錄中,以致后續(xù)若有相關(guān)直播請求,可至該CDN服務(wù)節(jié)點的目錄中,直接獲取該直播節(jié)目信息。
[0207]本領(lǐng)域技術(shù)人員應(yīng)能理解上述獲取直播節(jié)目信息的方式僅為舉例,其他現(xiàn)有的或今后可能出現(xiàn)的獲取直播節(jié)目信息的方式如可適用于本發(fā)明,也應(yīng)包含在本發(fā)明保護范圍以內(nèi),并在此以引用方式包含于此。
[0208]優(yōu)選地,第一網(wǎng)絡(luò)設(shè)備I的各個步驟之間是持續(xù)不斷工作的。具體地,在步驟S401中,第一網(wǎng)絡(luò)設(shè)備I獲取直播節(jié)目所對應(yīng)的第二二級M3U8文件及第三二級M3U8文件,其中,所述第三二級M3U8文件基于所述第二二級M3U8文件及所述直播節(jié)目對應(yīng)的直播延時信息確定;在步驟S403中,第一網(wǎng)絡(luò)設(shè)備I獲取所述直播節(jié)目中與所述第二二級M3U8文件及所述第三二級M3U8文件相對應(yīng)的直播節(jié)目信息,以滿足后續(xù)的相關(guān)直播請求。在此,本領(lǐng)域技術(shù)人員應(yīng)理解“持續(xù)”是指第一網(wǎng)絡(luò)設(shè)備I的各步驟分別按照設(shè)定的或?qū)崟r調(diào)整的工作模式要求,獲取第二二級M3U8文件及第三二級M3U8文件、獲取對應(yīng)的直播節(jié)目信息。
[0209]在此,第一網(wǎng)絡(luò)設(shè)備I通過一級M3U8文件與二級M3U8文件預(yù)取(經(jīng)延時的)直播節(jié)目信息,以提高帶寬資源利用率并改善用戶的節(jié)目訪問體驗,預(yù)取的方法可以非常有效地應(yīng)對網(wǎng)絡(luò)的抖動,從而保證用戶直播服務(wù)質(zhì)量。
[0210]優(yōu)選地,該方法還包括步驟S405 (未示出)。在步驟S405中,第一網(wǎng)絡(luò)設(shè)備I根據(jù)關(guān)于所述直播節(jié)目的直播請求,將所述直播節(jié)目信息提供至所述直播請求所對應(yīng)的播放應(yīng)用。
[0211]具體地,當用戶提交了關(guān)于該直播節(jié)目的直播請求,在步驟S405中,第一網(wǎng)絡(luò)設(shè)備I根據(jù)該直播請求,將在步驟S403中所獲取的直播節(jié)目信息提供至該直播請求所對應(yīng)的播放應(yīng)用。例如,在步驟S403中,第一網(wǎng)絡(luò)設(shè)備I在直播節(jié)目中獲取與該第二二級M3U8文件及第三二級M3U8文件相對應(yīng)的直播節(jié)目信息,并將該直播節(jié)目信息存入CDN服務(wù)節(jié)點中,當用戶提交關(guān)于該直播節(jié)目的直播請求,在步驟S405中,第一網(wǎng)絡(luò)設(shè)備I從該CDN服務(wù)節(jié)點中,將該直播節(jié)目信息提供至該直播請求所對應(yīng)的播放應(yīng)用,以供該應(yīng)用進行播放。
[0212]優(yōu)選地,在步驟S403中,第一網(wǎng)絡(luò)設(shè)備I獲取所述直播節(jié)目中與所述第二二級M3U8文件及所述第三二級M3U8文件相對應(yīng)的直播節(jié)目信息包括:
[0213]根據(jù)預(yù)定的碼率優(yōu)先規(guī)則,獲取所述直播節(jié)目中與所述第二二級M3U8文件及所述第三二級M3U8文件相對應(yīng)的直播節(jié)目信息。
[0214]具體地,對于同一個直播節(jié)目,有一個預(yù)取進程獨立工作,該直播節(jié)目可能存在多種碼率,該直播節(jié)目的直播信號進行切片后,不同的直播節(jié)目切片也可能存在不同的碼率,在步驟S403中,第一網(wǎng)絡(luò)設(shè)備I可以根據(jù)預(yù)定的碼率優(yōu)先規(guī)則,獲取所述直播節(jié)目中與所述第二二級M3U8文件及所述第三二級M3U8文件相對應(yīng)的直播節(jié)目信息,例如,在一個進程中,優(yōu)先下載碼率較低的直播節(jié)目切片,再下載碼率較高的直播節(jié)目切片,以將該直播節(jié)目的所有碼率切片預(yù)取至⑶N服務(wù)節(jié)點。較佳地,在步驟S403中,第一網(wǎng)絡(luò)設(shè)備I還可以根據(jù)不同類型的直播節(jié)目,確定不同的碼率優(yōu)先規(guī)則,以獲得更好的用戶使用體驗。
[0215]在此,第一網(wǎng)絡(luò)設(shè)備I根據(jù)預(yù)定的碼率優(yōu)先規(guī)則,獲取對應(yīng)的直播節(jié)目信息,進一步提高了帶寬資源利用率,改善了用戶的節(jié)目訪問體驗。
[0216]優(yōu)選地,所述直播延時信息對應(yīng)于所述直播節(jié)目的切片時長信息。
[0217]具體地,第三二級M3U8文件是基于第二二級M3U8文件及直播節(jié)目對應(yīng)的直播延時信息所確定的,該直播延時信息對應(yīng)于該直播節(jié)目的切片時長信息,如單個或多個切片時長。例如,該直播延時信息對應(yīng)于該直播節(jié)目的單個切片時長,而該單個切片時長為10s,則該第三二級M3U8文件是基于第二二級M3U8文件,以1s作為更新周期,所更新得到的。
[0218]優(yōu)選地,在步驟S401中,第一網(wǎng)絡(luò)設(shè)備I當收到直播觸發(fā)信息時,獲取獲取直播節(jié)目所對應(yīng)的第二二級M3U8文件及第三二級M3U8文件。
[0219]具體地,當在步驟S401中,第一網(wǎng)絡(luò)設(shè)備I收到直播觸發(fā)信息時,例如接收到直播信號或其他觸發(fā)事件時,才從指定目錄中,如從第二網(wǎng)絡(luò)設(shè)備2的Rmnf.m3u8文件目錄中,獲取直播節(jié)目所對應(yīng)的第二二級M3U8文件及第三二級M3U8文件。例如,在步驟S401中,第一網(wǎng)絡(luò)設(shè)備I實時地遍歷Rmnf.m3u8文件目錄,一旦發(fā)現(xiàn)該文件目錄中有Rmnf.m3u8文件更新了,即觸發(fā)獲取操作,獲取該Rmnf.m3u8文件。
[0220]本領(lǐng)域技術(shù)人員應(yīng)能理解上述直播觸發(fā)信息僅為舉例,其他現(xiàn)有的或今后可能出現(xiàn)的直播觸發(fā)信息如可適用于本發(fā)明,也應(yīng)包含在本發(fā)明保護范圍以內(nèi),并在此以引用方式包含于此。
[0221]圖5示出根據(jù)本發(fā)明再一個方面的一種用于在CDN網(wǎng)絡(luò)中預(yù)取直播節(jié)目信息的方法流程圖。
[0222]在步驟S502中,第二網(wǎng)絡(luò)設(shè)備2生成直播節(jié)目所對應(yīng)的一級M3U8文件、第一二級M3U8文件及第二二級M3U8文件。
[0223]具體地,直播系統(tǒng)在接收到直播信號之后,對該直播信號進行轉(zhuǎn)碼操作,隨后,該直播系統(tǒng)再對該轉(zhuǎn)碼后的直播信號進行切片、封裝等操作,在步驟S502中,第二網(wǎng)絡(luò)設(shè)備2基于此,生成直播節(jié)目所對應(yīng)的一級M3U8文件、第一二級M3U8文件及第二二級M3U8文件。
[0224]在此,該一級M3U8文件的文件地址樣例如下:
[0225]http://stream-j s.bestvcdn.com/live/cctv4/live.m3u8? se = jiangsu&ct =2
[0226]該一級M3U8文件的文件樣例如下:
[0227]#EXTM3U
[0228]#EXT-X-STREAM-1NF:PROGRAM-1D = I, BANDWIDTH = 200000
[0229]workf lowl/mnf.m3u8
[0230]#EXT-X-STREAM-1NF:PROGRAM-1D = I, BANDWIDTH = 400000
[0231]workf low2/mnf.m3u8
[0232]#EXT-X-STREAM-1NF:PROGRAM-1D = I, BANDWIDTH = 700000
[0233]workf low3/mnf.m3u8
[0234]#EXT-X-STREAM-1NF:PROGRAM-1D = I, BANDWIDTH = 1300000
[0235]workf low4/mnf.m3u8
[0236]在步驟S502中,第二網(wǎng)絡(luò)設(shè)備2還根據(jù)該一級M3U8文件的文件內(nèi)容,拼接二級M3U8文件的文件地址,該二級M3U8文件的文件地址樣例如下:
[0237]http://stream-j s.bestvcdn.com/live/cctv4/workflowl/mnf.m3u8
[0238]該二級M3U8文件的文件樣例如下:
[0239]#EXTM3U
[0240]#EXT-X-VERS10N:3
[0241]#EXT-X-TARGETDURAT1N:10
[0242]#EXT-X-MEDIA-SEQUENCE:139400839
[0243]#EXTINF:10,
[0244]2014030516/139400839.ts
[0245]#EXTINF:10,
[0246]2014030516/139400840.ts
[0247]#EXTINF:10,
[0248]2014030516/139400841.ts
[0249]其中,該二級M3U8文件包括第一二級M3U8文件和第二二級M3U8文件,該第一二級M3U8文件為提供給用戶服務(wù)的二級M3U8文件,該第二二級M3U8文件為提供給第一網(wǎng)絡(luò)設(shè)備1,即,執(zhí)行預(yù)取功能的計算設(shè)備,的二級M3U8文件。第二網(wǎng)絡(luò)設(shè)備2同時生成該直播節(jié)目所對應(yīng)的第一二級M3U8文件和第二二級M3U8文件。
[0250]例如,將該第一二級M3U8文件命名為mnf.m3u8。該文件內(nèi)容例如如下所示:
[0251]#EXTM3U
[0252]#EXT-X-VERS10N:3
[0253]#EXT-X-TARGETDURAT1N:10
[0254]#EXT-X-MEDIA-SEQUENCE:139537136
[0255]#EXTINF:10,
[0256]2014032111/139537136.ts
[0257]#EXTINF:10,
[0258]2014032111/139537137.ts
[0259]#EXTINF:10,
[0260]2014032111/139537138.ts
[0261]
[0262]例如,將該第二二級M3U8文件命名為Rmnf.m3u8。該文件內(nèi)容例如如下所示:
[0263]#EXTM3U
[0264]#EXT-X-VERS10N:3
[0265]#EXT-X-TARGETDURAT1N:10
[0266]#EXT-X-MEDIA-SEQUENCE:139537137
[0267]#EXTINF:10,
[0268]2014032111/139537137.ts
[0269]#EXTINF:10,
[0270]2014032111/139537138.ts
[0271]#EXTINF:10,
[0272]2014032111/139537139.ts
[0273]...
[0274]在此,mnf.m3u8與Rmnf.m3u8是基于直播切片時同時生成的,兩個文件之間沒有繼承關(guān)系。
[0275]在此,第二網(wǎng)絡(luò)設(shè)備2例如為生成一級、二級M3U8文件的計算設(shè)備,其可以獨立存在,也可以與源服務(wù)器相集成。
[0276]本領(lǐng)域技術(shù)人員應(yīng)能理解,上述生成一級M3U8文件、第一二級M3U8文件及第二二級M3U8文件的方式僅為舉例,其他現(xiàn)有的或今后可能出現(xiàn)的生成一級M3U8文件、第一二級M3U8文件及第二二級M3U8文件的方式如可適用于本發(fā)明,也應(yīng)包含在本發(fā)明保護范圍以內(nèi),并在此以引用方式包含于此。
[0277]在步驟S504中,第二網(wǎng)絡(luò)設(shè)備2生成所述直播節(jié)目所對應(yīng)的第三二級M3U8文件,其中,所述第三二級M3U8文件基于所述第二二級M3U8文件及所述直播節(jié)目對應(yīng)的直播延時信息確定。
[0278]具體地,在步驟S504中,第二網(wǎng)絡(luò)設(shè)備2根據(jù)在步驟S502中所生成的第二二級M3U8文件,通過對該第二二級M3U8文件進行更新,例如以該直播節(jié)目對應(yīng)的直播延時信息作為更新周期,對該第二二級M3U8文件進行更新,生成直播節(jié)目所對應(yīng)的第三二級M3U8文件。在此,第二二級M3U8文件是對直播信號進行切片時生成的,在步驟S504中,第二網(wǎng)絡(luò)設(shè)備2對該第二二級M3U8文件的更新周期意味著第一網(wǎng)絡(luò)設(shè)備I在該更新周期才能獲取到最新的第三二級M3U8文件。在此,該更新周期例如缺省設(shè)置為10s,或者,其值可根據(jù)實際情況進行調(diào)整。
[0279]在此,第二網(wǎng)絡(luò)設(shè)備2通過一級M3U8文件與二級M3U8文件預(yù)取(經(jīng)延時的)直播節(jié)目信息,以提高帶寬資源利用率并改善用戶的節(jié)目訪問體驗,預(yù)取的方法可以非常有效地應(yīng)對網(wǎng)絡(luò)的抖動,從而保證用戶直播服務(wù)質(zhì)量。
[0280]優(yōu)選地,該方法還包括步驟S506(未示出)。在步驟S506中,第二網(wǎng)絡(luò)設(shè)備2根據(jù)關(guān)于所述直播節(jié)目的直播請求,將所述一級M3U8文件及所述第一二級M3U8文件提供至所述直播請求所對應(yīng)的播放應(yīng)用。
[0281]具體地,當用戶提交關(guān)于該直播節(jié)目的直播請求,在步驟S506中,第二網(wǎng)絡(luò)設(shè)備2根據(jù)該直播請求,直接將該一級M3U8文件及該第一二級M3U8文件提供至該直播請求所對應(yīng)的播放應(yīng)用,以供該應(yīng)用進行播放。接前例,在步驟S502中,第二網(wǎng)絡(luò)設(shè)備2所生成的一級M3U8文件的文件地址樣例如下:
[0282]http://stream-j s.bestvcdn.com/live/cctv4/live.m3u8? se = jiangsu&ct =2
[0283]在步驟S502中,第二網(wǎng)絡(luò)設(shè)備2根據(jù)該一級M3U8文件的文件內(nèi)容,拼接二級M3U8文件的文件地址,該二級M3U8文件的文件地址樣例如下:
[0284]http://stream-j s.bestvcdn.com/live/cctv4/workflowl/mnf.m3u8
[0285]隨后,在步驟S506中,第二網(wǎng)絡(luò)設(shè)備2根據(jù)關(guān)于該直播節(jié)目的直播請求,根據(jù)二級M3U8文件內(nèi)容拼接實際的直播內(nèi)容切片地址如下:
[0286]http: / / stream - j s.bestvcdn.com/live / cctv4/workflowl/2014030516/139400839.ts
[0287]用戶機頂盒根據(jù)該地址從CDN服務(wù)節(jié)點中獲取直播內(nèi)容,以進行播放。
[0288]需要注意的是,本發(fā)明可在軟件和/或軟件與硬件的組合體中被實施,例如,可采用專用集成電路(ASIC)、通用目的計算機或任何其他類似硬件設(shè)備來實現(xiàn)。在一個實施例中,本發(fā)明的軟件程序可以通過處理器執(zhí)行以實現(xiàn)上文所述步驟或功能。同樣地,本發(fā)明的軟件程序(包括相關(guān)的數(shù)據(jù)結(jié)構(gòu))可以被存儲到計算機可讀記錄介質(zhì)中,例如,RAM存儲器,磁或光驅(qū)動器或軟磁盤及類似設(shè)備。另外,本發(fā)明的一些步驟或功能可采用硬件來實現(xiàn),例如,作為與處理器配合從而執(zhí)行各個步驟或功能的電路。
[0289]另外,本發(fā)明的一部分可被應(yīng)用為計算機程序產(chǎn)品,例如計算機程序指令,當其被計算機執(zhí)行時,通過該計算機的操作,可以調(diào)用或提供根據(jù)本發(fā)明的方法和/或技術(shù)方案。而調(diào)用本發(fā)明的方法的程序指令,可能被存儲在固定的或可移動的記錄介質(zhì)中,和/或通過廣播或其他信號承載媒體中的數(shù)據(jù)流而被傳輸,和/或被存儲在根據(jù)所述程序指令運行的計算機設(shè)備的工作存儲器中。在此,根據(jù)本發(fā)明的一個實施例包括一個裝置,該裝置包括用于存儲計算機程序指令的存儲器和用于執(zhí)行程序指令的處理器,其中,當該計算機程序指令被該處理器執(zhí)行時,觸發(fā)該裝置運行基于前述根據(jù)本發(fā)明的多個實施例的方法和/或技術(shù)方案。
[0290]對于本領(lǐng)域技術(shù)人員而言,顯然本發(fā)明不限于上述示范性實施例的細節(jié),而且在不背離本發(fā)明的精神或基本特征的情況下,能夠以其他的具體形式實現(xiàn)本發(fā)明。因此,無論從哪一點來看,均應(yīng)將實施例看作是示范性的,而且是非限制性的,本發(fā)明的范圍由所附權(quán)利要求而不是上述說明限定,因此旨在將落在權(quán)利要求的等同要件的含義和范圍內(nèi)的所有變化涵括在本發(fā)明內(nèi)。不應(yīng)將權(quán)利要求中的任何附圖標記視為限制所涉及的權(quán)利要求。此夕卜,顯然“包括” 一詞不排除其他單元或步驟,單數(shù)不排除復(fù)數(shù)。裝置權(quán)利要求中陳述的多個單元或裝置也可以由一個單元或裝置通過軟件或者硬件來實現(xiàn)。第一,第二等詞語用來表示名稱,而并不表示任何特定的順序。
【權(quán)利要求】
1.一種在第一網(wǎng)絡(luò)設(shè)備端用于在CDN網(wǎng)絡(luò)中預(yù)取直播節(jié)目信息的方法,其中,該方法包括: 獲取直播節(jié)目所對應(yīng)的第二二級M3U8文件及第三二級M3U8文件,其中,所述第三二級M3U8文件基于所述第二二級M3U8文件及所述直播節(jié)目對應(yīng)的直播延時信息確定; 獲取所述直播節(jié)目中與所述第二二級M3U8文件及所述第三二級M3U8文件相對應(yīng)的直播節(jié)目信息,以滿足后續(xù)的相關(guān)直播請求。
2.根據(jù)權(quán)利要求1所述的方法,其中,該方法還包括: 根據(jù)關(guān)于所述直播節(jié)目的直播請求,將所述直播節(jié)目信息提供至所述直播請求所對應(yīng)的播放應(yīng)用。
3.根據(jù)權(quán)利要求1或2所述的方法,所述獲取所述直播節(jié)目中與所述第二二級M3U8文件及所述第三二級M3U8文件相對應(yīng)的直播節(jié)目信息包括: 根據(jù)預(yù)定的碼率優(yōu)先規(guī)則,獲取所述直播節(jié)目中與所述第二二級M3U8文件及所述第三二級M3U8文件相對應(yīng)的直播節(jié)目信息。
4.根據(jù)權(quán)利要求1至3中任一項所述的方法,其中,所述直播延時信息對應(yīng)于所述直播節(jié)目的切片時長信息。
5.根據(jù)權(quán)利要求1至4中任一項所述的方法,其中,所述獲取直播節(jié)目所對應(yīng)的第二二級M3U8文件及第三二級M3U8文件包括: 當收到直播觸發(fā)信息時,獲取獲取直播節(jié)目所對應(yīng)的第二二級M3U8文件及第三二級M3U8文件。
6.一種在第二網(wǎng)絡(luò)設(shè)備端用于在CDN網(wǎng)絡(luò)中預(yù)取直播節(jié)目信息的方法,其中,該方法包括: 生成直播節(jié)目所對應(yīng)的一級M3U8文件、第一二級M3U8文件及第二二級M3U8文件; 生成所述直播節(jié)目所對應(yīng)的第三二級M3U8文件,其中,所述第三二級M3U8文件基于所述第二二級M3U8文件及所述直播節(jié)目對應(yīng)的直播延時信息確定。
7.根據(jù)權(quán)利要求6所述的方法,其中,該方法還包括: 根據(jù)關(guān)于所述直播節(jié)目的直播請求,將所述一級M3U8文件及所述第一二級M3U8文件提供至所述直播請求所對應(yīng)的播放應(yīng)用。
8.一種用于在CDN網(wǎng)絡(luò)中預(yù)取直播節(jié)目信息的第一網(wǎng)絡(luò)設(shè)備,其中,該第一網(wǎng)絡(luò)設(shè)備包括: 第一裝置,用于獲取直播節(jié)目所對應(yīng)的第二二級M3U8文件及第三二級M3U8文件,其中,所述第三二級M3U8文件基于所述第二二級M3U8文件及所述直播節(jié)目對應(yīng)的直播延時信息確定; 第三裝置,用于獲取所述直播節(jié)目中與所述第二二級M3U8文件及所述第三二級M3U8文件相對應(yīng)的直播節(jié)目信息,以滿足后續(xù)的相關(guān)直播請求。
9.根據(jù)權(quán)利要求8所述的第一網(wǎng)絡(luò)設(shè)備,其中,該第一網(wǎng)絡(luò)設(shè)備還包括: 第五裝置,用于根據(jù)關(guān)于所述直播節(jié)目的直播請求,將所述直播節(jié)目信息提供至所述直播請求所對應(yīng)的播放應(yīng)用。
10.根據(jù)權(quán)利要求8或9所述的第一網(wǎng)絡(luò)設(shè)備,所述第三裝置用于獲取所述直播節(jié)目中與所述第二二級M3U8文件及所述第三二級M3U8文件相對應(yīng)的直播節(jié)目信息包括: 根據(jù)預(yù)定的碼率優(yōu)先規(guī)則,獲取所述直播節(jié)目中與所述第二二級M3U8文件及所述第三二級M3U8文件相對應(yīng)的直播節(jié)目信息。
11.根據(jù)權(quán)利要求8至10中任一項所述的第一網(wǎng)絡(luò)設(shè)備,其中,所述直播延時信息對應(yīng)于所述直播節(jié)目的切片時長信息。
12.根據(jù)權(quán)利要求8至11中任一項所述的第一網(wǎng)絡(luò)設(shè)備,其中,所述第一裝置用于: 當收到直播觸發(fā)信息時,獲取獲取直播節(jié)目所對應(yīng)的第二二級M3U8文件及第三二級M3U8文件。
13.一種用于在⑶N網(wǎng)絡(luò)中預(yù)取直播節(jié)目信息的第二網(wǎng)絡(luò)設(shè)備,其中,該第二網(wǎng)絡(luò)設(shè)備包括: 第二裝置,用于生成直播節(jié)目所對應(yīng)的一級M3U8文件、第一二級M3U8文件及第二二級M3U8文件; 第四裝置,用于生成所述直播節(jié)目所對應(yīng)的第三二級M3U8文件,其中,所述第三二級M3U8文件基于所述第二二級M3U8文件及所述直播節(jié)目對應(yīng)的直播延時信息確定。
14.根據(jù)權(quán)利要求13所述的第二網(wǎng)絡(luò)設(shè)備,其中,該第二網(wǎng)絡(luò)設(shè)備還包括: 第六裝置,用于根據(jù)關(guān)于所述直播節(jié)目的直播請求,將所述一級M3U8文件及所述第一二級M3U8文件提供至所述直播請求所對應(yīng)的播放應(yīng)用。
15.一種用于在CDN網(wǎng)絡(luò)中預(yù)取直播節(jié)目信息的系統(tǒng),其中,該系統(tǒng)包括如權(quán)利要求8至12中任一項所述的第一網(wǎng)絡(luò)設(shè)備,以及如權(quán)利要求13或14所述的第二網(wǎng)絡(luò)設(shè)備。
【文檔編號】H04N21/266GK104333781SQ201410606658
【公開日】2015年2月4日 申請日期:2014年10月31日 優(yōu)先權(quán)日:2014年10月31日
【發(fā)明者】章德志, 肖友能, 黎文, 黃思鈞 申請人:百視通網(wǎng)絡(luò)電視技術(shù)發(fā)展有限責任公司