亚洲狠狠干,亚洲国产福利精品一区二区,国产八区,激情文学亚洲色图

流媒體頻道錄制方法、裝置及回看方法、裝置及服務(wù)器與流程

文檔序號:11931541閱讀:735來源:國知局
流媒體頻道錄制方法、裝置及回看方法、裝置及服務(wù)器與流程

本發(fā)明涉及互聯(lián)網(wǎng)視頻播放技術(shù)領(lǐng)域,尤其涉及一種流媒體頻道錄制方法、裝置及回看方法、裝置及服務(wù)器。



背景技術(shù):

蘋果公司提出的互聯(lián)網(wǎng)電視HLS(HTTP Live Streaming,流媒體)規(guī)范,已經(jīng)大量運用在HLS頻道直播業(yè)務(wù)上,同時各種傳統(tǒng)IPTV(Internet Protocol Television,網(wǎng)絡(luò)電視)的頻道時移回看業(yè)務(wù)也用HLS進(jìn)行了實現(xiàn)。

現(xiàn)有技術(shù)中,在對HLS頻道直播碼流進(jìn)行錄制時,通常將容量巨大的媒體文件分割成數(shù)量眾多的小分片文件,并以小分片文件為單位存入文件系統(tǒng)。在進(jìn)行HLS頻道回看時,將劃分成數(shù)量眾多的小分片文件傳遞給終端,迎合了網(wǎng)頁服務(wù)器的文件傳輸特性,并且采用一個不斷更新的輕量級索引文件來控制分割后小分片文件的下載和播放,可同時支持直播和點播。此外,文件分割和索引文件的引入也使得帶寬在自適應(yīng)碼流間切換、服務(wù)器故障冗余切換和文件加密保護(hù)等變得更加方便。

但是HLS頻道回看業(yè)務(wù)常規(guī)情況下常常需要部署100多個頻道,每個頻道基本上有3個碼率,每個碼率一般10秒中生成一個小分片,回看的時長一般設(shè)置為7天。按照最低碼率512Kbps計算,則總共需要存放18144000個小分片文件,最小文件大小是640KB。大量的小分片文件存入文件系統(tǒng),導(dǎo)致文件系統(tǒng)存儲了過多的文件數(shù)目,從而提高了對該文件系統(tǒng)的存儲要求和成本。此外,在進(jìn)行流媒體頻道回看的過程中,因為文件系統(tǒng)存入大量的小分片文件,使得用戶在獲取小分片文件時磁盤的讀取速度大大降低,基本上只能發(fā)揮一半的數(shù)據(jù)吞吐能力;同時在進(jìn)行信息檢索時因為文件數(shù)量過大,導(dǎo)致檢索效率較低,相應(yīng)的檢索準(zhǔn)確率也受到很大影響。



技術(shù)實現(xiàn)要素:

本發(fā)明要解決的主要技術(shù)問題是,提供一種流媒體頻道錄制方法、裝置及回看方法、裝置及服務(wù)器,解決了現(xiàn)有技術(shù)中將大量的小分片文件存入文件系統(tǒng),導(dǎo)致文件系統(tǒng)存儲了過多的文件數(shù)目,從而提高了對該文件系統(tǒng)的存儲要求和成本的技術(shù)問題;以及在進(jìn)行流媒體頻道回看的過程中,因為文件系統(tǒng)存入大量的小分片文件,使得用戶在獲取小分片文件時磁盤的讀取速度大大降低的技術(shù)問題。

為解決上述技術(shù)問題,本發(fā)明提供一種流媒體頻道錄制方法,包括:

根據(jù)錄制任務(wù)從流媒體源站獲取對應(yīng)的小分片文件;

將獲取的小分片文件按預(yù)設(shè)聚合規(guī)則存儲于聚合文件中,所述聚合文件存儲于文件系統(tǒng);并將所述小分片文件在所述聚合文件中的描述信息存儲于信息描述庫中。

在本發(fā)明一種實施例中,所述聚合規(guī)則為累積播放時長聚合規(guī)則、存入分片累積個數(shù)聚合規(guī)則和存入分片累積占用字節(jié)聚合規(guī)則中的任意一種。

在本發(fā)明一種實施例中,所述聚合規(guī)則為累積播放時長聚合規(guī)則時,所述累積播放時長聚合規(guī)則為將小分片文件依次存入聚合文件,當(dāng)存入的小分片文件累積播放時長等于預(yù)設(shè)累積播放時長閾值時,將后續(xù)的小分片文件存入下一聚合文件中;

所述聚合規(guī)則為存入分片累積個數(shù)聚合規(guī)則時,所述分片累積個數(shù)聚合規(guī)則為將小分片文件依次存入聚合文件,當(dāng)存入的小分片文件累積個數(shù)等于預(yù)設(shè)累積個數(shù)閾值時,將后續(xù)的小分片文件存入下一聚合文件中;

