專利名稱:一種媒體內(nèi)容異地動態(tài)轉(zhuǎn)儲的方法
技術(shù)領(lǐng)域:
本發(fā)明涉及網(wǎng)絡(luò)和媒體錄制技術(shù)領(lǐng)域,尤其涉及一種媒體內(nèi)容異地動態(tài)轉(zhuǎn)儲的方法。
背景技術(shù):
當(dāng)前,隨著媒體錄制技術(shù)的不斷發(fā)展以及媒體內(nèi)容的日益豐富,人們已經(jīng)越來越多的使用媒體錄制方式來錄制媒體內(nèi)容,通過媒體錄制,人們可以將其喜好的節(jié)目存儲起來以供以后反復(fù)觀看,并且,還可以通過在適當(dāng)時間播放所存儲的媒體內(nèi)容,達(dá)到重新安排媒體內(nèi)容播放時間的目的,從而使得對媒體內(nèi)容的觀看不再受到電視臺等媒體內(nèi)容播放方播放時間的限制。
在現(xiàn)有技術(shù)中,錄制設(shè)備在媒體錄制過程中,通常將媒體內(nèi)容存儲到其本地的存儲介質(zhì)上,從而實現(xiàn)媒體內(nèi)容在錄制設(shè)備上的本地存儲,該現(xiàn)有技術(shù)雖然能夠?qū)崿F(xiàn)媒體錄制,但是,具有以下缺點隨著媒體內(nèi)容清晰度的不斷提高,在媒體錄制過程中,單位時間內(nèi)媒體內(nèi)容所占用的存儲空間也越來越大。舉例來說,當(dāng)按照DVD(MEPG2)的清晰度進(jìn)行媒體內(nèi)容錄制時,每錄制一小時的媒體內(nèi)容大約需要占用1G的存儲空間,換句話說,即使采用存儲空間較大的120G硬盤,最多也只能錄制120小時的DVD媒體內(nèi)容;即使采用MEPG4或者H.264方式對所錄制的媒體內(nèi)容進(jìn)行壓縮,從而節(jié)省大約50%的存儲空間,也只能在該120G的硬盤中存儲大約240小時的DVD媒體內(nèi)容,從而會在進(jìn)行媒體內(nèi)容錄制時,出現(xiàn)錄制設(shè)備本地存儲容量空間不足的問題。另外,隨著高清晰媒體內(nèi)容的不斷發(fā)展,出現(xiàn)了清晰度更高的媒體內(nèi)容,隨之帶來的是,媒體內(nèi)容所占用的存儲空間會更大,例如,當(dāng)前已經(jīng)出現(xiàn)了1個小時的媒體內(nèi)容需要占用6~8G存儲空間的更高清晰度的媒體內(nèi)容,對于這樣的媒體內(nèi)容進(jìn)行錄制,會使得存儲空間的使用更加緊張,從而進(jìn)一步加劇錄制設(shè)備本地存儲空間不足的問題。雖然在現(xiàn)有技術(shù)中已經(jīng)提出了例如藍(lán)光等更大容量的硬盤以解決上述存儲空間不足的問題,但是,該存儲介質(zhì)存儲空間必定仍然有限,在媒體內(nèi)容所占用的存儲空間進(jìn)一步增大或者所需錄制的媒體內(nèi)容長度較長時,仍然會導(dǎo)致上述錄制設(shè)備本地存儲空間不足的問題。
基于錄制設(shè)備本地存儲空間不足這一問題,在媒體內(nèi)容錄制過程中,會出現(xiàn)以下實際應(yīng)用上的問題在現(xiàn)有技術(shù)中,一旦在媒體內(nèi)容錄制過程中出現(xiàn)錄制設(shè)備本地存儲空間不足的情況,則需要中斷當(dāng)前的錄制動作,采用更新存儲光盤或者刪除硬盤上的一些數(shù)據(jù)的方式,來對本地錄制設(shè)備的存儲介質(zhì)進(jìn)行更新,以使得存儲介質(zhì)能夠提供新的存儲空間來進(jìn)行媒體內(nèi)容的錄制。采用該種方式,首先需要操作者對錄制過程進(jìn)行監(jiān)控,并在監(jiān)控得到存儲空間不足時對存儲介質(zhì)進(jìn)行更新,從而增加了操作者的操作過程,為使用者帶來很大不便;其次,由于更新存儲介質(zhì)需要中斷錄制過程,也會導(dǎo)致媒體內(nèi)容無法連續(xù)錄制,從而影響了錄制質(zhì)量;最后,由于存儲介質(zhì)的存儲空間有限,因此,即使采用更新存儲介質(zhì)的方式也不能完全解決錄制設(shè)備本地存儲空間不足所帶來的問題。
與此同時,在家庭網(wǎng)絡(luò)中,通常會存在多個具有存儲能力的設(shè)備,這些設(shè)備分別分布在家庭網(wǎng)絡(luò)的不同位置上。由于使用頻度和習(xí)慣的不同,對于這些設(shè)備的存儲空間的占用也通常并不均衡,例如對于電視機(jī)等播放設(shè)備附近的具有存儲能力的錄制設(shè)備,其存儲空間的使用率較高,存儲空間比較容易達(dá)到存儲極限;而對于臥室的具有存儲能力的設(shè)備,由于其較少用于媒體內(nèi)容的存儲,因此,其存儲空間的使用率較低,存儲空間不太容易達(dá)到存儲極限?;诖?,如果能夠充分利用家庭網(wǎng)絡(luò)中各個具有存儲能力的設(shè)備,在媒體錄制過程中進(jìn)行媒體內(nèi)容的存儲和轉(zhuǎn)儲,則可充分解決由于本地錄制設(shè)備存儲空間有限而帶來的上述種種問題,然而,在現(xiàn)有技術(shù)中,并未提供這樣的方法,從而使得這些問題均難以得到解決。
發(fā)明內(nèi)容
有鑒于此,本發(fā)明的主要目的在于提供一種媒體內(nèi)容異地動態(tài)存儲的方法,通過將媒體內(nèi)容實時的轉(zhuǎn)儲到異地設(shè)備上,解決本地錄制設(shè)備存儲空間有限的問題,使得媒體錄制過程不再受到存儲空間的限制,方便使用者的使用,保證媒體錄制的質(zhì)量。
為實現(xiàn)上述目的,本發(fā)明提供了一種媒體內(nèi)容異地動態(tài)轉(zhuǎn)儲的方法,該方法包括步驟A本地錄制設(shè)備進(jìn)行媒體內(nèi)容錄制;步驟B本地錄制設(shè)備判斷其存儲介質(zhì)是否仍有足夠的存儲空間,如果是,則將錄制的媒體內(nèi)容存儲到本地存儲文件中,在存儲滿足單次存儲條件后返回步驟A,直至錄制結(jié)束;否則,執(zhí)行步驟C;步驟C本地錄制設(shè)備在家庭網(wǎng)絡(luò)中選擇具有存儲能力的其它設(shè)備作為異地轉(zhuǎn)儲設(shè)備;步驟D本地錄制設(shè)備將所錄制的媒體內(nèi)容實時轉(zhuǎn)儲到所述異地轉(zhuǎn)儲設(shè)備的異地轉(zhuǎn)儲文件中,直至媒體內(nèi)容錄制結(jié)束,本地錄制設(shè)備建立本地存儲文件與異地轉(zhuǎn)儲文件之間的索引關(guān)系并保存。
其中,步驟D之后,該方法進(jìn)一步包括播放本地存儲文件中存儲的媒體內(nèi)容,播放完畢后,根據(jù)步驟D中所建立的本地存儲文件和異地轉(zhuǎn)儲文件之間的索引關(guān)系,獲取異地轉(zhuǎn)儲設(shè)備中的異地轉(zhuǎn)儲文件并播放該文件中的媒體內(nèi)容,直至整個媒體內(nèi)容播放完畢。
其中,本地錄制設(shè)備保存有至少兩個所述索引關(guān)系時,所述獲取異地轉(zhuǎn)儲文件并播放該文件中的媒體內(nèi)容包括根據(jù)所述索引關(guān)系建立的先后順序,依次執(zhí)行所述獲取異地轉(zhuǎn)儲文件并播放該文件中的媒體內(nèi)容的步驟,直至播放完整個媒體內(nèi)容。
其中,所述索引關(guān)系為本地存儲文件的文件名與異地轉(zhuǎn)儲文件的文件名之間的索引關(guān)系。
其中,所述索引關(guān)系為本地存儲文件的文件名與異地轉(zhuǎn)儲文件的存儲地址之間的索引關(guān)系。
其中,步驟B中,所述本地錄制設(shè)備判斷其存儲介質(zhì)是否仍有足夠的存儲空間為本地錄制設(shè)備判斷其存儲介質(zhì)的當(dāng)前存儲空間是否小于等于預(yù)先設(shè)定的預(yù)警存儲容量,如果是,則判斷得到本地錄制設(shè)備的存儲介質(zhì)不具有足夠的存儲空間,否則,則判斷得到本地錄制設(shè)備的存儲介質(zhì)具有足夠的存儲空間。
其中,所述單次存儲條件為預(yù)先設(shè)定的單次進(jìn)行媒體內(nèi)容存儲的時間長度。
其中,所述單次存儲條件為預(yù)先設(shè)定的單次存儲的媒體內(nèi)容的大小。
其中,步驟C包括步驟C1本地錄制設(shè)備向家庭網(wǎng)絡(luò)中的各個設(shè)備發(fā)送申請存儲空間請求,家庭網(wǎng)絡(luò)中具有存儲能力的各個設(shè)備分別向本地錄制設(shè)備發(fā)送反饋消息,本地錄制設(shè)備保存所述發(fā)送反饋消息的設(shè)備的信息;步驟C2本地錄制設(shè)備從發(fā)送反饋消息的各個具有存儲能力設(shè)備中,選擇一個未被選擇過的設(shè)備作為待選異地轉(zhuǎn)儲設(shè)備;步驟C3根據(jù)待選異地轉(zhuǎn)儲設(shè)備所返回的自身信息,判斷該待選異地轉(zhuǎn)儲設(shè)備的存儲容量是否滿足預(yù)先設(shè)定的條件,如果是,則將該待選異地轉(zhuǎn)儲設(shè)備選擇作為所述異地轉(zhuǎn)儲設(shè)備,否則,執(zhí)行步驟C4;步驟C4本地錄制設(shè)備判斷發(fā)送反饋消息的各個設(shè)備中是否仍有設(shè)備未被選擇過,如果是,則返回步驟C2;否則,本地錄制設(shè)備發(fā)出存儲容量不足的警告,并中止媒體內(nèi)容錄制過程,然后結(jié)束本流程。
其中,步驟C3中所述判斷進(jìn)一步包括判斷該待選異地轉(zhuǎn)儲設(shè)備的信道寬度是否滿足預(yù)先設(shè)定的條件。
其中,步驟C1和步驟C2之間,該方法進(jìn)一步包括本地錄制設(shè)備判斷是否收到具有存儲能力的設(shè)備所返回的反饋消息,如果是,則執(zhí)行步驟C2及其后續(xù)步驟,否則,本地錄制設(shè)備發(fā)出存儲容量不足的警告,并中止媒體內(nèi)容錄制過程,然后結(jié)束本流程。
其中,步驟C1所述本地錄制設(shè)備保存所述發(fā)送反饋消息的設(shè)備的信息為本地錄制設(shè)備將發(fā)送反饋消息的各個設(shè)備的信息分別保存在節(jié)點隊列的各個節(jié)點對象中,每個節(jié)點對象的屬性中至少包括有該設(shè)備的IP地址、存儲容量以及下一節(jié)點的指針地址,其中,指針最初指向該節(jié)點隊列的第一個節(jié)點對象;所述步驟C2~步驟C4具體包括以下步驟步驟C21本地錄制設(shè)備獲取發(fā)送反饋消息的各個設(shè)備的節(jié)點隊列;步驟C22判斷該節(jié)點隊列是否為空,如果是,則本地錄制設(shè)備發(fā)出存儲容量不足的警告,并中止媒體內(nèi)容錄制過程,結(jié)束本流程,否則,執(zhí)行步驟C23及其后續(xù)步驟;步驟C23讀取當(dāng)前指針?biāo)赶虻墓?jié)點對象中的存儲容量屬性,判斷該節(jié)點所對應(yīng)的設(shè)備的存儲容量是否大于預(yù)先設(shè)定的值,如果是,則執(zhí)行步驟C24,否則,根據(jù)當(dāng)前指針?biāo)赶虻墓?jié)點對象中的下一結(jié)點的指針地址屬性,將指針指向下一結(jié)點,然后,返回步驟C22;步驟C24讀取當(dāng)前指針?biāo)赶虻墓?jié)點對象中的IP地址屬性,將該IP地址所對應(yīng)的設(shè)備選擇作為所述的異地轉(zhuǎn)儲設(shè)備。
其中,每個節(jié)點對象的屬性中進(jìn)一步包括有該設(shè)備的信道寬度,步驟C22和步驟C24之間進(jìn)一步包括讀取當(dāng)前指針?biāo)赶虻墓?jié)點對象中的信道寬度屬性,判斷該節(jié)點所對應(yīng)的設(shè)備的信道寬度是否大于預(yù)先設(shè)定的值,如果是,則繼續(xù)執(zhí)行后續(xù)步驟,否則,根據(jù)當(dāng)前指針?biāo)赶虻墓?jié)點對象中的下一結(jié)點的指針地址屬性,將指針指向下一結(jié)點,然后,返回步驟C22。
其中,步驟D包括步驟D1本地錄制設(shè)備停止向其存儲介質(zhì)存儲所錄制的媒體內(nèi)容,關(guān)閉已經(jīng)存儲的本地存儲文件;步驟D2本地錄制設(shè)備將錄制媒體當(dāng)前所錄制的內(nèi)容實時轉(zhuǎn)儲到異地轉(zhuǎn)儲設(shè)備上;
步驟D3本地錄制設(shè)備判斷媒體內(nèi)容錄制過程是否結(jié)束,如果是,則執(zhí)行步驟D4,否則,返回步驟D2,直至媒體內(nèi)容錄制過程結(jié)束;步驟D4本地錄制設(shè)備通知異地轉(zhuǎn)儲設(shè)備關(guān)閉當(dāng)前轉(zhuǎn)儲的文件,建立本地錄制設(shè)備上所存儲的文件與異地轉(zhuǎn)儲設(shè)備所轉(zhuǎn)儲的文件之間的索引關(guān)系,并保存該索引關(guān)系。
其中,步驟D2進(jìn)一步包括步驟D21所述異地轉(zhuǎn)儲設(shè)備判斷其存儲介質(zhì)是否仍有足夠的存儲空間,如果是,則執(zhí)行步驟D2中所述轉(zhuǎn)儲的步驟,然后返回步驟D21,直至媒體內(nèi)容錄制結(jié)束;否則,執(zhí)行步驟D22;步驟D22異地轉(zhuǎn)儲設(shè)備向本地錄制設(shè)備發(fā)送存儲容量不足的告警消息,本地錄制設(shè)備收到該消息后,通知異地轉(zhuǎn)儲設(shè)備關(guān)閉當(dāng)前轉(zhuǎn)儲的文件;步驟D23異地轉(zhuǎn)儲設(shè)備關(guān)閉當(dāng)前轉(zhuǎn)儲的文件,并向本地錄制設(shè)備上報該轉(zhuǎn)儲文件的文件信息;步驟D24本地錄制設(shè)備根據(jù)接收到的存儲文件的文件信息,建立本地錄制設(shè)備上保存的媒體內(nèi)容的本地存儲文件與異地轉(zhuǎn)儲設(shè)備上所述轉(zhuǎn)儲文件之間的文件索引關(guān)系并保存;步驟D25本地錄制設(shè)備終止與異地轉(zhuǎn)儲設(shè)備之間的通訊,結(jié)束異地轉(zhuǎn)儲流程。
其中,在步驟D22中,本地錄制設(shè)備收到異地轉(zhuǎn)儲設(shè)備發(fā)送的存儲容量不足告警消息后,該方法進(jìn)一步包括返回所述步驟C。
可見,本發(fā)明通過媒體內(nèi)容異地動態(tài)轉(zhuǎn)儲,能夠在本地錄制設(shè)備存儲空間不足時,將該錄制設(shè)備所錄制的內(nèi)容實時轉(zhuǎn)儲到家庭網(wǎng)絡(luò)中具有存儲能力的其它設(shè)備中,從而解決了由于本地錄制設(shè)備存儲空間有限而對媒體內(nèi)容錄制所造成的限制和影響。除此之外,本發(fā)明還具有如下有益效果1、由于采用異地轉(zhuǎn)儲的方式保存媒體內(nèi)容,因此,可以充分發(fā)揮家庭網(wǎng)絡(luò)中的各個設(shè)備的存儲能力,從而充分利用家庭網(wǎng)絡(luò)資源;2、在媒體內(nèi)容轉(zhuǎn)儲過程中,本地錄制設(shè)備能夠根據(jù)一定的條件,自動選擇家庭網(wǎng)絡(luò)中的其它設(shè)備作為異地轉(zhuǎn)儲設(shè)備,無需使用者進(jìn)行任何操作,并未增加媒體內(nèi)容錄制過程的操作復(fù)雜性,從而使得該方法容易實現(xiàn);3、由于動態(tài)轉(zhuǎn)儲無需事先確定轉(zhuǎn)儲的位置,因此,使得該方法實現(xiàn)起來更加靈活,不會出現(xiàn)由于某個預(yù)先確定用于轉(zhuǎn)儲的設(shè)備發(fā)生故障而導(dǎo)致轉(zhuǎn)儲無法實現(xiàn)的問題;4、由于在轉(zhuǎn)儲結(jié)束后,本地錄制設(shè)備建立了本地存儲文件與異地轉(zhuǎn)儲文件之間的文件索引,因此,在對錄制的媒體內(nèi)容進(jìn)行播放時,本地錄制設(shè)備能夠根據(jù)該索引關(guān)系直接找到異地轉(zhuǎn)儲設(shè)備上所存儲的文件,并順序播放,使得用戶感覺所播放的媒體內(nèi)容均在同一個文件中,從而不會由于異地轉(zhuǎn)儲而給用戶的觀看帶來不便。
圖1為實現(xiàn)本發(fā)明的流程圖。
圖2為實現(xiàn)步驟101和步驟102的流程圖。
圖3為實現(xiàn)步驟103的流程圖。
圖4為本發(fā)明中節(jié)點對象的示意圖。
圖5為實現(xiàn)步驟303~步驟305的流程圖。
圖6為實現(xiàn)步驟104的流程圖。
圖7為實現(xiàn)步驟602時所需要進(jìn)一步執(zhí)行的步驟的流程圖。
具體實施例方式
本發(fā)明為一種媒體內(nèi)容異地動態(tài)存儲的方法,該方法在媒體內(nèi)容錄制過程中,實時判斷進(jìn)行媒體錄制的本地設(shè)備的存儲空間是否已經(jīng)達(dá)到預(yù)警存儲容量,并在達(dá)到該容量時,從家庭網(wǎng)絡(luò)上查詢得到具有存儲能力的其它設(shè)備,從這些設(shè)備中選擇一個設(shè)備作為異地轉(zhuǎn)儲設(shè)備,并將當(dāng)前錄制的媒體內(nèi)容轉(zhuǎn)儲到該設(shè)備上,從而實現(xiàn)媒體內(nèi)容的異地轉(zhuǎn)儲;在錄制結(jié)束時,本地錄制設(shè)備建立本地存儲文件與異地轉(zhuǎn)儲文件之間的文件索引,以使得在進(jìn)行媒體內(nèi)容播放時,能夠根據(jù)該索引查詢得到異地轉(zhuǎn)儲設(shè)備上所存儲的媒體內(nèi)容,從而實現(xiàn)媒體內(nèi)容的完整播放。
下面結(jié)合附圖,對本發(fā)明的具體實現(xiàn)加以說明參見圖1,實現(xiàn)本發(fā)明需要以下步驟步驟101本地錄制設(shè)備進(jìn)行媒體內(nèi)容錄制;步驟102本地錄制設(shè)備判斷其存儲介質(zhì)是否仍有足夠的存儲空間保存錄制的媒體內(nèi)容,如果是,則將錄制的媒體內(nèi)容存儲到本地錄制設(shè)備的本地存儲文件中,在存儲滿足單次存儲條件后返回步驟101,直至錄制結(jié)束;否則,執(zhí)行步驟103;步驟103本地錄制設(shè)備在家庭網(wǎng)絡(luò)中選擇具有存儲能力的其它設(shè)備作為異地轉(zhuǎn)儲設(shè)備;步驟104本地錄制設(shè)備將所錄制的媒體內(nèi)容實時轉(zhuǎn)儲到步驟103所選擇的異地轉(zhuǎn)儲設(shè)備的異地轉(zhuǎn)儲文件中,直至媒體內(nèi)容錄制結(jié)束,本地錄制設(shè)備建立本地存儲文件與異地轉(zhuǎn)儲文件之間的索引關(guān)系并保存。
下面結(jié)合附圖,分別對上述步驟的具體實現(xiàn)加以詳細(xì)說明(一)步驟101和步驟102的具體實現(xiàn)參見圖2,在本發(fā)明實施例中,步驟101和步驟102的具體實現(xiàn)包括步驟201本地錄制設(shè)備啟動錄制媒體,準(zhǔn)備開始對接收到的媒體內(nèi)容進(jìn)行實時錄制;步驟202本地錄制設(shè)備判斷其存儲介質(zhì)的當(dāng)前存儲空間是否小于等于預(yù)警存儲容量(Min Memory Limit,MML),如果是,則執(zhí)行圖1所示的步驟103,否則,執(zhí)行步驟203;其中,在本發(fā)明實施例中,可以根據(jù)實際使用需要,任意設(shè)定MML的值,并不影響本發(fā)明的實現(xiàn);步驟203本地錄制設(shè)備利用錄制媒體對接收到的媒體內(nèi)容進(jìn)行實時錄制,并將錄制的媒體內(nèi)容存儲到該本地錄制設(shè)備的存儲介質(zhì)中;步驟204本地錄制設(shè)備判斷當(dāng)前所進(jìn)行的存儲是否滿足預(yù)先設(shè)定的單次存儲條件,如果是,則執(zhí)行步驟205,否則,返回步驟203,繼續(xù)執(zhí)行錄制和存儲媒體內(nèi)容的操作,直至當(dāng)前所進(jìn)行的存儲滿足單次存儲條件;其中,在本發(fā)明實施例中,預(yù)先設(shè)定單次進(jìn)行媒體內(nèi)容存儲的時間長度作為上述的單次存儲條件,利用該條件,可以控制每當(dāng)進(jìn)行該存儲時間長度的媒體內(nèi)容存儲之后,均要對媒體內(nèi)容錄制是否結(jié)束、以及本地錄制設(shè)備存儲介質(zhì)是否仍有足夠的存儲空間進(jìn)行判斷,從而能夠達(dá)到分批存儲媒體內(nèi)容,并在分批存儲過程中實時監(jiān)測本地錄制設(shè)備存儲空間的目的,以使得本發(fā)明所提供的轉(zhuǎn)儲方法能夠根據(jù)監(jiān)測到的存儲空間情況得以實現(xiàn);在本發(fā)明其它實施例中,也可以采用單次存儲的媒體內(nèi)容大小作為上述單次存儲條件,利用該條件,同樣可以實現(xiàn)對媒體內(nèi)容的分批存儲,從而保證媒體內(nèi)容的轉(zhuǎn)儲能夠?qū)崿F(xiàn);在本發(fā)明其它實施例中,也可采用與存儲相關(guān)的其它條件作為單次存儲條件,并不影響本發(fā)明的實現(xiàn);步驟205判斷媒體內(nèi)容錄制是否結(jié)束,如果是,則結(jié)束媒體錄制及存儲過程,結(jié)束本流程,否則,返回步驟202,以繼續(xù)進(jìn)行媒體內(nèi)容的實時錄制,直至媒體內(nèi)容錄制結(jié)束。
(二)步驟103的具體實現(xiàn)參見圖3,在本發(fā)明實施例中,實現(xiàn)步驟103需要以下步驟步驟301本地錄制設(shè)備通過家庭網(wǎng)絡(luò),向家庭網(wǎng)絡(luò)中的各個設(shè)備發(fā)送申請存儲空間請求,家庭網(wǎng)絡(luò)中具有存儲能力的各個設(shè)備分別向本地錄制設(shè)備發(fā)送反饋消息,并將自身信息返回給本地錄制設(shè)備;步驟302本地錄制設(shè)備判斷是否收到具有存儲能力的設(shè)備所返回的反饋消息,如果是,表明家庭網(wǎng)絡(luò)中存在具有存儲能力的其它設(shè)備,則執(zhí)行步驟303及其后續(xù)步驟,否則,表明家庭網(wǎng)絡(luò)中并不存在具有存儲能力的其它設(shè)備,無法進(jìn)行媒體內(nèi)容的轉(zhuǎn)儲,則本地錄制設(shè)備發(fā)出存儲容量不足的警告,并中止媒體內(nèi)容錄制過程,然后結(jié)束本流程;步驟303本地錄制設(shè)備從發(fā)送反饋消息的各個具有存儲能力設(shè)備中,選擇一個未被選擇過的設(shè)備作為待選異地轉(zhuǎn)儲設(shè)備;在本發(fā)明具體實施例中,可以采用在發(fā)送反饋消息的各個設(shè)備中依次選擇的方式來進(jìn)行上述選擇,在本發(fā)明其它實施例中,也可采用其它選擇方式,并不影響本發(fā)明的實現(xiàn);步驟304根據(jù)待選異地轉(zhuǎn)儲設(shè)備所返回的自身信息,判斷該待選異地轉(zhuǎn)儲設(shè)備的存儲容量以及信道寬度是否滿足預(yù)先設(shè)定的條件,如果是,則將該待選異地轉(zhuǎn)儲設(shè)備作為異地轉(zhuǎn)儲設(shè)備,并執(zhí)行圖1所示的步驟104,否則,表明當(dāng)前的待選異地轉(zhuǎn)儲設(shè)備不能滿足異地轉(zhuǎn)儲的要求,執(zhí)行步驟305;其中,在本發(fā)明的具體應(yīng)用中,為了保證媒體內(nèi)容轉(zhuǎn)儲過程中,異地轉(zhuǎn)儲設(shè)備能夠?qū)崟r接收本地錄制設(shè)備發(fā)送過來的媒體內(nèi)容并存儲,需要異地轉(zhuǎn)儲設(shè)備提供足夠的信道寬度,因此,在本發(fā)明具體實施例中,步驟304中除了判斷待選異地轉(zhuǎn)儲設(shè)備的存儲容量之外,還進(jìn)一步判斷該設(shè)備的信道寬度,以使得最終選擇得到的異地轉(zhuǎn)儲設(shè)備能夠提供一定的信道寬度,從而滿足實時轉(zhuǎn)儲的需要;在本發(fā)明其它實施例中,如果家庭網(wǎng)絡(luò)中的各個設(shè)備均具有滿足要求的信道寬度,或者所錄制的媒體的傳輸速度小于一定的值從而使得家庭網(wǎng)絡(luò)中的各個設(shè)備均可對該錄制的媒體進(jìn)行實時錄制,則也可不進(jìn)行信道寬度的判斷,并不影響本發(fā)明的實現(xiàn);步驟305本地錄制設(shè)備判斷發(fā)送反饋消息的各個設(shè)備中是否仍有設(shè)備未被選擇過,如果是,表明家庭網(wǎng)絡(luò)中仍然可能存在可以進(jìn)行異地轉(zhuǎn)儲的設(shè)備,則返回步驟303,以繼續(xù)選擇用于異地轉(zhuǎn)儲的設(shè)備;否則,表明在家庭網(wǎng)絡(luò)中沒有相應(yīng)的設(shè)備能夠?qū)崿F(xiàn)異地轉(zhuǎn)儲,則本地錄制設(shè)備發(fā)出存儲容量不足的警告,并中止媒體內(nèi)容錄制過程,然后結(jié)束本流程。
其中,在本發(fā)明一優(yōu)選實施例中,本地錄制設(shè)備將發(fā)送了反饋消息的各個設(shè)備的信息保存在一節(jié)點隊列中,該節(jié)點隊列中包括多個節(jié)點對象,每個節(jié)點對象與一個發(fā)送反饋信息的設(shè)備相對應(yīng),參見圖4所示,每個節(jié)點對象的屬性中至少包括有該設(shè)備的IP地址、存儲容量、信道寬度、以及下一節(jié)點的指針地址,其中,指針最初指向該節(jié)點隊列的第一個節(jié)點對象?;诖朔N存儲方式,在本發(fā)明優(yōu)選實施例中,按照圖5所示的步驟實現(xiàn)上述步驟303~步驟305
步驟501獲取發(fā)送反饋消息的各個設(shè)備的節(jié)點隊列;步驟502判斷該節(jié)點隊列是否為空,如果是,則本地錄制設(shè)備發(fā)出存儲容量不足的警告,并中止媒體內(nèi)容錄制過程,結(jié)束本流程,否則,執(zhí)行步驟503及其后續(xù)步驟;步驟503讀取當(dāng)前指針?biāo)赶虻墓?jié)點對象中的信道寬度屬性,判斷該節(jié)點所對應(yīng)的設(shè)備的信道寬度是否大于預(yù)先設(shè)定的值,如果是,則執(zhí)行步驟504,否則,根據(jù)當(dāng)前指針?biāo)赶虻墓?jié)點對象中的下一結(jié)點的指針地址屬性,將指針指向下一結(jié)點,然后,返回步驟502,以開始對下一個節(jié)點進(jìn)行判斷;步驟504讀取當(dāng)前指針?biāo)赶虻墓?jié)點對象中的存儲容量屬性,判斷該節(jié)點所對應(yīng)的設(shè)備的存儲容量是否大于預(yù)先設(shè)定的值,如果是,則執(zhí)行步驟505,否則,根據(jù)當(dāng)前指針?biāo)赶虻墓?jié)點對象中的下一結(jié)點的指針地址屬性,將指針指向下一結(jié)點,然后,返回步驟502,以開始對下一個節(jié)點進(jìn)行判斷;其中,在本發(fā)明其它實施例中,也可以先執(zhí)行步驟504然后再執(zhí)行步驟503,并不影響本發(fā)明的實現(xiàn);步驟505讀取當(dāng)前指針?biāo)赶虻墓?jié)點對象中的IP地址屬性,將該IP地址所對應(yīng)的設(shè)備選擇作為所述的異地轉(zhuǎn)儲設(shè)備。
在本發(fā)明其它實施例中,還可采用其它方式保存發(fā)送了反饋消息的各個設(shè)備的信息,并根據(jù)保存方式采用相應(yīng)的步驟實現(xiàn)上述步驟303~步驟305,并不影響本發(fā)明的實現(xiàn)。
(三)步驟104的具體實現(xiàn)參見圖6,在本發(fā)明實施例中,實現(xiàn)步驟104需要以下步驟步驟601本地錄制設(shè)備停止向其存儲介質(zhì)存儲所錄制的媒體內(nèi)容,關(guān)閉已經(jīng)存儲的本地存儲文件;步驟602本地錄制設(shè)備將錄制媒體當(dāng)前所錄制的內(nèi)容實時轉(zhuǎn)儲到異地轉(zhuǎn)儲設(shè)備上;步驟603本地錄制設(shè)備判斷媒體內(nèi)容錄制過程是否結(jié)束,如果是,則執(zhí)行步驟604,否則,返回步驟602,直至媒體內(nèi)容錄制過程結(jié)束;
步驟604本地錄制設(shè)備通知異地轉(zhuǎn)儲設(shè)備關(guān)閉當(dāng)前轉(zhuǎn)儲的文件,建立本地錄制設(shè)備上所存儲的文件與異地轉(zhuǎn)儲設(shè)備所轉(zhuǎn)儲的文件之間的索引關(guān)系,并保存該索引關(guān)系以供后續(xù)播放所錄制的媒體內(nèi)容時,能夠根據(jù)該索引關(guān)系完整地播放保存有媒體內(nèi)容的整個文件。
其中,由于在實際應(yīng)用中,錄制的媒體內(nèi)容有可能很大,從而導(dǎo)致轉(zhuǎn)儲設(shè)備也無法提供足夠的存儲空間存儲該媒體內(nèi)容,為了避免由于異地轉(zhuǎn)儲設(shè)備本身存儲容量不足而導(dǎo)致媒體內(nèi)容丟失的情況,在本發(fā)明一優(yōu)選實施例中,上述步驟602進(jìn)一步包括圖7所示的步驟,具體包括步驟701所述異地轉(zhuǎn)儲設(shè)備判斷其存儲容量是否小于MML,如果是,則執(zhí)行步驟702及其后續(xù)步驟,否則,該異地轉(zhuǎn)儲設(shè)備執(zhí)行所述異地轉(zhuǎn)儲的步驟,然后返回步驟701,直至媒體內(nèi)容錄制結(jié)束;步驟702異地轉(zhuǎn)儲設(shè)備向本地錄制設(shè)備發(fā)送存儲容量不足的告警消息,本地錄制設(shè)備收到該消息后,通知異地轉(zhuǎn)儲設(shè)備關(guān)閉當(dāng)前轉(zhuǎn)儲的文件;步驟703~步驟705異地轉(zhuǎn)儲設(shè)備收到本地錄制設(shè)備發(fā)送的通知后,關(guān)閉當(dāng)前轉(zhuǎn)儲的文件,并向本地錄制設(shè)備上報該轉(zhuǎn)儲文件的文件信息;其中,在本發(fā)明實施例中,該文件信息為該文件在異地轉(zhuǎn)儲設(shè)備中的存儲地址,在本發(fā)明其它實施例中,該文件信息也可為該文件在異地轉(zhuǎn)儲設(shè)備中的存儲文件名;步驟706本地錄制設(shè)備根據(jù)接收到的存儲文件的文件信息,建立本地錄制設(shè)備上保存的媒體內(nèi)容的本地存儲文件與異地轉(zhuǎn)儲設(shè)備上所述轉(zhuǎn)儲文件之間的文件索引關(guān)系并保存;其中,在本實施例中,根據(jù)上報的轉(zhuǎn)儲文件的存儲地址,本地錄制設(shè)備建立保存了錄制的媒體內(nèi)容的本地存儲文件的存儲地址與轉(zhuǎn)儲文件存儲地址之間的索引關(guān)系,并保存該索引關(guān)系,以供進(jìn)行媒體內(nèi)容播放時使用;在本發(fā)明其它實施例中,還可以根據(jù)所上報的轉(zhuǎn)儲文件的文件名,建立本地存儲文件的文件名與異地轉(zhuǎn)儲文件的文件名之間的索引關(guān)系,并保存該索引關(guān)系,并不影響本發(fā)明的實現(xiàn);步驟707本地錄制設(shè)備終止與異地轉(zhuǎn)儲設(shè)備之間的通訊,結(jié)束異地轉(zhuǎn)儲流程。
通過圖7所示的流程,能夠在異地轉(zhuǎn)儲設(shè)備存儲容量不足時,及時將該情況上報給本地錄制設(shè)備,并終止異地轉(zhuǎn)儲設(shè)備的轉(zhuǎn)儲,從而避免所錄制的媒體內(nèi)容由于異地轉(zhuǎn)儲設(shè)備的存儲容量不足而丟失。在本發(fā)明其它實施例中,為了能夠保證媒體錄制的完整性,在上述步驟702中,本地錄制設(shè)備收到異地轉(zhuǎn)儲設(shè)備發(fā)送的存儲容量不足告警消息后,還可進(jìn)一步返回執(zhí)行圖1所示的步驟103及其后續(xù)步驟,在家庭網(wǎng)絡(luò)中選擇新的具有存儲能力的設(shè)備作為異地轉(zhuǎn)儲設(shè)備,并利用該設(shè)備完成媒體內(nèi)容的轉(zhuǎn)儲,從而使得能夠?qū)γ襟w內(nèi)容進(jìn)行完成的錄制和存儲。
在本發(fā)明中,當(dāng)需要播放所錄制的媒體內(nèi)容時,首先播放本地錄制設(shè)備上保存的本地存儲文件,在本地存儲文件播放完之后,根據(jù)該本地存儲文件與異地轉(zhuǎn)儲文件之間的索引關(guān)系,從異地轉(zhuǎn)儲設(shè)備中獲取得到其保存的異地轉(zhuǎn)儲文件并播放,從而實現(xiàn)對所錄制的媒體內(nèi)容的完整播放。在本發(fā)明一些實施例,如果媒體內(nèi)容在多個異地轉(zhuǎn)儲設(shè)備上進(jìn)行了轉(zhuǎn)儲,則本地錄制設(shè)備中會保存多個文件索引關(guān)系,此時,本地錄制設(shè)備播放完本地存儲文件后,根據(jù)所保存的文件索引關(guān)系建立的時間先后順序,依次播放各個異地轉(zhuǎn)儲設(shè)備中保存的異地轉(zhuǎn)儲文件,從而實現(xiàn)對所錄制的媒體內(nèi)容的完整播放。
以上所述僅為本發(fā)明的較佳實施例而已,并不用以限制本發(fā)明,凡在本發(fā)明的精神和原則之內(nèi),所作的任何修改、等同替換、改進(jìn)等,均應(yīng)包含在本發(fā)明的保護(hù)范圍之內(nèi)。
權(quán)利要求
1.一種媒體內(nèi)容異地動態(tài)轉(zhuǎn)儲的方法,其特征在于,該方法包括步驟A本地錄制設(shè)備進(jìn)行媒體內(nèi)容錄制;步驟B本地錄制設(shè)備判斷其存儲介質(zhì)是否仍有足夠的存儲空間,如果是,則將錄制的媒體內(nèi)容存儲到本地存儲文件中,在存儲滿足單次存儲條件后返回步驟A,直至錄制結(jié)束;否則,執(zhí)行步驟C;步驟C本地錄制設(shè)備在家庭網(wǎng)絡(luò)中選擇具有存儲能力的其它設(shè)備作為異地轉(zhuǎn)儲設(shè)備;步驟D本地錄制設(shè)備將所錄制的媒體內(nèi)容實時轉(zhuǎn)儲到所述異地轉(zhuǎn)儲設(shè)備的異地轉(zhuǎn)儲文件中,直至媒體內(nèi)容錄制結(jié)束,本地錄制設(shè)備建立本地存儲文件與異地轉(zhuǎn)儲文件之間的索引關(guān)系并保存。
2.根據(jù)權(quán)利要求1所述的方法,其特征在于,步驟D之后,該方法進(jìn)一步包括播放本地存儲文件中存儲的媒體內(nèi)容,播放完畢后,根據(jù)步驟D中所建立的本地存儲文件和異地轉(zhuǎn)儲文件之間的索引關(guān)系,獲取異地轉(zhuǎn)儲設(shè)備中的異地轉(zhuǎn)儲文件并播放該文件中的媒體內(nèi)容,直至整個媒體內(nèi)容播放完畢。
3.根據(jù)權(quán)利要求2所述的方法,其特征在于,本地錄制設(shè)備保存有至少兩個所述索引關(guān)系時,所述獲取異地轉(zhuǎn)儲文件并播放該文件中的媒體內(nèi)容包括根據(jù)所述索引關(guān)系建立的先后順序,依次執(zhí)行所述獲取異地轉(zhuǎn)儲文件并播放該文件中的媒體內(nèi)容的步驟,直至播放完整個媒體內(nèi)容。
4.根據(jù)權(quán)利要求1~3任意一項所述的方法,其特征在于,所述索引關(guān)系為本地存儲文件的文件名與異地轉(zhuǎn)儲文件的文件名之間的索引關(guān)系。
5.根據(jù)權(quán)利要求1~3任意一項所述的方法,其特征在于,所述索引關(guān)系為本地存儲文件的文件名與異地轉(zhuǎn)儲文件的存儲地址之間的索引關(guān)系。
6.根據(jù)權(quán)利要求1所述的方法,其特征在于,步驟B中,所述本地錄制設(shè)備判斷其存儲介質(zhì)是否仍有足夠的存儲空間為本地錄制設(shè)備判斷其存儲介質(zhì)的當(dāng)前存儲空間是否小于等于預(yù)先設(shè)定的預(yù)警存儲容量,如果是,則判斷得到本地錄制設(shè)備的存儲介質(zhì)不具有足夠的存儲空間,否則,則判斷得到本地錄制設(shè)備的存儲介質(zhì)具有足夠的存儲空間。
7.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述單次存儲條件為預(yù)先設(shè)定的單次進(jìn)行媒體內(nèi)容存儲的時間長度。
8.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述單次存儲條件為預(yù)先設(shè)定的單次存儲的媒體內(nèi)容的大小。
9.根據(jù)權(quán)利要求1所述的方法,其特征在于,步驟C包括步驟C1本地錄制設(shè)備向家庭網(wǎng)絡(luò)中的各個設(shè)備發(fā)送申請存儲空間請求,家庭網(wǎng)絡(luò)中具有存儲能力的各個設(shè)備分別向本地錄制設(shè)備發(fā)送反饋消息,本地錄制設(shè)備保存所述發(fā)送反饋消息的設(shè)備的信息;步驟C2本地錄制設(shè)備從發(fā)送反饋消息的各個具有存儲能力設(shè)備中,選擇一個未被選擇過的設(shè)備作為待選異地轉(zhuǎn)儲設(shè)備;步驟C3根據(jù)待選異地轉(zhuǎn)儲設(shè)備所返回的自身信息,判斷該待選異地轉(zhuǎn)儲設(shè)備的存儲容量是否滿足預(yù)先設(shè)定的條件,如果是,則將該待選異地轉(zhuǎn)儲設(shè)備選擇作為所述異地轉(zhuǎn)儲設(shè)備,否則,執(zhí)行步驟C4;步驟C4本地錄制設(shè)備判斷發(fā)送反饋消息的各個設(shè)備中是否仍有設(shè)備未被選擇過,如果是,則返回步驟C2;否則,本地錄制設(shè)備發(fā)出存儲容量不足的警告,并中止媒體內(nèi)容錄制過程,然后結(jié)束本流程。
10.根據(jù)權(quán)利要求9所述的方法,其特征在于,步驟C3中所述判斷進(jìn)一步包括判斷該待選異地轉(zhuǎn)儲設(shè)備的信道寬度是否滿足預(yù)先設(shè)定的條件。
11.根據(jù)權(quán)利要求9所述的方法,其特征在于,步驟C1和步驟C2之間,該方法進(jìn)一步包括本地錄制設(shè)備判斷是否收到具有存儲能力的設(shè)備所返回的反饋消息,如果是,則執(zhí)行步驟C2及其后續(xù)步驟,否則,本地錄制設(shè)備發(fā)出存儲容量不足的警告,并中止媒體內(nèi)容錄制過程,然后結(jié)束本流程。
12.根據(jù)權(quán)利要求9所述的方法,其特征在于,步驟C1所述本地錄制設(shè)備保存所述發(fā)送反饋消息的設(shè)備的信息為本地錄制設(shè)備將發(fā)送反饋消息的各個設(shè)備的信息分別保存在節(jié)點隊列的各個節(jié)點對象中,每個節(jié)點對象的屬性中至少包括有該設(shè)備的IP地址、存儲容量以及下一節(jié)點的指針地址,其中,指針最初指向該節(jié)點隊列的第一個節(jié)點對象;所述步驟C2~步驟C4具體包括以下步驟步驟C21本地錄制設(shè)備獲取發(fā)送反饋消息的各個設(shè)備的節(jié)點隊列;步驟C22判斷該節(jié)點隊列是否為空,如果是,則本地錄制設(shè)備發(fā)出存儲容量不足的警告,并中止媒體內(nèi)容錄制過程,結(jié)束本流程,否則,執(zhí)行步驟C23及其后續(xù)步驟;步驟C23讀取當(dāng)前指針?biāo)赶虻墓?jié)點對象中的存儲容量屬性,判斷該節(jié)點所對應(yīng)的設(shè)備的存儲容量是否大于預(yù)先設(shè)定的值,如果是,則執(zhí)行步驟C24,否則,根據(jù)當(dāng)前指針?biāo)赶虻墓?jié)點對象中的下一結(jié)點的指針地址屬性,將指針指向下一結(jié)點,然后,返回步驟C22;步驟C24讀取當(dāng)前指針?biāo)赶虻墓?jié)點對象中的IP地址屬性,將該IP地址所對應(yīng)的設(shè)備選擇作為所述的異地轉(zhuǎn)儲設(shè)備。
13.根據(jù)權(quán)利要求12所述的方法,其特征在于,每個節(jié)點對象的屬性中進(jìn)一步包括有該設(shè)備的信道寬度,步驟C22和步驟C24之間進(jìn)一步包括讀取當(dāng)前指針?biāo)赶虻墓?jié)點對象中的信道寬度屬性,判斷該節(jié)點所對應(yīng)的設(shè)備的信道寬度是否大于預(yù)先設(shè)定的值,如果是,則繼續(xù)執(zhí)行后續(xù)步驟,否則,根據(jù)當(dāng)前指針?biāo)赶虻墓?jié)點對象中的下一結(jié)點的指針地址屬性,將指針指向下一結(jié)點,然后,返回步驟C22。
14.根據(jù)權(quán)利要求1所述的方法,其特征在于,步驟D包括步驟D1本地錄制設(shè)備停止向其存儲介質(zhì)存儲所錄制的媒體內(nèi)容,關(guān)閉已經(jīng)存儲的本地存儲文件;步驟D2本地錄制設(shè)備將錄制媒體當(dāng)前所錄制的內(nèi)容實時轉(zhuǎn)儲到異地轉(zhuǎn)儲設(shè)備上;步驟D3本地錄制設(shè)備判斷媒體內(nèi)容錄制過程是否結(jié)束,如果是,則執(zhí)行步驟D4,否則,返回步驟D2,直至媒體內(nèi)容錄制過程結(jié)束;步驟D4本地錄制設(shè)備通知異地轉(zhuǎn)儲設(shè)備關(guān)閉當(dāng)前轉(zhuǎn)儲的文件,建立本地錄制設(shè)備上所存儲的文件與異地轉(zhuǎn)儲設(shè)備所轉(zhuǎn)儲的文件之間的索引關(guān)系,并保存該索引關(guān)系。
15.根據(jù)權(quán)利要求14所述的方法,其特征在于,步驟D2進(jìn)一步包括步驟D21所述異地轉(zhuǎn)儲設(shè)備判斷其存儲介質(zhì)是否仍有足夠的存儲空間,如果是,則執(zhí)行步驟D2中所述轉(zhuǎn)儲的步驟,然后返回步驟D21,直至媒體內(nèi)容錄制結(jié)束;否則,執(zhí)行步驟D22;步驟D22異地轉(zhuǎn)儲設(shè)備向本地錄制設(shè)備發(fā)送存儲容量不足的告警消息,本地錄制設(shè)備收到該消息后,通知異地轉(zhuǎn)儲設(shè)備關(guān)閉當(dāng)前轉(zhuǎn)儲的文件;步驟D23異地轉(zhuǎn)儲設(shè)備關(guān)閉當(dāng)前轉(zhuǎn)儲的文件,并向本地錄制設(shè)備上報該轉(zhuǎn)儲文件的文件信息;步驟D24本地錄制設(shè)備根據(jù)接收到的存儲文件的文件信息,建立本地錄制設(shè)備上保存的媒體內(nèi)容的本地存儲文件與異地轉(zhuǎn)儲設(shè)備上所述轉(zhuǎn)儲文件之間的文件索引關(guān)系并保存;步驟D25本地錄制設(shè)備終止與異地轉(zhuǎn)儲設(shè)備之間的通訊,結(jié)束異地轉(zhuǎn)儲流程。
16.根據(jù)權(quán)利要求15所述的方法,其特征在于,在步驟D22中,本地錄制設(shè)備收到異地轉(zhuǎn)儲設(shè)備發(fā)送的存儲容量不足告警消息后,該方法進(jìn)一步包括返回所述步驟C。
全文摘要
本發(fā)明公開了一種媒體內(nèi)容異地動態(tài)轉(zhuǎn)儲的方法,包括步驟A本地錄制設(shè)備進(jìn)行媒體內(nèi)容錄制;步驟B本地錄制設(shè)備判斷其存儲介質(zhì)是否仍有足夠的存儲空間,如果是,則將錄制的媒體內(nèi)容存儲到本地存儲文件中,在存儲滿足單次存儲條件后返回步驟A,直至錄制結(jié)束;否則,執(zhí)行步驟C;步驟C本地錄制設(shè)備在家庭網(wǎng)絡(luò)中選擇具有存儲能力的其它設(shè)備作為異地轉(zhuǎn)儲設(shè)備;步驟D本地錄制設(shè)備將所錄制的媒體內(nèi)容實時轉(zhuǎn)儲到所述異地轉(zhuǎn)儲設(shè)備的異地轉(zhuǎn)儲文件中,直至媒體內(nèi)容錄制結(jié)束,建立本地存儲文件與異地轉(zhuǎn)儲文件之間的索引關(guān)系并保存。該方法能夠在本地錄制設(shè)備存儲空間不足時,解決由于本地錄制設(shè)備存儲空間有限而對媒體內(nèi)容錄制所造成的限制。
文檔編號G06F17/30GK1889069SQ20051007979
公開日2007年1月3日 申請日期2005年6月28日 優(yōu)先權(quán)日2005年6月28日
發(fā)明者姜珊 申請人:聯(lián)想(北京)有限公司