本發(fā)明實(shí)施例涉及數(shù)據(jù)存儲技術(shù)領(lǐng)域,尤其涉及一種節(jié)目錄制方法及裝置。
背景技術(shù):
當(dāng)前在節(jié)目錄制過程中,都是選擇一個磁盤來完成錄制任務(wù),而當(dāng)錄制設(shè)備中的單個磁盤的剩余空間均小于錄制所需的空間時,則無法執(zhí)行錄制任務(wù),但是,此時錄制設(shè)備中的多個磁盤的剩余空間之和則可能大于節(jié)目錄制所需的空間,從而導(dǎo)致磁盤空間的利用率降低,用戶體驗(yàn)較差的問題。
技術(shù)實(shí)現(xiàn)要素:
本發(fā)明實(shí)施例提供一種節(jié)目錄制方法及裝置,用以提高磁盤空間利用率和用戶體驗(yàn)。
本發(fā)明實(shí)施例第一方面提供一種基于節(jié)目錄制方法,該方法包括:
當(dāng)啟動錄制目標(biāo)節(jié)目前,根據(jù)目標(biāo)節(jié)目所屬的清晰度類型配置的碼率以及所述目標(biāo)節(jié)目的時長計算所述目標(biāo)節(jié)目的待存儲的數(shù)據(jù)量;
若本地可用于存儲錄制節(jié)目的單個磁盤的剩余空間均小于所述待存儲的數(shù)據(jù)量,則從本地查找多個可用磁盤,所述多個可用磁盤的剩余空間之和大于或等于所述目標(biāo)節(jié)目的數(shù)據(jù)量;
將所述目標(biāo)節(jié)目分段存儲在所述多個可用磁盤中。
本發(fā)明實(shí)施例第二方面提供一種節(jié)目錄制裝置,該裝置包括:
第一數(shù)據(jù)處理模塊,用于在啟動錄制目標(biāo)節(jié)目前,根據(jù)目標(biāo)節(jié)目所屬的清晰度類型配置的碼率以及所述目標(biāo)節(jié)目的時長計算所述目標(biāo)節(jié)目的待存儲的數(shù)據(jù)量;
查找模塊,用于在本地可用于存儲錄制節(jié)目的單個磁盤的剩余空間均小于所述待存儲的數(shù)據(jù)量時,從本地查找多個可用磁盤,所述多個可用磁盤的剩余空間之和大于或等于所述目標(biāo)節(jié)目的數(shù)據(jù)量;
存儲模塊,用于將所述目標(biāo)節(jié)目分段存儲在所述多個可用磁盤中。
本發(fā)明實(shí)施例,通過在本地單個磁盤的剩余空間均小于目標(biāo)節(jié)目的數(shù)據(jù)量時,從本地查找剩余空間之和大于或等于目標(biāo)節(jié)目的數(shù)據(jù)量的多個磁盤,并將目標(biāo)視頻分段存儲在該多個磁盤上,從而解決了節(jié)目錄制過程中由于單個磁盤剩余空間不足所導(dǎo)致的無法錄制的問題,有效的提高了磁盤空間利用率,提高了用戶的使用體驗(yàn)。
附圖說明
為了更清楚地說明本發(fā)明實(shí)施例或現(xiàn)有技術(shù)中的技術(shù)方案,下面將對實(shí)施例或現(xiàn)有技術(shù)描述中所需要使用的附圖作簡單地介紹,顯而易見地,下面描述中的附圖僅僅是本發(fā)明的一些實(shí)施例,對于本領(lǐng)域普通技術(shù)人員來講,在不付出創(chuàng)造性勞動性的前提下,還可以根據(jù)這些附圖獲得其他的附圖。
圖1為本發(fā)明一實(shí)施例提供的節(jié)目錄制方法的流程示意圖;
圖2為本發(fā)明一實(shí)施例提供的步驟104的執(zhí)行方法流程圖;
圖3為本發(fā)明一實(shí)施例提供的節(jié)目錄制裝置的結(jié)構(gòu)示意圖;
圖4為本發(fā)明一實(shí)施例提供的存儲模塊13的結(jié)構(gòu)示意圖。
具體實(shí)施方式
下面將結(jié)合本發(fā)明實(shí)施例中的附圖,對本發(fā)明實(shí)施例中的技術(shù)方案進(jìn)行清楚、完整地描述,顯然,所描述的實(shí)施例僅僅是本發(fā)明一部分實(shí)施例,而不是全部的實(shí)施例?;诒景l(fā)明中的實(shí)施例,本領(lǐng)域普通技術(shù)人員在沒有做出創(chuàng)造性勞動前提下所獲得的所有其他實(shí)施例,都屬于本發(fā)明保護(hù)的范圍。
本發(fā)明的說明書和權(quán)利要求書的術(shù)語“包括”和“具有”以及他們的任何變形,意圖在于覆蓋不排他的包含,例如,包含了一系列步驟的過程或結(jié)構(gòu)的裝置不必限于清楚地列出的那些結(jié)構(gòu)或步驟而是可包括沒有清楚地列出的或?qū)τ谶@些過程或裝置固有的其它步驟或結(jié)構(gòu)。
圖1為本發(fā)明一實(shí)施例提供的節(jié)目錄制方法的流程示意圖,該方法可以由一種節(jié)目錄制裝置來執(zhí)行,該裝置在實(shí)際場景中可以被具體為智能電視、個人計算機(jī)等具有錄制功能的實(shí)體設(shè)備,也可以被具體為設(shè)置在該實(shí)體設(shè)備中的控制實(shí)體。如圖1所示,該方法包括如下步驟:
步驟101、當(dāng)啟動錄制目標(biāo)節(jié)目前,根據(jù)目標(biāo)節(jié)目所屬的清晰度類型配置的碼率以及所述目標(biāo)節(jié)目的時長計算所述目標(biāo)節(jié)目的待存儲的數(shù)據(jù)量。
本實(shí)施例中目標(biāo)節(jié)目的清晰度類型包括現(xiàn)有技術(shù)已制定的清晰度類型中的任意一種,比如標(biāo)清、高清、超高清等。
可選的,本實(shí)施例根據(jù)如下表達(dá)式確定目標(biāo)節(jié)目的待存儲的數(shù)據(jù)量:
待存儲的數(shù)據(jù)量=目標(biāo)節(jié)目的碼率*目標(biāo)節(jié)目的時長
其中,表達(dá)式中所涉及的目標(biāo)節(jié)目的時長是指目標(biāo)節(jié)目的錄制時長,該時長可以是用戶自行設(shè)定的,也可以是節(jié)目錄制裝置自行從電視臺上獲取到的。比如,當(dāng)目標(biāo)節(jié)目為某電視臺上播放的節(jié)目時,節(jié)目錄制裝置從該電視臺提供的節(jié)播放指南中查找獲取該目標(biāo)節(jié)目的播放時長,即錄制時長。
上述表達(dá)式中所涉及的碼率,在不同的場景下具有不同的獲取方法,下面以智能電視為例,結(jié)合不同的場景來對碼率的獲取方法進(jìn)行說明:
在一種可能的場景中,智能電視中存儲有播放目標(biāo)節(jié)目的頻道的碼率,由于同一個頻道的清晰度類型通常情況下是不變的,因此,同一個頻道中播放的節(jié)目的碼率通常情況下也是相同的,基于此,本實(shí)施例在計算目標(biāo)頻道的待存儲的數(shù)據(jù)量之前,先從本地中獲取播放目標(biāo)節(jié)目的頻道的碼率,再將該碼率配置為該目標(biāo)節(jié)目的碼率。其中,該頻道的碼率可以是智能電視在歷史播放該頻道的其他節(jié)目時,根據(jù)預(yù)設(shè)時長內(nèi)讀取到的碼流的數(shù)據(jù)量數(shù)確定的。比如,讀取一秒鐘內(nèi)收到的碼流的數(shù)據(jù)量,將其作為該頻道的碼率,或者根讀取5秒內(nèi)接收到的碼流的數(shù)據(jù)量,計算每秒接收到的碼流的數(shù)據(jù)量,將每秒接收到的碼流的數(shù)據(jù)量作為該頻道的碼率。當(dāng)然實(shí)際場景中該頻道的碼率也可以是本領(lǐng)域技術(shù)人員預(yù)先設(shè)定并存儲在智能電視中的。
可選的,為了保證已存儲的碼率具有可靠性,智能電視定期對本地存儲的播放碼率進(jìn)行更新,其更新方法與上述確定目標(biāo)頻道播放碼率的方法類似,在這里不再贅述。
在另一種可能的場景中,智能電視中未存儲播放目標(biāo)節(jié)目的頻道的碼率,但是至少存儲有一個參考頻道的播碼率,這些參考頻道均為智能電視歷史播放過的,且與播放目標(biāo)節(jié)目的頻道的清晰度類型(比如標(biāo)清、高清、超高清等)相同的頻道,參考頻道碼率的確定方法與前述場景中頻道碼率的確定方法相同在這里不再贅述。在這種場景下,目標(biāo)節(jié)目的碼率根據(jù)參考頻道的播放碼率的平均值進(jìn)行確定,比如,與目標(biāo)頻道節(jié)目類型相同的參考頻道有:參考頻道a,參考頻道b,參考頻道c,其中,參考頻道a的碼率為a,參考頻道b的碼率為b,參考頻道c的碼率為c,則目標(biāo)節(jié)目的碼率可以確定為a、b、c三者的平均值,也可以確定為三者平均值與誤差系數(shù)的乘積,該誤差系數(shù)可以根據(jù)具體需要具體設(shè)定。
步驟102、確定本地可用于存儲錄制節(jié)目的單個磁盤的剩余空間是否均小于所述待存儲的數(shù)據(jù)量,若是,則執(zhí)行步驟103。
其中,在本實(shí)施例中,節(jié)目錄制裝置上接設(shè)有一個或多個硬盤和/或u盤,每個硬盤和/或u盤中包含多個磁盤。
步驟103、從本地查找多個可用磁盤,所述多個可用磁盤的剩余空間之和大于或等于所述目標(biāo)節(jié)目的數(shù)據(jù)量。
實(shí)際場景中,當(dāng)節(jié)目錄制裝置中的單個可用磁盤的剩余空間均小于目標(biāo)節(jié)目的待存儲的數(shù)據(jù)量時,節(jié)目錄制裝置中可能存在多個可用磁盤的剩余空間之和大于目標(biāo)節(jié)目的數(shù)據(jù)量的情況。針對這種情況,本實(shí)施例在確定本地沒有可用于存儲目標(biāo)節(jié)目的單個磁盤時,從本地中查找是否存在剩余空間之和大于目標(biāo)節(jié)目數(shù)據(jù)量的多個磁盤,若存在則將目標(biāo)節(jié)目分段存儲在這些磁盤中以提高磁盤空間利用率和用戶體驗(yàn)。
具體的,查找上述多個磁盤的方式包括多種:
在一種可能的方式中,首先從本地磁盤中查找剩余空間之和大于或等于目標(biāo)節(jié)目的數(shù)據(jù)量的所有磁盤組合,選擇所有磁盤組合中包含磁盤個數(shù)最少的磁盤組合中的磁盤為目標(biāo)可用磁盤。這里所涉及的目標(biāo)可用磁盤是指用于存儲目標(biāo)節(jié)目的多個磁盤。
在另一種可能的方式中,首先從本地磁盤中選擇一個可用磁盤作為基礎(chǔ)磁盤,在基礎(chǔ)磁盤的基礎(chǔ)上依次遞增可用磁盤的數(shù)量,并計算增加數(shù)量后的可用磁盤的剩余存儲空間之和,直到多個可用磁盤的剩余存儲空間之和大于或等于目標(biāo)節(jié)目的數(shù)據(jù)量,將剩余存儲空間之和大于或等于目標(biāo)節(jié)目的數(shù)據(jù)量的該些可用磁盤作為目標(biāo)可用磁盤。在這種方式中,為了減少目標(biāo)可用磁盤的數(shù)量,在增加可用磁盤時優(yōu)選按照剩余存儲空間從大到小的順序選擇符合增加后的數(shù)量的可用磁盤,直到可用磁盤的剩余存儲空間之和大于或等于目標(biāo)節(jié)目的數(shù)據(jù)量。
在又一種可能的方式中,選擇剩余空間之和大于或等于目標(biāo)節(jié)目的數(shù)據(jù)量,且每個磁盤的剩余空間均大于預(yù)設(shè)閾值的多個可用磁盤為目標(biāo)可用磁盤。
在又一種可能的方式中,優(yōu)先選擇剩余空間之和大于或等于目標(biāo)節(jié)目的數(shù)據(jù)量,且均在同一個硬盤或u盤上的多個可用磁盤為目標(biāo)可用磁盤。這種方式能夠方便錄制節(jié)目的后期調(diào)取和觀看。
實(shí)際應(yīng)用中,可以根據(jù)上述方式中的任意一種來查找用于存儲目標(biāo)節(jié)目的可用磁盤,也可以根據(jù)上述方式中的多種來查找可用磁盤,本實(shí)施例中不做具體限定。
步驟104、將所述目標(biāo)節(jié)目分段存儲在所述多個可用磁盤中。
本實(shí)施例中,針對目標(biāo)節(jié)目的存儲策略包括如下幾種:
在一種可能的存儲方式中,將目標(biāo)節(jié)目在錄制時間上進(jìn)行分段,并將分段后得到的視頻段分別存儲在相應(yīng)的磁盤中,具體的,圖2為本發(fā)明一實(shí)施例提供的步驟104的執(zhí)行方法流程圖,如圖2所示,步驟104包括如下子步驟:
步驟201、基于所述多個可用磁盤中各磁盤的剩余空間,將所述目標(biāo)節(jié)目分割成多個視頻段。
步驟202、將所述多個視頻段分別存儲在相應(yīng)的磁盤中。
舉例來說,假設(shè)目標(biāo)磁盤組中包括磁盤e,磁盤f,磁盤e剩余空間為2g,磁盤f剩余空間為1g,錄制目標(biāo)節(jié)目需要的空間為2.5g,錄制時間長度為5分鐘,則1分鐘可以錄制0.5g的數(shù)據(jù),4分鐘可以錄制2g的數(shù)據(jù),據(jù)此,預(yù)先對目標(biāo)節(jié)目在時間上進(jìn)行分割,設(shè)置磁盤e錄制目標(biāo)節(jié)目的前4分鐘,設(shè)置磁盤f錄制目標(biāo)節(jié)目的最后1分鐘。當(dāng)然此處僅為示例說明而不是對本發(fā)明的唯一限定。
在另一種可能的存儲方式中,不在錄制時間上對目標(biāo)節(jié)目進(jìn)行分段,而是根據(jù)查找到的多個可用磁盤中各磁盤剩余空間的大小優(yōu)選在剩余空間最大的磁盤中進(jìn)行存儲,當(dāng)該磁盤的剩余空間被占滿,或者剩余預(yù)設(shè)空間時,再順次的將剩余部分的目標(biāo)節(jié)目存儲在剩余空間其次大的磁盤中,依次類推直至完成錄制任務(wù)。這樣能夠方便后續(xù)錄制數(shù)據(jù)的調(diào)取和播放。
本實(shí)施例,通過在本地單個磁盤的剩余空間均小于目標(biāo)節(jié)目的數(shù)據(jù)量時,從本地查找剩余空間之和大于或等于目標(biāo)節(jié)目的數(shù)據(jù)量的多個磁盤,并將目標(biāo)視頻分段存儲在該多個磁盤上,從而解決了節(jié)目錄制過程中由于單個磁盤剩余空間不足所導(dǎo)致的無法錄制的問題,有效的提高了磁盤空間利用率,提高了用戶的使用體驗(yàn)。
圖3為本發(fā)明一實(shí)施例提供的節(jié)目錄制裝置的結(jié)構(gòu)示意圖,如圖3所示,該裝置包括:
第一數(shù)據(jù)處理模塊11,用于在啟動錄制目標(biāo)節(jié)目前,根據(jù)目標(biāo)節(jié)目所屬的清晰度類型配置的碼率以及所述目標(biāo)節(jié)目的時長計算所述目標(biāo)節(jié)目的待存儲的數(shù)據(jù)量;
查找模塊12,用于在本地可用于存儲錄制節(jié)目的單個磁盤的剩余空間均小于所述待存儲的數(shù)據(jù)量時,從本地查找多個可用磁盤,所述多個可用磁盤的剩余空間之和大于或等于所述目標(biāo)節(jié)目的數(shù)據(jù)量;
存儲模塊13,用于將所述目標(biāo)節(jié)目分段存儲在所述多個可用磁盤中。
可選的,所述查找模塊12,包括:
查找子模塊,用于在本地磁盤中查找剩余空間之和大于或等于所述目標(biāo)節(jié)目的數(shù)據(jù)量,且包含磁盤個數(shù)最少的多個磁盤作為目標(biāo)可用磁盤。
可選的,所述查找模塊12,包括:
選擇子模塊,用于依次遞增可用磁盤的數(shù)量,計算增加數(shù)量后的可用磁盤的剩余存儲空間之和是否大于或等于所述待存儲的數(shù)據(jù)量,直到多個可用磁盤的剩余存儲空間之和大于或等于所述待存儲的數(shù)據(jù)量;
確定子模塊,用于將滿足剩余存儲空間之和大于或等于所述待存儲的數(shù)據(jù)量的多個可用磁盤作為目標(biāo)可用磁盤。
可選的,所述選擇子模塊,具體用于:
按照剩余存儲空間從大到小的順序選擇符合增加后的數(shù)量的可用磁盤,直到可用磁盤的剩余存儲空間之和大于或等于所述待存儲的數(shù)據(jù)量。
可選的,所述裝置還包括:
第二數(shù)據(jù)處理模塊,用于對與所述目標(biāo)節(jié)目的清晰度類型相同且屬于相同頻道的其他節(jié)目,讀取預(yù)設(shè)時長內(nèi)接收到的碼流的數(shù)據(jù)量,計算所述其他節(jié)目對應(yīng)的碼率;
配置模塊,用于根據(jù)所述其他節(jié)目對應(yīng)的碼率配置目標(biāo)節(jié)目所屬的清晰度類型對應(yīng)的碼率。
本實(shí)施例提供的裝置能夠用于執(zhí)行圖1所示的方法,其執(zhí)行方式和有益效果類似,在這里不再贅述。
圖4為本發(fā)明一實(shí)施例提供的存儲模塊13的結(jié)構(gòu)示意圖,如圖4所示,在圖3所示結(jié)構(gòu)的基礎(chǔ)上,存儲模塊13包括:
視頻處理子模塊131,用于基于所述多個可用磁盤中各磁盤的剩余空間,將所述目標(biāo)節(jié)目分割成多個視頻段;
存儲子模塊132,用于將所述多個視頻段分別存儲在相應(yīng)的磁盤中。
本實(shí)施例提供的裝置能夠用于執(zhí)行圖2所示的方法,其執(zhí)行方式和有益效果類似,在這里不再贅述。
最后應(yīng)說明的是:以上各實(shí)施例僅用以說明本發(fā)明的技術(shù)方案,而非對其限制;盡管參照前述各實(shí)施例對本發(fā)明進(jìn)行了詳細(xì)的說明,本領(lǐng)域的普通技術(shù)人員應(yīng)當(dāng)理解:其依然可以對前述各實(shí)施例所記載的技術(shù)方案進(jìn)行修改,或者對其中部分或者全部技術(shù)特征進(jìn)行等同替換;而這些修改或者替換,并不使相應(yīng)技術(shù)方案的本質(zhì)脫離本發(fā)明各實(shí)施例技術(shù)方案的范圍。