所述聚合規(guī)則為存入分片累積占用字節(jié)聚合規(guī)則時,所述存入分片累積占用字節(jié)聚合規(guī)則為將小分片文件依次存入聚合文件,當(dāng)存入的小分片文件累積占用 字節(jié)等于預(yù)設(shè)累積占用字節(jié)閾值時,將后續(xù)的小分片文件存入下一聚合文件中。

在本發(fā)明一種實施例中,將所述小分片文件存儲于所述聚合文件中時,依次按照字節(jié)偏移量進(jìn)行存儲。

在本發(fā)明一種實施例中,所述描述信息包括頻道號、碼率、在聚合文件中的字節(jié)偏移量信息、小分片文件的存儲路徑和起止時間。

在本發(fā)明一種實施例中,還包括:獲取預(yù)設(shè)的有效期回看時長閾值,根據(jù)所述有效期回看時長閾值和所述各小分片文件的描述信息確定出在所述有效期回看時長閾值之前的老化小分片文件,并從所述文件系統(tǒng)中刪除與所述老化小分片文件對應(yīng)的聚合文件。

本發(fā)明還提供了一種流媒體頻道回看方法,包括:

接收終端發(fā)送的頻道回看請求,所述頻道回看請求包括文件定位信息;

根據(jù)所述文件定位信息,從通過如權(quán)利要求1-6任一項所述的流媒體頻道錄制方法得到的信息描述庫中定位出對應(yīng)的小分片文件在所述文件系統(tǒng)中的資源位置信息;

將所述資源位置信息發(fā)送給所述終端以供該終端獲取對應(yīng)的小分片文件進(jìn)行播放。

在本發(fā)明一種實施例中,所述文件定位信息包括頻道號、碼率和起止時間;所述信息描述庫包括小分片文件在所述聚合文件中的描述信息,所述描述信息包括頻道號、碼率、在聚合文件中的字節(jié)偏移量信息、小分片文件的存儲路徑和起止時間;所述資源位置信息包括總字節(jié)偏移量和第一個小分片文件的存儲路徑;根據(jù)所述文件定位信息,從信息描述庫中定位出對應(yīng)的小分片文件在所述文件系統(tǒng)中的資源位置信息包括:

將所述文件定位信息中的頻道號與所述信息描述庫中描述信息的頻道號進(jìn) 行匹配,得到該頻道下的小分片文件描述信息;

將所述文件定位信息中的碼率與所述該頻道下的小分片文件描述信息中的碼率進(jìn)行匹配,得到該頻道該碼率下的小分片文件描述信息;

將所述文件定位信息中的起止時間與所述該頻道該碼率下的小分片文件描述信息中的起止時間進(jìn)行匹配,得到該頻道該碼率該起止時間段內(nèi)的小分片文件描述信息;

根據(jù)所述該頻道該碼率該起止時間段內(nèi)的每個小分片文件描述信息中的字節(jié)偏移量信息和小分片文件存儲路徑,計算出所述該頻道該碼率該起止時間段內(nèi)小分片文件的總字節(jié)偏移量,并查找出所述該頻道該碼率該起止時間段內(nèi)第一個小分片文件的存儲路徑;

根據(jù)所述總字節(jié)偏移量和第一個小分片文件的存儲路徑,從所述文件系統(tǒng)中定位出對應(yīng)的小分片文件的具體位置。

此外,本發(fā)明還提供了一種流媒體頻道錄制裝置,包括:

獲取模塊,用于根據(jù)錄制任務(wù)從流媒體源站獲取對應(yīng)的小分片文件;

處理模塊,用于將獲取的小分片文件按預(yù)設(shè)聚合規(guī)則存儲于聚合文件中,所述聚合文件存儲于文件系統(tǒng);并將所述小分片文件在所述聚合文件中的描述信息存儲于信息描述庫中。

在本發(fā)明一種實施例中,所述處理模塊包括:

選擇子模塊,用于選擇所述小分片文件采用累積播放時長聚合規(guī)則、存入分片累積個數(shù)聚合規(guī)則和存入分片累積占用字節(jié)聚合規(guī)則中的哪一種聚合規(guī)則存儲于聚合文件;

處理子模塊,用于根據(jù)所述選擇子模塊選擇的聚合規(guī)則,對小分片文件進(jìn)行存儲。

在本發(fā)明一種實施例中,所述處理子模塊包括:

