時(shí)移實(shí)現(xiàn)方法及裝置、服務(wù)器的制造方法
【專利摘要】一種時(shí)移實(shí)現(xiàn)方法及裝置,所述方法包括:當(dāng)確定在直播有效期內(nèi)時(shí),從服務(wù)器的內(nèi)存中讀取所述視頻的切片文件并播放;當(dāng)確定在非直播有效期內(nèi)時(shí),從所述服務(wù)器的硬盤中讀取所述切片文件對(duì)應(yīng)的回看文件片組并播放。上述的方案可以提高基于HLS協(xié)議的視頻直播回看的效率,并節(jié)約資源。
【專利說(shuō)明】時(shí)移實(shí)現(xiàn)方法及裝置、服務(wù)器
【技術(shù)領(lǐng)域】
[0001] 本發(fā)明涉及文件更新【技術(shù)領(lǐng)域】,特別是涉及一種時(shí)移實(shí)現(xiàn)方法及裝置、服務(wù)器。
【背景技術(shù)】
[0002] HLS (HTTP Live Streaming,簡(jiǎn)稱HLS)協(xié)議,在互聯(lián)網(wǎng)上播放音視頻流媒體時(shí),根 據(jù)當(dāng)前互聯(lián)網(wǎng)帶寬進(jìn)行自動(dòng)碼率調(diào)整,用以保證用戶可以流暢地觀看互聯(lián)網(wǎng)視頻。HLS協(xié)議 由美國(guó)蘋果(Apple)公司創(chuàng)立,針對(duì)公司的iPhone, iPad等設(shè)備設(shè)計(jì)的,基于HTTP協(xié)議的 互聯(lián)網(wǎng)音視頻傳輸交互協(xié)議。
[0003] 時(shí)移技術(shù)是"過(guò)去的(或延遲的)直播",即用戶可以在直播時(shí)暫停一段時(shí)間,再次 開始播放即進(jìn)入時(shí)移,或者,也可以選擇過(guò)去某個(gè)時(shí)間點(diǎn)開始"直播",上述兩種情況均可以 認(rèn)為是"移動(dòng)到過(guò)去的某個(gè)時(shí)間點(diǎn)之后進(jìn)行直播"。
[0004] 現(xiàn)有技術(shù)中,內(nèi)容分發(fā)網(wǎng)絡(luò)(Content Delivery Network,(DN)緩存的直播數(shù)據(jù)可 以兼作向用戶提供回看服務(wù)。但是,由于緩存存儲(chǔ)位置的不同,使得CDN無(wú)法判斷位置各異 的緩存文件內(nèi)容是否一致,只能兩次回源進(jìn)行文件更新并緩存,造成帶寬和緩存容量增加。 因此,現(xiàn)有技術(shù)中基于HLS協(xié)議的時(shí)移實(shí)現(xiàn)方法存在著效率低下且浪費(fèi)資源的問題。
【發(fā)明內(nèi)容】
[0005] 本發(fā)明實(shí)施例解決的問題是如何提高基于HLS協(xié)議的視頻直播回看的效率,并節(jié) 約資源。
[0006] 為解決上述問題,本發(fā)明實(shí)施例提供了一種時(shí)移實(shí)現(xiàn)方法,所述方法包括:
[0007] 創(chuàng)建流媒體文件的直播流媒體文件和回看流媒體文件的統(tǒng)一訪問地址;
[0008] 根據(jù)是否在流媒體切片文件的直播有效期內(nèi),將所述統(tǒng)一訪問地址指向服務(wù)器內(nèi) 存或硬盤中的流媒體切片文件,獲取相應(yīng)的流媒體切片文件并進(jìn)行輸出顯示。
[0009] 可選地,所述根據(jù)是否在流媒體切片文件的直播有效期內(nèi),將所述統(tǒng)一訪問地址 指向內(nèi)存或硬盤中的流媒體切片文件,獲取相應(yīng)的流媒體切片文件并進(jìn)行輸出顯示,包 括:
[0010] 當(dāng)確定在流媒體切片文件的直播有效期內(nèi)時(shí),將所述一訪問地址指向所述內(nèi)存中 的流媒體切片文件,并獲取所述統(tǒng)一訪問地址指向的內(nèi)存中的流媒體切片文件進(jìn)行輸出顯 示;
[0011] 當(dāng)確定在非直播有效期內(nèi)時(shí),將所述一訪問地址指向所述內(nèi)存中的流媒體切片文 件,并獲取所述統(tǒng)一訪問地址指向的硬盤中的流媒體切片文件進(jìn)行輸出顯示,所述流媒體 切片文件包括多個(gè)按照預(yù)定順序排列的文件片,所述多個(gè)按照預(yù)定順序排列的文件片通過(guò) 將所述切片文件按照預(yù)定時(shí)間長(zhǎng)度進(jìn)行劃分得到。
[0012] 可選地,所述當(dāng)確定在非直播有效期內(nèi)時(shí),將所述一訪問地址指向所述內(nèi)存中的 流媒體切片文件,并獲取所述統(tǒng)一訪問地址指向的硬盤中的流媒體切片文件進(jìn)行輸出顯 示,包括:
[0013] 在非直播有效期內(nèi)時(shí),獲取回看請(qǐng)求及回看時(shí)間點(diǎn);
[0014] 獲取所述硬盤中與所述回看時(shí)間點(diǎn)對(duì)應(yīng)的切片文件并進(jìn)行輸出顯示。
[0015] 可選地,所述預(yù)定時(shí)間長(zhǎng)度為10s。
[0016] 可選地,所述統(tǒng)一訪問地址為訪問軟鏈接。
[0017] 本發(fā)明實(shí)施例還提供了一種時(shí)移子裝置時(shí)移實(shí)現(xiàn)裝置,所述裝置包括:
[0018] 創(chuàng)建單元,適于創(chuàng)建流媒體文件的直播流媒體文件和回看流媒體文件的統(tǒng)一訪問 地址;
[0019] 時(shí)移單元,適于根據(jù)是否在流媒體切片文件的直播有效期內(nèi),將所述統(tǒng)一訪問地 址指向服務(wù)器內(nèi)存或硬盤中的流媒體切片文件,獲取相應(yīng)的流媒體切片文件并進(jìn)行輸出顯 /Jn 〇
[0020] 可選地,所述時(shí)移單元包括:
[0021] 直播子單元,適于當(dāng)確定在流媒體切片文件的直播有效期內(nèi)時(shí),將所述一訪問地 址指向所述內(nèi)存中的流媒體切片文件,并獲取所述統(tǒng)一訪問地址指向的內(nèi)存中的流媒體切 片文件進(jìn)行輸出顯示;
[0022] 時(shí)移子單元,當(dāng)確定在非直播有效期內(nèi)時(shí),將所述一訪問地址指向所述內(nèi)存中的 流媒體切片文件,并獲取所述統(tǒng)一訪問地址指向的硬盤中的流媒體切片文件進(jìn)行輸出顯 示,所述流媒體切片文件包括多個(gè)按照預(yù)定順序排列的文件片,所述多個(gè)按照預(yù)定順序排 列的文件片通過(guò)將所述切片文件按照預(yù)定時(shí)間長(zhǎng)度進(jìn)行劃分得到。
[0023] 可選地,所述時(shí)移子單元包括:
[0024] 第一獲取模塊,適于在非直播有效期內(nèi)時(shí),獲取回看請(qǐng)求及回看時(shí)間點(diǎn);
[0025] 第二獲取模塊,適于獲取所述硬盤中與所述回看時(shí)間點(diǎn)對(duì)應(yīng)的切片文件并進(jìn)行輸 出顯示。
[0026] 可選地,所述預(yù)定時(shí)間長(zhǎng)度為10s。
[0027] 可選地,所述統(tǒng)一訪問地址為訪問軟鏈接。
[0028] 本發(fā)明實(shí)施例還提供了一種服務(wù)器,所述服務(wù)器包括上述的視頻直播回看裝置。
[0029] 與現(xiàn)有技術(shù)相比,本發(fā)明的技術(shù)方案具有以下的優(yōu)點(diǎn):
[0030] 由于將直播有效期內(nèi)的切片文件存放在服務(wù)器的內(nèi)存中,而將非直播有效期內(nèi)的 切片文件存放在服務(wù)器的硬盤中,并建立直播回看統(tǒng)一訪問地址,根據(jù)是否在流媒體切片 文件的直播有效期內(nèi),修改所述統(tǒng)一訪問地址的指向,來(lái)獲取內(nèi)存或者硬盤中的流媒體切 片文件,因此,可以提高視頻內(nèi)容的提供效率,提高視頻直播和回看的速度,并可以有效節(jié) 省資源。
[0031] 進(jìn)一步地,通過(guò)動(dòng)態(tài)改變軟鏈接指向的方式在直播有效期和非有效期內(nèi)向用戶提 供用戶鏈接至服務(wù)器的內(nèi)存或硬盤中獲取視頻直播或者回看的內(nèi)容,用戶通過(guò)所述軟鏈 接,而無(wú)需改變?cè)L問位置進(jìn)行視頻內(nèi)容的直播和回看,方便高效。
【專利附圖】
【附圖說(shuō)明】
[0032] 圖1是本發(fā)明實(shí)施例中的一種時(shí)移實(shí)現(xiàn)方法的流程圖;
[0033] 圖2是本發(fā)明實(shí)施例中的另一種時(shí)移實(shí)現(xiàn)方法的流程圖;
[0034] 圖3是本發(fā)明實(shí)施例中的一種視頻直播回看裝置的結(jié)構(gòu)示意圖;
[0035] 圖4示出了本發(fā)明實(shí)施例中的時(shí)移單元的結(jié)構(gòu)示意圖;
[0036] 圖5示出了本發(fā)明實(shí)施例中的時(shí)移子單元的結(jié)構(gòu)示意圖。
【具體實(shí)施方式】
[0037] 為解決現(xiàn)有技術(shù)中存在的上述問題,本發(fā)明實(shí)施例采用的技術(shù)方案通過(guò)按照先偽 源節(jié)點(diǎn)后邊緣節(jié)點(diǎn)的順序下發(fā)緩存文件更新通知,從而可以有效避免緩存文件更新不徹底 情況的發(fā)生。
[0038] 為使本發(fā)明的上述目的、特征和優(yōu)點(diǎn)能夠更為明顯易懂,下面結(jié)合附圖對(duì)本發(fā)明 的具體實(shí)施例做詳細(xì)的說(shuō)明。
[0039] 圖1示出了本發(fā)明實(shí)施例中的一種時(shí)移實(shí)現(xiàn)方法的流程圖。如圖1所示的緩存文 件更新方法,可以包括:
[0040] 步驟SlOl :判斷是否在當(dāng)前切片文件的直播有效期內(nèi)。
[0041] 在具體實(shí)施中,切片文件可以通過(guò)相應(yīng)的切片服務(wù)將所述視頻對(duì)應(yīng)的媒體數(shù)據(jù)分 割得到。
[0042] 在具體實(shí)施中,當(dāng)判斷結(jié)果為是時(shí),可以執(zhí)行步驟S102,反之,則可以執(zhí)行步驟 S103。
[0043] 步驟S102 :從服務(wù)器的內(nèi)存中讀取所述視頻的切片文件并播放。
[0044] 在具體實(shí)施中,當(dāng)確定在所述切片文件的直播有效期內(nèi)時(shí),可以直接從服務(wù)器的 內(nèi)存中下載所述切片文件并播放。
[0045] 步驟S103 :從所述服務(wù)器的硬盤中讀取所述切片文件對(duì)應(yīng)的回看文件片組并播 放。
[0046] 在具體實(shí)施中,當(dāng)確定在所述切片文件的非直播有效期內(nèi)時(shí),可以直接從服務(wù)器 的硬盤中下載所述切片文件對(duì)應(yīng)的回看文件片組并播放。
[0047] 圖2示出了本發(fā)明實(shí)施例中的另一種時(shí)移實(shí)現(xiàn)方法的流程圖。如圖2所示的時(shí)移 實(shí)現(xiàn)方法,可以包括:
[0048] 步驟S201 :判斷是否在當(dāng)前切片文件的直播有效期內(nèi)。
[0049] 在具體實(shí)施中,所述當(dāng)前切片文件的直播有效期可以根據(jù)實(shí)際的需要進(jìn)行設(shè)置, 例如,可以為1分鐘或3分鐘等。
[0050] 步驟S202 :從服務(wù)器的內(nèi)存中讀取所述視頻的切片文件并播放。
[0051] 在本發(fā)明一實(shí)施例中,基于HLS協(xié)議的互聯(lián)網(wǎng)視頻對(duì)應(yīng)的媒體數(shù)據(jù)的切片文件存 儲(chǔ)在內(nèi)存中,當(dāng)確定在直播有效期內(nèi)時(shí),可以直接從服務(wù)器的內(nèi)存中讀取相應(yīng)的切片文件 并播放,可以有效提高視頻直播的實(shí)時(shí)性。
[0052] 步驟S203 :獲取回看請(qǐng)求及回看時(shí)間點(diǎn)。
[0053] 在具體實(shí)施中,當(dāng)確定非在當(dāng)前切片文件的直播有效期內(nèi)時(shí),可以通過(guò)用戶發(fā)送 的視頻回看請(qǐng)求,可以獲取回看時(shí)間點(diǎn)的信息。
[0054] 步驟S204 :獲取所述硬盤中與所述回看時(shí)間點(diǎn)對(duì)應(yīng)的回看文件片組并播放。
[0055] 在具體實(shí)施中,所述回看文件片組中包括多個(gè)按照預(yù)定順序排列的文件片,其中, 所述回看文件片組包括多個(gè)按照預(yù)定順序排列的文件片,所述多個(gè)按照預(yù)定順序排列的文 件片通過(guò)將所述切片文件按照預(yù)定時(shí)間長(zhǎng)度進(jìn)行劃分得到,且以所述回看時(shí)間點(diǎn)對(duì)應(yīng)的文 件片作為開頭。
[0056] 當(dāng)在非直播有效期時(shí),通過(guò)建立回看文件片組與回看時(shí)間點(diǎn)的對(duì)應(yīng)關(guān)系,通過(guò)獲 取的用戶的回看時(shí)間點(diǎn)在硬盤中查找相應(yīng)的回看文件片組進(jìn)行下載并播放。
[0057] 在具體實(shí)施中,由于回看文件片組與回看時(shí)間點(diǎn)的對(duì)應(yīng)關(guān)系需要占用較大的存儲(chǔ) 空間,因此,可以將回看文件片組與回看時(shí)間點(diǎn)的對(duì)應(yīng)關(guān)系存儲(chǔ)在服務(wù)器的硬盤中,以節(jié)省 內(nèi)存空間,提1?服務(wù)器運(yùn)行的的性能。
[0058] 下面以實(shí)現(xiàn)一小時(shí)的時(shí)移為例,對(duì)本發(fā)明實(shí)施例中的時(shí)移實(shí)現(xiàn)方法進(jìn)行詳細(xì)的介 紹。
[0059] 根據(jù)HLS協(xié)議的規(guī)定,視頻可以分為"索弓丨"和"內(nèi)容"兩部分。內(nèi)容即是實(shí)際可 以播放的視頻切片,索引是用于描述視頻切片屬性和位置的m3u8文件。其中一級(jí)索引m3u8 用于描述碼率信息,二級(jí)索引m3u8用于描述(視頻切片)文件名。
[0060] 與點(diǎn)播相比,直播僅僅是二級(jí)索引m3u8文件的末尾沒有EXT-X-ENDLIST標(biāo)志。在 HLS協(xié)議中規(guī)定,當(dāng)m3u8文件的中未EXT-X-ENDLIST出現(xiàn),即意味著m3u8沒有結(jié)束,播放器 需要嘗試再次下載二級(jí)m3u8文件,直播可以通過(guò)不斷修改二級(jí)索引m3u8文件內(nèi)容的方式, 來(lái)進(jìn)行視頻內(nèi)容的更新。
[0061] 其中,1小時(shí)的時(shí)移對(duì)應(yīng)可以選擇的時(shí)間跨度為3600秒,按照切片文件的視頻切 片的的時(shí)間長(zhǎng)度的最小單位是10秒計(jì)算,因此,"1小時(shí)"時(shí)移對(duì)應(yīng)360種可以選擇的時(shí)移 起始時(shí)間點(diǎn)(回看時(shí)間點(diǎn))。因此,首先可以建立360組時(shí)移二級(jí)索引m3u8文件。
[0062] 由于每相差10秒的時(shí)移實(shí)際上是相差一片TS,以dl.m3u8?d360.m3u8二級(jí)索引 m3u8文件的名稱,二級(jí)索引m3u8的內(nèi)容如下:
[0063] 表 1
[0064]
【權(quán)利要求】
1. 一種時(shí)移實(shí)現(xiàn)方法,其特征在于,包括: 創(chuàng)建流媒體文件的直播流媒體文件和回看流媒體文件的統(tǒng)一訪問地址; 根據(jù)是否在流媒體切片文件的直播有效期內(nèi),將所述統(tǒng)一訪問地址指向服務(wù)器內(nèi)存或 硬盤中的流媒體切片文件,獲取相應(yīng)的流媒體切片文件并進(jìn)行輸出顯示。
2. 根據(jù)權(quán)利要求1所述的時(shí)移實(shí)現(xiàn)方法,其特征在于,所述根據(jù)是否在流媒體切片文 件的直播有效期內(nèi),將所述統(tǒng)一訪問地址指向內(nèi)存或硬盤中的流媒體切片文件,獲取相應(yīng) 的流媒體切片文件并進(jìn)行輸出顯示,包括: 當(dāng)確定在流媒體切片文件的直播有效期內(nèi)時(shí),將所述一訪問地址指向所述內(nèi)存中的流 媒體切片文件,并獲取所述統(tǒng)一訪問地址指向的內(nèi)存中的流媒體切片文件進(jìn)行輸出顯示; 當(dāng)確定在非直播有效期內(nèi)時(shí),將所述一訪問地址指向所述內(nèi)存中的流媒體切片文件, 并獲取所述統(tǒng)一訪問地址指向的硬盤中的流媒體切片文件進(jìn)行輸出顯示,所述流媒體切片 文件包括多個(gè)按照預(yù)定順序排列的文件片,所述多個(gè)按照預(yù)定順序排列的文件片通過(guò)將所 述切片文件按照預(yù)定時(shí)間長(zhǎng)度進(jìn)行劃分得到。
3. 根據(jù)權(quán)利要求1所述的時(shí)移實(shí)現(xiàn)方法,其特征在于,所述當(dāng)確定在非直播有效期內(nèi) 時(shí),將所述一訪問地址指向所述內(nèi)存中的流媒體切片文件,并獲取所述統(tǒng)一訪問地址指向 的硬盤中的流媒體切片文件進(jìn)行輸出顯示,包括:在非直播有效期內(nèi)時(shí),獲取回看請(qǐng)求及回 看時(shí)間點(diǎn); 獲取所述硬盤中與所述回看時(shí)間點(diǎn)對(duì)應(yīng)的切片文件并進(jìn)行輸出顯示。
4. 根據(jù)權(quán)利要求1所述的時(shí)移實(shí)現(xiàn)方法,其特征在于,所述預(yù)定時(shí)間長(zhǎng)度為10s。
5. 根據(jù)權(quán)利要求1所述的時(shí)移實(shí)現(xiàn)方法,其特征在于,所述統(tǒng)一訪問地址為訪問軟鏈 接。
6. -種時(shí)移子裝置時(shí)移實(shí)現(xiàn)裝置,其特征在于,包括: 創(chuàng)建單元,適于創(chuàng)建流媒體文件的直播流媒體文件和回看流媒體文件的統(tǒng)一訪問地 址; 時(shí)移單元,適于根據(jù)是否在流媒體切片文件的直播有效期內(nèi),將所述統(tǒng)一訪問地址指 向服務(wù)器內(nèi)存或硬盤中的流媒體切片文件,獲取相應(yīng)的流媒體切片文件并進(jìn)行輸出顯示。
7. 根據(jù)權(quán)利要求6所述的時(shí)移子裝置時(shí)移實(shí)現(xiàn)裝置,其特征在于,所述時(shí)移單元包括: 直播子單元,適于當(dāng)確定在流媒體切片文件的直播有效期內(nèi)時(shí),將所述一訪問地址指 向所述內(nèi)存中的流媒體切片文件,并獲取所述統(tǒng)一訪問地址指向的內(nèi)存中的流媒體切片文 件進(jìn)行輸出顯示; 時(shí)移子單元,當(dāng)確定在非直播有效期內(nèi)時(shí),將所述一訪問地址指向所述內(nèi)存中的流媒 體切片文件,并獲取所述統(tǒng)一訪問地址指向的硬盤中的流媒體切片文件進(jìn)行輸出顯示,所 述流媒體切片文件包括多個(gè)按照預(yù)定順序排列的文件片,所述多個(gè)按照預(yù)定順序排列的文 件片通過(guò)將所述切片文件按照預(yù)定時(shí)間長(zhǎng)度進(jìn)行劃分得到。
8. 根據(jù)權(quán)利要求6所述的時(shí)移子裝置時(shí)移實(shí)現(xiàn)裝置,其特征在于,所述時(shí)移子單元包 括: 第一獲取模塊,適于在非直播有效期內(nèi)時(shí),獲取回看請(qǐng)求及回看時(shí)間點(diǎn);第二獲取模 塊,適于獲取所述硬盤中與所述回看時(shí)間點(diǎn)對(duì)應(yīng)的切片文件并進(jìn)行輸出顯示。
9. 根據(jù)權(quán)利要求6所述的時(shí)移子裝置時(shí)移實(shí)現(xiàn)裝置,其特征在于,所述預(yù)定時(shí)間長(zhǎng)度 為 10s。
10. 根據(jù)權(quán)利要求6所述的時(shí)移子裝置時(shí)移實(shí)現(xiàn)裝置,其特征在于,所述統(tǒng)一訪問地址 為訪問軟鏈接。
11. 一種服務(wù)器,其特征在于,包括權(quán)利要求6-10任一項(xiàng)所述的視頻直播回看裝置。
【文檔編號(hào)】H04N21/458GK104410879SQ201410733753
【公開日】2015年3月11日 申請(qǐng)日期:2014年12月4日 優(yōu)先權(quán)日:2014年12月4日
【發(fā)明者】何茂永, 徐偉, 陳奕奕, 田俊霞, 楊騰駿, 王灝 申請(qǐng)人:百視通網(wǎng)絡(luò)電視技術(shù)發(fā)展有限責(zé)任公司