第一處理單元,用于根據(jù)所述選擇子模塊選擇的累積播放時長聚合規(guī)則,將小分片文件依次按照字節(jié)偏移量存入聚合文件,當(dāng)存入的小分片文件累計播放時長等于預(yù)設(shè)累積播放時長閾值時,將后續(xù)的小分片文件存入下一聚合文件中;

第二處理單元,用于根據(jù)所述選擇子模塊選擇的存入分片累積個數(shù)聚合規(guī)則,將小分片文件依次按照字節(jié)偏移量存入聚合文件,當(dāng)存入的小分片文件累積個數(shù)等于預(yù)設(shè)累積個數(shù)閾值時,將后續(xù)的小分片文件存入下一聚合文件中;

第三處理單元,用于根據(jù)所述選擇子模塊選擇的存入分片累積占用字節(jié)聚合規(guī)則,將小分片文件依次按照字節(jié)偏移量存入聚合文件,當(dāng)存入的小分片文件累積占用字節(jié)等于預(yù)設(shè)累計占用字節(jié)閾值時,將后續(xù)的小分片文件存入下一聚合文件中。

本發(fā)明還提供了一種流媒體頻道回看裝置,包括:

接收模塊,用于接收終端發(fā)送的頻道回看請求,所述頻道回看請求包括文件定位信息;

定位模塊,用于根據(jù)所述文件定位信息,從通過如權(quán)利要求9-11任一項所述的流媒體頻道錄制裝置得到的信息描述庫中定位出對應(yīng)的小分片文件在所述文件系統(tǒng)中的資源位置信息;

發(fā)送模塊,用于將所述資源位置信息發(fā)送給所述終端以供該終端獲取對應(yīng)的小分片文件進(jìn)行播放。

在本發(fā)明一種實施例中,所述文件定位信息包括頻道號、碼率和起止時間;所述信息描述庫包括小分片文件在所述聚合文件中的描述信息,所述描述信息包括頻道號、碼率、在聚合文件中的字節(jié)偏移量信息、小分片文件的存儲路徑和起止時間;所述資源位置信息包括總字節(jié)偏移量和第一個小分片文件的存儲 路徑;所述定位模塊還包括:

第一定位子模塊,用于將所述文件定位信息中的頻道號與所述信息描述庫中描述信息的頻道號進(jìn)行匹配,得到該頻道下的小分片文件描述信息;

第二定位子模塊,用于將所述文件定位信息中的碼率與所述該頻道下的小分片文件描述信息中的碼率進(jìn)行匹配,得到該頻道該碼率下的小分片文件描述信息;

第三定位子模塊,用于將所述文件定位信息中的起止時間與所述該頻道該碼率下的小分片文件描述信息中的起止時間進(jìn)行匹配,得到該頻道該碼率該起止時間段內(nèi)的小分片文件描述信息;

第四定位子模塊,用于根據(jù)所述該頻道該碼率該起止時間段內(nèi)的每個小分片文件描述信息中的字節(jié)偏移量信息和小分片文件存儲路徑,計算出所述該頻道該碼率該起止時間段內(nèi)小分片文件的總字節(jié)偏移量,并查找出所述該頻道該碼率該起止時間段內(nèi)第一個小分片文件的存儲路徑;

第五定位子模塊,用于根據(jù)所述總字節(jié)偏移量和第一個小分片文件的存儲路徑,從所述文件系統(tǒng)中定位出對應(yīng)的小分片文件的具體位置。

本發(fā)明最后提供了一種服務(wù)器,包括:如權(quán)利要求9至11任一項所述的流媒體頻道錄制裝置和如權(quán)利要求12或13所述的流媒體頻道回看裝置;

所述錄制裝置將獲取的小分片文件按預(yù)設(shè)聚合規(guī)則存儲于聚合文件中,所述聚合文件存儲于文件系統(tǒng)中,并將對應(yīng)的小分片文件在聚合文件中的描述信息存儲于信息描述庫中;

所述回看裝置接收到終端發(fā)送的頻道回看請求后,根據(jù)所述頻道回看請求,從所述信息描述庫中獲取與終端請求對應(yīng)的小分片文件描述信息,并根據(jù)獲取到的描述信息定位出對應(yīng)的小分片文件在所述文件系統(tǒng)中的資源位置信息,并將所 述資源位置信息發(fā)送給所述終端以供該終端獲取對應(yīng)的小分片文件進(jìn)行播放。

本發(fā)明的有益效果是:

本發(fā)明提供的流媒體頻道錄制方法、裝置及回看方法、裝置及服務(wù)器,根據(jù)錄制任務(wù)從流媒體源站獲取到對應(yīng)的小分片文件后,將獲取到的小分片文件按照預(yù)設(shè)聚合規(guī)則存入聚合文件中,聚合文件存儲于文件系統(tǒng),并且將所述小分片文件在聚合文件中對應(yīng)的描述信息存入信息描述庫中。通過按照預(yù)設(shè)聚合規(guī)則將小分片文件聚合存入聚合文件,并以聚合文件為單位存儲于文件系統(tǒng),也就是說通過聚合文件將多個小分片文件整合成一個大的文件進(jìn)行存儲,從而減少了文件系統(tǒng)中存儲的文件數(shù)目,同時也降低了對該系統(tǒng)的存儲要求和成本。此外,通過將小分片文件整合成一個大的文件進(jìn)行存儲,使得在進(jìn)行頻道回看的過程中,因為文件系統(tǒng)中存儲的文件數(shù)目較小,系統(tǒng)根據(jù)用戶請求能很快的在文件系統(tǒng)中定位到相應(yīng)小分片文件的具體位置,大大提高了系統(tǒng)的檢索效率和準(zhǔn)確度。

附圖說明

圖1為本發(fā)明實施例一提供的流媒體頻道錄制方法流程圖;

圖2為本發(fā)明實施例一提供的文件系統(tǒng)中小分片文件聚合前后的文件存儲對比示意圖;

圖3為本發(fā)明實施例一提供的聚合文件老化刪除過程示意圖;

圖4為本發(fā)明實施例二提供的流媒體頻道回看方法流程圖;

圖5為本發(fā)明實施例二提供的根據(jù)終端請求在文件系統(tǒng)和信息描述庫中的信息匹配流程圖;

圖6為本發(fā)明實施例三提供的流媒體頻道錄制裝置示意圖;

圖7為本發(fā)明實施例四提供的流媒體頻道回看裝置示意圖;

圖8為本發(fā)明實施例五提供的服務(wù)器示意圖。

具體實施方式

為了在進(jìn)行流媒體頻道回看錄制時降低錄制所需的文件數(shù)目,進(jìn)而大幅降低對文件系統(tǒng)存儲文件數(shù)目的需求,使得小分片文件存儲成本也相應(yīng)降低。下面通過具體實施方式結(jié)合附圖對本發(fā)明作進(jìn)一步詳細(xì)說明。

實施例一:

請參考圖1,圖1為本實施例提供的流媒體頻道錄制方法流程圖。

在本實施例中,流媒體頻道錄制方法具體步驟如下:

S11,根據(jù)錄制任務(wù)從流媒體源站獲取對應(yīng)的小分片文件;

S12,將獲取的小分片文件按預(yù)設(shè)聚合規(guī)則存儲于聚合文件中,所述聚合文件存儲于文件系統(tǒng);并將所述小分片文件在所述聚合文件中的描述信息存儲于信息描述庫中。

通過上述步驟,使得在對小分片文件進(jìn)行錄制時就將小分片文件按預(yù)設(shè)的聚合規(guī)則存入聚合文件,同時小分片文件往文件系統(tǒng)中存儲時是以聚合文件為單位,從而降低了錄制所需的文件數(shù)目,同時也很方便找到合適的文件系統(tǒng)來存放錄制的文件。

進(jìn)一步的,上述提到的信息描述庫既可存放于文件系統(tǒng),也可存放于數(shù)據(jù)庫中亦或其他地方。

此外,上述提到的錄制任務(wù)是從管理裝置中獲取到的,并將錄制任務(wù)存入信息描述庫,定時從該信息描述庫中獲取所有的錄制信息;該錄制任務(wù)包括頻道號和流媒體源站主索引文件地址信息等,通過頻道號和流媒體源站主索引地址信息,獲取主索引文件,并對主索引文件進(jìn)行解析,得到該頻道下的碼率信息和子索引文件下載地址信息;根據(jù)子索引文件下載地址信息,得到該頻道該 碼率下的各子索引文件;對各子索引文件進(jìn)行解析,得到該頻道該碼率下各小分片文件下載地址信息,最后依次訪問各小分片文件下載地址信息,獲取小分片文件。

進(jìn)一步的,上述預(yù)設(shè)聚合規(guī)則有如下幾種方式:預(yù)設(shè)聚合規(guī)則有累積播放時長聚合規(guī)則、存入分片累積個數(shù)聚合規(guī)則和存入分片累積占用字節(jié)聚合規(guī)則。對于累積播放時長聚合規(guī)則,將小分片文件依次存入聚合文件,當(dāng)存入的小分片文件累積播放時長等于預(yù)設(shè)累積播放時長閾值時,將后續(xù)的小分片文件存入下一聚合文件中;對于存入分片累積個數(shù)聚合規(guī)則,將小分片文件依次存入聚合文件,當(dāng)存入的小分片文件累積個數(shù)等于預(yù)設(shè)累積個數(shù)閾值時,將后續(xù)的小分片文件存入下一聚合文件中;對于存入分片累積占用字節(jié)聚合規(guī)則,將將小分片文件依次存入聚合文件,當(dāng)存入的小分片文件累積占用字節(jié)等于預(yù)設(shè)累積占用字節(jié)閾值時,將后續(xù)的小分片文件存入下一聚合文件中。上述的閾值均可根據(jù)實際情況進(jìn)行配置,同時,上述的三種預(yù)設(shè)聚合規(guī)則均是將許多小分片文件聚合成一個大文件進(jìn)行存儲,這種聚合規(guī)則并不限定于上述三種,也可以通過其他方式進(jìn)行聚合,聚合機制類似,對于其他聚合規(guī)則,也在本實施例保護(hù)的范圍內(nèi),這里不再詳細(xì)贅述。在本實施例中,優(yōu)選地,采用累積播放時長的聚合規(guī)則對小分片文件存儲。

進(jìn)一步的,請參見圖2,圖2為本實施例提供的文件系統(tǒng)中小分片文件聚合前后的文件存儲對比示意圖。圖2中,現(xiàn)有技術(shù)將小分片文件直接存儲于文件系統(tǒng),而本實施例將多個小分片文件通過聚合文件整合成一個大的文件存儲于文件系統(tǒng)中,從而減小各文件系統(tǒng)的文件數(shù)目。

進(jìn)一步的,小分片文件依次按照字節(jié)偏移量存入聚合文件,其存儲方式如下:

假設(shè)第一個小分片文件的起始值為0,所有小分片文件的字節(jié)偏移量均為2,將第一個小分片文件存放于聚合文件中,再將第二小分片文件存入其中,該小分片文件起始值為2,依次類推,直到聚合文件達(dá)到系統(tǒng)設(shè)定的存儲閾值N。新建另一個聚合文件,繼續(xù)將后續(xù)的小分片文件存入新建的聚合文件,該聚合文件中第一個小分片文件的起始值依然為0,按照之前聚合文件的存儲方式,依次將各小分片文件存入新建的聚合文件中,直到該聚合文件達(dá)到系統(tǒng)設(shè)定的存儲閾值N。此外,小分片文件按照字節(jié)偏移量進(jìn)行存儲的方式不限于上述方式,也可通過其他方式實現(xiàn)小分片文件按字節(jié)偏移量存儲,對于其他存儲方式,也在本實施例保護(hù)的范圍內(nèi),這里不再詳細(xì)贅述。

進(jìn)一步的,在S12中提到的描述信息包括頻道號、碼率、在聚合文件中的字節(jié)偏移量信息、小分片文件的存儲路徑和起止時間,通過該信息在與終端用戶進(jìn)行交互時,可方便快捷的檢索到所需信息。

此外,請參考圖3,圖3為本實施例提供的聚合文件老化刪除過程示意圖。圖3中,假設(shè)聚合文件的回看時長為4天,Day1存儲了A個小分片文件,當(dāng)前回看時長是5天,故需要老化刪除Day1中的聚合文件,也就是說當(dāng)錄制的聚合文件超過系統(tǒng)設(shè)定回看的時長時,就會執(zhí)行老化刪除超過期限的聚合文件和信息描述庫中對應(yīng)小分片文件的描述信息,具體的老化刪除過程如下:

獲取預(yù)設(shè)的有效期回看時長閾值,根據(jù)所述有效期回看時長閾值和所述各小分片文件的描述信息確定出在所述有效期回看時長閾值之前的老化小分片文件,并從所述文件系統(tǒng)中刪除與所述老化小分片文件對應(yīng)的聚合文件;所述老化小分片文件為超過有效期回看時長閾值需要被刪除的文件。

在對聚合文件進(jìn)行老化刪除時,存在聚合文件中的部分小分片文件需要被老化刪除,如圖3所述,F(xiàn)4聚合文件跨越了Day1和Day2,老化刪除時只需刪 除處于Day1部分的小分片文件,對應(yīng)的描述信息也要被老化刪除。也就是說根據(jù)對應(yīng)的各小分片文件描述信息中的起止時間判斷哪些小分片文件需要被老化刪除;對于聚合文件剛好整個被老化刪除時,根據(jù)最后一個小分片文件播放結(jié)束時間判斷哪些聚合文件需要被老化刪除。

實施例二:

請參考圖4,圖4為本實施例提供的流媒體頻道回看方法流程圖。

本實施例在實施例一的基礎(chǔ)上,對流媒體頻道回看方法進(jìn)行說明,其具體步驟如下:

S41,接收終端發(fā)送的頻道回看請求,該頻道回看請求包括文件定位信息;

S42,根據(jù)所述文件定位信息,從通過如權(quán)利要求1-6任一項所述的流媒體頻道錄制方法得到的信息描述庫中定位出對應(yīng)的小分片文件在所述文件系統(tǒng)中的資源位置信息;

S43,將所述資源位置信息發(fā)送給所述終端以供該終端獲取對應(yīng)的小分片文件進(jìn)行播放。

對于上述步驟,本實施例通過匹配實施例一中存儲的小分片文件及其描述信息,定位出終端所需的小分片文件描述信息,使得終端能準(zhǔn)確獲取所需小分片文件進(jìn)行播放,從而提高了流媒體頻道回看服務(wù)的磁盤輸入/輸出吞吐能力。

進(jìn)一步的,上述步驟中提到的文件定位信息包括頻道號、碼率和起止時間;信息描述庫包括小分片文件在所述聚合文件中的描述信息,該描述信息包括頻道號、碼率、在聚合文件中的字節(jié)偏移量信息、小分片文件的存儲路徑和起止時間;資源位置信息包括總字節(jié)偏移量和第一個小分片文件的存儲路徑。這里的總字節(jié)偏移量是指,根據(jù)終端發(fā)送的請求,在信息描述庫中找到對應(yīng)的小分片描述信息,通過第一個小分片文件描述信息中的字節(jié)偏移量信息和最后一個 小分片文件的描述信息中的字節(jié)偏移量,得到終端請求的小分片文件總字節(jié)偏移量信息。

此外,請參考圖5,圖5為本實施提供的根據(jù)終端請求在文件系統(tǒng)和信息描述庫中的信息匹配流程圖。該信息匹配的具體步驟如下:

S51,將所述文件定位信息中的頻道號與所述信息描述庫中描述信息的頻道號進(jìn)行匹配,得到該頻道下的小分片文件描述信息;

S52,將所述文件定位信息中的碼率與所述該頻道下的小分片文件描述信息中的碼率進(jìn)行匹配,得到該頻道該碼率下的小分片文件描述信息;

S53,將所述文件定位信息中的起止時間與所述該頻道該碼率下的小分片文件描述信息中的起止時間進(jìn)行匹配,得到該頻道該碼率該起止時間段內(nèi)的小分片文件描述信息;

S54,根據(jù)所述該頻道該碼率該起止時間段內(nèi)的每個小分片文件描述信息中的字節(jié)偏移量信息和小分片文件存儲路徑,計算出所述該頻道該碼率該起止時間段內(nèi)小分片文件的總字節(jié)偏移量,并查找出所述該頻道該碼率該起止時間段內(nèi)第一個小分片文件的存儲路徑;

S55,根據(jù)所述總字節(jié)偏移量和第一個小分片文件的存儲路徑,從所述文件系統(tǒng)中定位出對應(yīng)的小分片文件的具體位置。

實施例三:

請參考圖6,圖6為本實施例提供的流媒體頻道錄制裝置示意圖。

在本實施例中,流媒體頻道錄制裝置包括:

獲取模塊61,用于根據(jù)錄制任務(wù)從流媒體源站獲取對應(yīng)的小分片文件;

處理模塊62,用于將獲取的小分片文件按預(yù)設(shè)聚合規(guī)則存儲于聚合文件中,所述聚合文件存儲于文件系統(tǒng);并將所述小分片文件在所述聚合文件中的描述 信息存儲于信息描述庫中。

所述信息描述庫既可存放于文件系統(tǒng)中,也可存放于數(shù)據(jù)庫中亦或存放于其他地方。

該錄制任務(wù)從管理裝置中獲取,包括頻道號和流媒體頻道源站主索引文件地址信息等,通過頻道號和流媒體源站主索引地址信息,獲取該頻道下主索引文件,并對主索引文件進(jìn)行解析,得到該頻道下的碼率信息和子索引文件下載地址信息;根據(jù)子索引文件下載地址信息,得到該頻道該碼率下的各子索引文件;對各子索引文件進(jìn)行解析,得到該頻道該碼率下各小分片文件下載地址信息,最后依次訪問各小分片文件下載地址信息,獲取小分片文件。

進(jìn)一步的,處理模塊62包括:

選擇子模塊621,用于選擇所述小分片文件采用累積播放時長聚合規(guī)則、存入分片累積個數(shù)聚合規(guī)則和存入分片累積占用字節(jié)聚合規(guī)則中的哪一種聚合規(guī)則存儲于聚合文件;

處理子模塊622,用于根據(jù)所述選擇子模塊621選擇的聚合規(guī)則,對小分片文件進(jìn)行存儲。

上述的三種預(yù)設(shè)聚合規(guī)則均是將許多小分片文件聚合成一個大文件進(jìn)行存儲,這種聚合規(guī)則并不限定于上述三種,也可以通過其他方式進(jìn)行聚合,聚合機制類似,對于其他聚合規(guī)則,也在本實施例保護(hù)的范圍內(nèi),這里不再詳細(xì)贅述。

進(jìn)一步的,處理子模塊622包括:

第一處理單元6221,用于根據(jù)所述選擇子模塊721選擇的累積播放時長聚合規(guī)則,將小分片文件依次按照字節(jié)偏移量存入聚合文件,當(dāng)存入的小分片文件累計播放時長等于預(yù)設(shè)累積播放時長閾值時,將后續(xù)的小分片文件存入下一 聚合文件中;

第二處理單元6222,用于根據(jù)所述選擇子模塊621選擇的存入分片累積個數(shù)聚合規(guī)則,將小分片文件依次按照字節(jié)偏移量存入聚合文件,當(dāng)存入的小分片文件累積個數(shù)等于預(yù)設(shè)累積個數(shù)閾值時,將后續(xù)的小分片文件存入下一聚合文件中;

第三處理單元6223,用于根據(jù)所述選擇子模塊621選擇的存入分片累積占用字節(jié)聚合規(guī)則,將小分片文件依次按照字節(jié)偏移量存入聚合文件,當(dāng)存入的小分片文件累積占用字節(jié)等于預(yù)設(shè)累計占用字節(jié)閾值時,將后續(xù)的小分片文件存入下一聚合文件中。在本實施例中,優(yōu)選地,采用第一處理單元6221對小分片文件進(jìn)行存儲。

此外,請參考圖2,對于小分片文件按照字節(jié)偏移量依次存入聚合文件,其存儲方式如下:假設(shè)第一個小分片文件的起始值為0,所有小分片文件的字節(jié)偏移量均為2,將第一個小分片文件存放于聚合文件中,再將第二小分片文件存入其中,該小分片文件起始值為2,依次類推,直到聚合文件達(dá)到系統(tǒng)設(shè)定的存儲閾值N。新建另一個聚合文件,繼續(xù)將后續(xù)的小分片文件存入新建的聚合文件,該聚合文件中第一個小分片文件的起始值依然為0,按照之前聚合文件的存儲方式,依次將各小分片文件存入新建的聚合文件中,直到該聚合文件達(dá)到系統(tǒng)設(shè)定的存儲閾值N。此外,小分片文件按照字節(jié)偏移量進(jìn)行存儲的方式不限于上述兩種方式,也可通過其他方式實現(xiàn)小分片文件按字節(jié)偏移量存儲的方式,對于其他存儲方式,也在本實施例保護(hù)的范圍內(nèi),這里不再詳細(xì)贅述。

請參考圖3,假設(shè)聚合文件的回看時長為4天,Day1存儲了A個小分片文件,當(dāng)前回看時長是5天,故需要老化刪除Day1中的聚合文件,當(dāng)錄制裝置錄制的流媒體頻道直播碼流超過系統(tǒng)設(shè)定期限時,就會將超過的部分老化刪除, 具體老化刪除過程如下:

獲取預(yù)設(shè)的有效期回看時長閾值,根據(jù)所述有效期回看時長閾值和所述各小分片文件的描述信息確定出在所述有效期回看時長閾值之前的老化小分片文件,并從所述文件系統(tǒng)中刪除與所述老化小分片文件對應(yīng)的聚合文件;所述老化小分片文件為超過有效期回看時長閾值需要被刪除的文件。

在對聚合文件進(jìn)行老化刪除時,存在聚合文件中的部分小分片文件需要被老化刪除,如圖3所述,F(xiàn)4聚合文件跨越了Day1和Day2,老化刪除時只需刪除處于Day1部分的小分片文件,對應(yīng)的描述信息也需要被老化刪除。也就是說根據(jù)對應(yīng)的各小分片文件描述信息中的起止時間判斷哪些小分片文件需要被老化刪除;對于聚合文件剛好整個被老化刪除時,根據(jù)最后一個小分片文件播放結(jié)束時間判斷哪些聚合文件需要被老化刪除。

實施例四:

請參考圖7,圖7為本實施例提供的流媒體頻道回看裝置示意圖。

在本實施例中,流媒體頻道回看裝置包括:

接收模塊71,用于接收終端發(fā)送的頻道回看請求,所述頻道回看請求包括文件定位信息;

定位模塊72,用于根據(jù)所述文件定位信息,從通過如權(quán)利要求9-11任一項所述的流媒體頻道錄制裝置得到的信息描述庫中定位出對應(yīng)的小分片文件在所述文件系統(tǒng)中的資源位置信息;

發(fā)送模塊73,用于將所述資源位置信息發(fā)送給所述終端以供該終端獲取對應(yīng)的小分片文件進(jìn)行播放。

進(jìn)一步的,文件定位信息包括頻道號、碼率和起止時間;信息描述庫包括小分片文件在所述聚合文件中的描述信息,該描述信息包括頻道號、碼率、在 聚合文件中的字節(jié)偏移量信息、小分片文件的存儲路徑和起止時間;資源位置信息包括總字節(jié)偏移量和第一個小分片文件的存儲路徑。對于總字節(jié)偏移量,根據(jù)終端發(fā)送的請求,在信息描述庫中找到對應(yīng)的小分片描述信息,通過第一個小分片文件描述信息中的字節(jié)偏移量信息和最后一個小分片文件的描述信息中的字節(jié)偏移量,得到終端請求的小分片文件總字節(jié)偏移量信息。

進(jìn)一步的,定位模塊72還包括:

第一定位子模塊721,用于將所述文件定位信息中的頻道號與所述信息描述庫中描述信息的頻道號進(jìn)行匹配,得到該頻道下的小分片文件描述信息;

第二定位子模塊722,用于將所述文件定位信息中的碼率與所述該頻道下的小分片文件描述信息中的碼率進(jìn)行匹配,得到該頻道該碼率下的小分片文件描述信息;

第三定位子模塊723,用于將所述文件定位信息中的起止時間與所述該頻道該碼率下的小分片文件描述信息中的起止時間進(jìn)行匹配,得到該頻道該碼率該起止時間段內(nèi)的小分片文件描述信息;

第四定位子模塊724,用于根據(jù)所述該頻道該碼率該起止時間段內(nèi)的每個小分片文件描述信息中的字節(jié)偏移量信息和小分片文件存儲路徑,計算出所述該頻道該碼率該起止時間段內(nèi)小分片文件的總字節(jié)偏移量,并查找出所述該頻道該碼率該起止時間段內(nèi)第一個小分片文件的存儲路徑;

第五定位子模塊725,用于根據(jù)所述總字節(jié)偏移量和第一個小分片文件的存儲路徑,從所述文件系統(tǒng)中定位出對應(yīng)的小分片文件的具體位置。

實施例五:

請參考圖8,圖8為實施例提供的服務(wù)器示意圖。

本實施例在實施例三和實施例四的基礎(chǔ)上,對服務(wù)器的結(jié)構(gòu)進(jìn)行說明,該服 務(wù)器包括流媒體頻道錄制裝置和回看裝置。錄制裝置將從管理裝置中獲取的錄制任務(wù)存入信息描述庫,并定時從該信息描述庫中獲取所有的錄制信息,然后根據(jù)該錄制信息獲取主索引文件,并依次獲取到子索引文件,以及子索引文件中的小分片文件。然后該錄制裝置將將獲取的小分片文件按預(yù)設(shè)聚合規(guī)則存儲于聚合文件中,所述聚合文件存儲于文件系統(tǒng)中,并將對應(yīng)的小分片文件在聚合文件中的描述信息存儲于信息描述庫中;

回看裝置接收到終端發(fā)送的頻道回看請求后,根據(jù)所述頻道回看請求,按照錄制裝置建立的錄制機制,從所述信息描述庫中獲取與終端請求對應(yīng)的小分片文件描述信息,并根據(jù)獲取到的描述信息定位出對應(yīng)的小分片文件在所述文件系統(tǒng)中的資源位置信息,并將所述資源位置信息其發(fā)送給所述終端以供該終端獲取對應(yīng)的小分片文件進(jìn)行播放。

此外,本實施例還提供了一個系統(tǒng),該系統(tǒng)包括管理裝置、錄制裝置和回看裝置;

管理裝置下發(fā)頻道錄制消息給錄制裝置;

錄制裝置根據(jù)頻道錄制消息對流媒體頻道直播碼流進(jìn)行錄制,將錄制的內(nèi)容存入文件系統(tǒng)和信息描述庫;

回看裝置從信息描述庫中找到用戶請求的小分片文件對應(yīng)的描述信息,然后從文件系統(tǒng)中根據(jù)該描述信息找到對應(yīng)的小分片文件,并發(fā)送給終端用戶進(jìn)行播放。

以上內(nèi)容是結(jié)合具體的實施方式對本發(fā)明所作的進(jìn)一步詳細(xì)說明,不能認(rèn)定本發(fā)明的具體實施只局限于這些說明。對于本發(fā)明所屬技術(shù)領(lǐng)域的普通技術(shù)人員來說,在不脫離本發(fā)明構(gòu)思的前提下,還可以做出若干簡單推演或替換, 都應(yīng)當(dāng)視為屬于本發(fā)明的保護(hù)范圍。

當(dāng)前第1頁1 2 3 
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1