專利名稱:用于檢索數(shù)據(jù)的方法和電路的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及一種檢索在以分配單元形式組織的存儲(chǔ)裝置中存儲(chǔ)的數(shù)據(jù)對(duì)象的方法。
本發(fā)明進(jìn)一步涉及一種用于檢索在以分配單元形式組織的存儲(chǔ)裝置中存儲(chǔ)的數(shù)據(jù)對(duì)象的電路。
本發(fā)明也涉及一種用于再現(xiàn)音像數(shù)據(jù)的設(shè)備,該設(shè)備包含一個(gè)用于檢索在以分配單元形式組織的存儲(chǔ)裝置中存儲(chǔ)的數(shù)據(jù)對(duì)象的電路音像數(shù)據(jù)。
本發(fā)明也涉及一種計(jì)算機(jī)程序產(chǎn)品,該計(jì)算機(jī)程序產(chǎn)品對(duì)處理單元編程,以執(zhí)行一種檢索在以分配單元形式組織的存儲(chǔ)裝置中存儲(chǔ)的數(shù)據(jù)對(duì)象的方法。
本發(fā)明涉及用于存儲(chǔ)這種計(jì)算機(jī)程序產(chǎn)品的記錄載體。
本發(fā)明也涉及一種被編程的計(jì)算機(jī),其能執(zhí)行一種檢索在以分配單元形式組織的存儲(chǔ)裝置中存儲(chǔ)的數(shù)據(jù)對(duì)象的方法。
背景技術(shù):
存儲(chǔ)器中存儲(chǔ)的數(shù)據(jù),最好是被連續(xù)存儲(chǔ)的。這樣,數(shù)據(jù)就能被讀單元在一個(gè)讀動(dòng)作中檢索出。然而,由于文件的刪除以及像數(shù)據(jù)文件和音像數(shù)據(jù)流等其它數(shù)據(jù)對(duì)象的存儲(chǔ),在數(shù)據(jù)對(duì)象之間出現(xiàn)相對(duì)小的間隙。這是自由空間,但是通常不足以存儲(chǔ)一個(gè)完整的數(shù)據(jù)對(duì)象。然而為了利用自由空間,必須將數(shù)據(jù)對(duì)象分段存儲(chǔ)。這是不利的。這是因?yàn)樵跈z索期間,讀單元必須在分段之間轉(zhuǎn)換。在這種轉(zhuǎn)換期間,不能讀數(shù)據(jù)。對(duì)于如可執(zhí)行的計(jì)算機(jī)程序和文本文件這樣的數(shù)據(jù)對(duì)象的檢索來(lái)說(shuō),這倒未必成問(wèn)題,因?yàn)檫@種數(shù)據(jù)對(duì)象的無(wú)錯(cuò)檢索一般比實(shí)際檢索速度更重要。
另一方面,在檢索如視頻流的音像數(shù)據(jù)時(shí),及時(shí)交付是重要的。視頻數(shù)據(jù)一般在存儲(chǔ)之前被壓縮。像MPEG-2這樣的最常用壓縮算法,基于的是預(yù)測(cè)性(predictive)壓縮,就是說(shuō),為了至少一些視頻幀的解壓,需要多個(gè)(未壓縮的)其它幀的數(shù)據(jù)。如果不及時(shí)提供這個(gè)數(shù)據(jù),在再現(xiàn)聲頻數(shù)據(jù)過(guò)程中就發(fā)生問(wèn)題;視頻中會(huì)發(fā)生打嗝,屏幕甚至黑屏。對(duì)于正在看電影的消費(fèi)者來(lái)說(shuō),這是非常惱人的。
在調(diào)度數(shù)據(jù)檢索請(qǐng)求時(shí)可以考慮由數(shù)據(jù)對(duì)象的分段引起的增加的檢索時(shí)間,但是這非常困難。在快速特技播放(trickplay)回放時(shí)尤其如此,在這種情況中,只有較少數(shù)量的幀被檢索(特技播放回放是非實(shí)時(shí)的回放,如快進(jìn)/快倒和慢進(jìn)/慢倒)。如果不在調(diào)度時(shí)加以考慮,一個(gè)對(duì)象的檢索時(shí)間的大幅增加可能?chē)?yán)重地干擾系統(tǒng)的實(shí)時(shí)性能。
這個(gè)問(wèn)題,例如不但在硬盤(pán)驅(qū)動(dòng)器上存儲(chǔ)的視頻數(shù)據(jù)上發(fā)生(這里數(shù)據(jù)對(duì)象分段是眾所周知的),而且,隨著如DVD+RW等能夠刪除和存儲(chǔ)獨(dú)立文件的可再寫(xiě)光驅(qū)在消費(fèi)電子世界的迅速普及,這個(gè)問(wèn)題在光驅(qū)上也發(fā)生。
US5842046提出一個(gè)在分開(kāi)的分配單元中不分段地存儲(chǔ)I幀的方法,以方便用于特技播放的數(shù)據(jù)檢索。然而,由于I幀大小不一,在分配單元中總是留下自由空間,導(dǎo)致存儲(chǔ)空間的浪費(fèi)。
發(fā)明內(nèi)容
因此,本發(fā)明的一個(gè)目的是,提供一種降低數(shù)據(jù)對(duì)象的分段對(duì)這些數(shù)據(jù)對(duì)象的檢索的不利影響的方法。這個(gè)目的以一種按照本發(fā)明的包含以下步驟的方法實(shí)現(xiàn)選擇要檢索的一個(gè)特定類型的多個(gè)預(yù)定的數(shù)據(jù)對(duì)象;確定被選擇的第一數(shù)據(jù)對(duì)象是否被分段存儲(chǔ)在多個(gè)分配單元上;如果被選擇的第一數(shù)據(jù)對(duì)象確實(shí)被分段存儲(chǔ)在多個(gè)分配單元上,則選擇靠近該被選擇的第一數(shù)據(jù)對(duì)象而存儲(chǔ)的該特定類型的一個(gè)第二數(shù)據(jù)對(duì)象,該第二數(shù)據(jù)對(duì)象不是分段存儲(chǔ)在多個(gè)分配單元上的,取消選擇所述被選擇的第一數(shù)據(jù)對(duì)象;檢索被選擇的數(shù)據(jù)對(duì)象。
當(dāng)要檢索一個(gè)被選擇的數(shù)據(jù)對(duì)象序列時(shí)(其中所有數(shù)據(jù)對(duì)象是一個(gè)特定類型的),是否要檢索一個(gè)特定的被選擇的數(shù)據(jù)對(duì)象并不要緊的情況是可想像的。它可能最好恰恰也是接近被選擇的數(shù)據(jù)對(duì)象的該特定類型的另一個(gè)數(shù)據(jù)對(duì)象。這例如已經(jīng)由未公開(kāi)專利申請(qǐng)EP-03100973.1(申請(qǐng)人案號(hào)PHNL030361)提出,該專利申請(qǐng)?zhí)峁?duì)一個(gè)不同問(wèn)題的解決方案。從這個(gè)起點(diǎn)推斷,從選擇的角度來(lái)看,幾乎區(qū)分不了究竟是第一個(gè)被選擇的、分段的數(shù)據(jù)對(duì)象被檢索還是第二個(gè)被選擇的、但是未分段的數(shù)據(jù)對(duì)象被檢索,第二個(gè)被選擇的數(shù)據(jù)對(duì)象在序列中接近第一個(gè)被選擇的數(shù)據(jù)對(duì)象。然而,從數(shù)據(jù)檢索的角度來(lái)看,這確實(shí)形成一個(gè)大的區(qū)別,因?yàn)榈诙€(gè)被選擇的、但是未分段的數(shù)據(jù)對(duì)象的檢索,比第一個(gè)被選擇的、分段的數(shù)據(jù)對(duì)象的檢索,花費(fèi)少得多的時(shí)間。因此,按照本發(fā)明的方法具有重要的優(yōu)勢(shì)。
在本發(fā)明的一個(gè)實(shí)施例中,數(shù)據(jù)對(duì)象是被存儲(chǔ)在一個(gè)序列中的,并且第二數(shù)據(jù)對(duì)象是從處在以下數(shù)據(jù)對(duì)象之間并包括以下數(shù)據(jù)對(duì)象的一組數(shù)據(jù)對(duì)象中選擇的一個(gè)被選擇的第三數(shù)據(jù)對(duì)象(其中被選擇的第三數(shù)據(jù)對(duì)象是所述序列中所述被選擇的第一數(shù)據(jù)對(duì)象之前最接近該第一數(shù)據(jù)對(duì)象的被選擇數(shù)據(jù)對(duì)象);和被選擇的第一數(shù)據(jù)對(duì)象。
第二數(shù)據(jù)對(duì)象可以在被選擇的第一數(shù)據(jù)對(duì)象之前、也可以在被選擇的第一數(shù)據(jù)對(duì)象之后被選擇,一般來(lái)說(shuō),這沒(méi)有大的差別。然而,當(dāng)位于被選擇的第一數(shù)據(jù)對(duì)象之后的特定類型的數(shù)據(jù)對(duì)象與被選擇的第一數(shù)據(jù)對(duì)象的偏差大于位于被選擇的第一數(shù)據(jù)對(duì)象之前的數(shù)據(jù)對(duì)象時(shí),所希望的是選擇位于被選擇的第一數(shù)據(jù)對(duì)象之前的第二數(shù)據(jù)對(duì)象。這樣,最有代表性的特技播放流被提供給觀眾。
在基于前述實(shí)施例的另一個(gè)實(shí)施例中,第二數(shù)據(jù)對(duì)象是被選擇的第三數(shù)據(jù)對(duì)象。
按照本發(fā)明方法的這個(gè)實(shí)施例更進(jìn)一步減少檢索所需的時(shí)間。然而,當(dāng)為了再現(xiàn)和顯示使用本發(fā)明檢索音像數(shù)據(jù)流時(shí),這確實(shí)帶來(lái)在特技播放流的播放中引入一些抖動(dòng)的缺點(diǎn)。另一方面,對(duì)于更高的特技播放速度來(lái)說(shuō),這并不是問(wèn)題。此外,當(dāng)分配單元的容量充分大于要檢索的數(shù)據(jù)對(duì)象的大小時(shí),被選擇的數(shù)據(jù)對(duì)象是被分段的的概率相當(dāng)?shù)汀?br>
按照本發(fā)明的電路包含一個(gè)用來(lái)執(zhí)行以下步驟的處理單元選擇要檢索的一個(gè)特定類型的多個(gè)預(yù)定的數(shù)據(jù)對(duì)象;確定被選擇的第一數(shù)據(jù)對(duì)象是否被分段存儲(chǔ)在多個(gè)分配單元上;如果被選擇的第一數(shù)據(jù)對(duì)象被分段存儲(chǔ)在多個(gè)分配單元上,則選擇靠近所述被選擇的第一數(shù)據(jù)對(duì)象之前或之后存儲(chǔ)的該特定類型的一個(gè)第二數(shù)據(jù)對(duì)象,該第二數(shù)據(jù)對(duì)象不是分段存儲(chǔ)在多個(gè)分配單元上的;并且取消選擇所述被選擇的第一數(shù)據(jù)對(duì)象;檢索被選擇的數(shù)據(jù)對(duì)象。
依照本發(fā)明的設(shè)備包含用于存儲(chǔ)音像數(shù)據(jù)的存儲(chǔ)器、按照權(quán)利要求9的用于從存儲(chǔ)器中檢索音像數(shù)據(jù)的電路和用于再現(xiàn)被檢索的音像數(shù)據(jù)的裝置。
按照本發(fā)明的計(jì)算機(jī)程序產(chǎn)品用于對(duì)處理單元編程以使其執(zhí)行按照權(quán)利要求1的方法。
按照本發(fā)明的記錄載體攜帶按照權(quán)利要求11的計(jì)算機(jī)程序產(chǎn)品。
按照本發(fā)明的被編程的計(jì)算機(jī)能執(zhí)行按照權(quán)利要求1的方法。
本發(fā)明將借助于附圖更詳細(xì)地描述本發(fā)明的實(shí)施例,附圖中圖1示出了一種設(shè)備框圖,該設(shè)備包括依照本發(fā)明的電路的實(shí)施例;圖2示出了一個(gè)音像數(shù)據(jù)流和一個(gè)被選擇幀的流;圖3示出了另一個(gè)音像數(shù)據(jù)流和按分配單元?jiǎng)澐值拇鎯?chǔ)介質(zhì)的示意表示;圖4表示按照本發(fā)明方法的一個(gè)實(shí)施例。
具體實(shí)施例方式
圖1表示消費(fèi)娛樂(lè)系統(tǒng)100,其包含作為按照本發(fā)明的設(shè)備的實(shí)施例的消費(fèi)電子設(shè)備110、用戶控制裝置160和電視機(jī)150。
設(shè)備110包含一個(gè)存儲(chǔ)裝置-最好是用于存儲(chǔ)音像數(shù)據(jù)的硬盤(pán)驅(qū)動(dòng)器122;一個(gè)處理單元124,用于控制該設(shè)備;一個(gè)只讀存儲(chǔ)器(ROM)126,作為按照本發(fā)明的記錄載體的實(shí)施例,用于存儲(chǔ)對(duì)處理單元124編程的程序數(shù)據(jù);一個(gè)DMA控制器128,用于從硬盤(pán)驅(qū)動(dòng)器122向一個(gè)也是該設(shè)備所包含的視頻再現(xiàn)單元130進(jìn)行快速數(shù)據(jù)傳輸;一個(gè)用戶命令控制器134,用于接收用戶命令。ROM 126能以各種方式實(shí)現(xiàn)固態(tài)ROM、EEPROM、磁性數(shù)據(jù)載體、光數(shù)據(jù)載體或任何其它載體。處理單元124和ROM 126構(gòu)成了依照本發(fā)明的電路的實(shí)施例。
電視機(jī)150包含屏幕152。電視機(jī)通過(guò)第一連接器132連接到消費(fèi)電子設(shè)備110。
用戶控制裝置160包含播放按鈕162、倒片按鈕164和快進(jìn)按鈕166,用于控制消費(fèi)電子設(shè)備110回放音像數(shù)據(jù)流的方向和速度。用戶控制裝置160通過(guò)第二連接器136連接到消費(fèi)電子設(shè)備110。連接可以是無(wú)線的或者是有線的,這對(duì)本發(fā)明的工作來(lái)說(shuō)無(wú)關(guān)緊要。
消費(fèi)電子設(shè)備110用來(lái)回放被存儲(chǔ)在硬盤(pán)驅(qū)動(dòng)器122中的音像數(shù)據(jù)流。在另一個(gè)實(shí)施例中,也可以就用光盤(pán)存儲(chǔ)?;胤庞衫绨聪虏シ虐粹o162的用戶命令啟動(dòng)。這在用戶控制裝置160中生成一個(gè)控制信號(hào),由用戶命令控制器134接收并被傳送到處理單元124。
接收到控制信號(hào)后,由ROM 126中的程序編程的處理單元124開(kāi)始從硬盤(pán)驅(qū)動(dòng)器122中檢索音像數(shù)據(jù)并安排把所檢索的數(shù)據(jù)通過(guò)DMA控制器128向視頻再現(xiàn)單元130傳送。視頻再現(xiàn)單元130解碼該音像數(shù)據(jù),在這個(gè)實(shí)施例中,音像數(shù)據(jù)是按照MPEG(運(yùn)動(dòng)圖像專家組)2標(biāo)準(zhǔn)被壓縮的。視頻再現(xiàn)單元的輸出是按照一種已知格式(例如SECAM或PAL)的、可在電視機(jī)150上顯示的視頻信號(hào)。該視頻信號(hào)是通過(guò)第一連接器132提供的。
圖2示出了按照MPEG 2標(biāo)準(zhǔn)壓縮的壓縮視頻數(shù)據(jù)流200。流200是由三種不同類型的壓縮幀組成的。它們被按所謂的圖像組或GOP分組。就本例而言,采用大小為6的GOP,但是該領(lǐng)域技術(shù)人員知道,其它GOP大小是允許的。
“I”幀是內(nèi)部編碼的,這意味著它們能用適當(dāng)?shù)慕鈮核惴ê蛠?lái)自幀本身的數(shù)據(jù)解壓?!癇”和“P”幀是幀間編碼的,這意味著要解壓這些幀,也需要來(lái)自其它(解碼的)幀的數(shù)據(jù)。為了解碼壓縮的P幀,需要直接處在前的I幀或P幀的數(shù)據(jù)。為了B幀的解壓,需要來(lái)自在前的或后繼的I幀或P幀的數(shù)據(jù)。
在正常的實(shí)時(shí)數(shù)據(jù)回放期間顯示所有圖像,在電視機(jī)150(圖1)的顯示器152(圖1)上再現(xiàn)流暢的電視片,因?yàn)樵谇耙欢蚊枋龅乃薪獯a都能實(shí)時(shí)地進(jìn)行。在快速回放視頻數(shù)據(jù)的情況下,例如在實(shí)時(shí)回放期間用戶按下倒片按鈕164或快進(jìn)按鈕166時(shí),與快速回放同步地解碼所有的幀不再可能。這也是不必要的,因?yàn)樵谶@樣的情況下,要被再現(xiàn)的幀多得超過(guò)能被人類眼睛和頭腦處理的數(shù)量。
因此,一般只再現(xiàn)I幀。對(duì)于流200來(lái)說(shuō),這意味著對(duì)于快速回放來(lái)說(shuō),第一I幀202、第二I幀204、第三I幀206和第四I幀208被組合成一個(gè)特技播放流220。以流200的相同幀速率回放該特技播放流220,將產(chǎn)生6倍的速度增長(zhǎng)。當(dāng)所有的幀要以3倍長(zhǎng)的時(shí)間被顯示時(shí),這將導(dǎo)致2倍的速度增加。
為了更高的再現(xiàn)速度,例如12倍實(shí)時(shí),可以省略一些I幀的再現(xiàn),而只再現(xiàn)選定數(shù)目的I幀。這在顯示流300的圖3中例示。流300是被用MPEG 2標(biāo)準(zhǔn)壓縮的。為了簡(jiǎn)化,只指示了I幀;GOP大小是6(每個(gè)I幀后有一個(gè)P幀和4個(gè)B幀)。由于GOP大小是6,并且每一個(gè)GOP有一個(gè)I幀,因此,由圖3中的箭頭所指示的每個(gè)第二I幀必須被再現(xiàn),其中每個(gè)幀被顯示的時(shí)間如正常回放速度期間時(shí)的那樣,回放的加速因數(shù)是12。
諸如硬盤(pán)驅(qū)動(dòng)器122的硬盤(pán)驅(qū)動(dòng)器是以分配單元形式組織的。對(duì)于諸如視頻存儲(chǔ)器的消費(fèi)電子應(yīng)用來(lái)說(shuō),分配單元相當(dāng)大。明白分配單元與扇區(qū)不同是重要的。對(duì)于視頻存儲(chǔ)器來(lái)說(shuō),它們至少充分地(至少10倍)大于一個(gè)I幀的大小。不過(guò),一個(gè)I幀的數(shù)據(jù)可以這樣被存儲(chǔ),即被分段地存儲(chǔ)在兩個(gè)不相鄰的分配單元上。這意味著,這樣一個(gè)I幀的檢索,花費(fèi)的時(shí)間量是檢索一個(gè)不分段的I幀所需的時(shí)間量的兩倍。
實(shí)際增加的時(shí)間量取決于兩個(gè)分配單元之間的尋找距離和旋轉(zhuǎn)延遲。其原因是,在一個(gè)盤(pán)請(qǐng)求期間,只能檢索至少一個(gè)分配單元的僅僅一個(gè)連續(xù)塊的數(shù)據(jù)。當(dāng)分布在兩個(gè)不相鄰的分配單元上的諸如I幀的分段數(shù)據(jù)對(duì)象要按照一個(gè)文件請(qǐng)求的順序被檢索時(shí),必須發(fā)出和執(zhí)行兩個(gè)盤(pán)請(qǐng)求。從文件請(qǐng)求到盤(pán)請(qǐng)求的轉(zhuǎn)換,由文件系統(tǒng)進(jìn)行,文件系統(tǒng)是主機(jī)軟件棧的一部分。
條350是硬盤(pán)驅(qū)動(dòng)器122的一部分的示意表示,并且被劃分為第一分配單元352、第二分配單元354、第三分配單元356和第四分配單元358。盡管一個(gè)分配單元的容量大于一個(gè)I幀的大小,一個(gè)I幀仍然有可能被分段地存儲(chǔ)在兩個(gè)分配單元上。此外,分配單元盡管在圖中是相鄰的,它們?cè)诒P(pán)上未必非要位于相鄰的位置不可。
當(dāng)分配單元在盤(pán)上的位置不相鄰時(shí),這導(dǎo)致這樣的問(wèn)題,即要檢索一個(gè)I幀,必須從兩個(gè)分配單元檢索數(shù)據(jù)。這意味著,為了一個(gè)文件請(qǐng)求,需要執(zhí)行兩個(gè)盤(pán)請(qǐng)求;用一個(gè)盤(pán)請(qǐng)求能檢索最多一個(gè)分配單元的數(shù)據(jù)。與不分段的I幀的數(shù)據(jù)檢索相比,這增加了分段的I幀的檢索時(shí)間。
為了音像數(shù)據(jù)的回放,重要的是數(shù)據(jù)被及時(shí)從硬盤(pán)驅(qū)動(dòng)器122(圖1)中檢索出來(lái)并及時(shí)地被再現(xiàn)單元130(圖1)再現(xiàn)。此外,當(dāng)硬盤(pán)驅(qū)動(dòng)器被一個(gè)以上應(yīng)用使用時(shí),應(yīng)當(dāng)高效地檢索數(shù)據(jù),以限制盤(pán)請(qǐng)求的數(shù)目。
為了真正快速地、例如以與視頻流的實(shí)時(shí)播放相比多于10倍的速度特技播放(以非實(shí)時(shí)的速度更快或更慢地再現(xiàn)一個(gè)視頻流)一個(gè)視頻流,是否嚴(yán)格地按周期地選擇I幀并不重要。例如如圖3中所示,這就意味著,選擇第三或第五I幀代替第四I幀用于再現(xiàn),以及選擇第七或第九I幀代替第八I幀用于再現(xiàn),幾乎沒(méi)有差別。
由于上述原因,使用按照本發(fā)明的一個(gè)實(shí)施例,流300的快速重放將導(dǎo)致用圖4所示的流程圖400所示的方法檢索和再現(xiàn)第一、第五、第八和第十二I幀。通過(guò)檢索第五I幀代替第四I幀用于再現(xiàn),所需的盤(pán)請(qǐng)求數(shù)少一個(gè),因此,流300的快速重放的數(shù)據(jù)檢索所需的時(shí)間更少。
將通過(guò)流程圖400對(duì)剛剛討論的按照本發(fā)明方法的實(shí)施例做更詳細(xì)的說(shuō)明。流程圖400以起點(diǎn)402開(kāi)始,其中接收到一個(gè)特技播放命令。下一步,在過(guò)程步驟404中,選擇第一幀檢索和再現(xiàn)。選擇哪些幀,主要取決于用戶所選擇的特技播放速度。對(duì)于快速的特技播放速度來(lái)說(shuō),相比于較低速度的特技播放,要選擇相互之間的距離更大的而數(shù)目更少的幀。對(duì)于圖3中所示的例子來(lái)說(shuō),選擇每一個(gè)第四幀。
●下一步,在判斷步驟406,檢查任何被選擇的第一幀是否是分段存儲(chǔ)的,即分布在多個(gè)非相鄰的分配單元上。這可以各種方式進(jìn)行文件系統(tǒng)一般保持文件數(shù)據(jù)的存儲(chǔ)所在的盤(pán)位置的一個(gè)列表。因此,對(duì)于任何數(shù)據(jù)對(duì)象,像一個(gè)要被檢索的文件那樣的片斷(例如起始偏移字節(jié)量、按字節(jié)算的長(zhǎng)度),可以找到位置。當(dāng)一個(gè)數(shù)據(jù)對(duì)象的所有盤(pán)位置并非是相鄰的時(shí),該數(shù)據(jù)對(duì)象是分段存儲(chǔ)的。這樣,判斷某個(gè)數(shù)據(jù)對(duì)象是否是分段的,是簡(jiǎn)單的事情。
視頻應(yīng)用可以保持一個(gè)列表,描述諸如I幀的視頻片斷以及它們?cè)谖募?或視頻流)中的位置,例如一個(gè)CPI(特征信息點(diǎn))文件,其中有對(duì)應(yīng)每個(gè)I幀的起始偏移字節(jié)量、按字節(jié)算的長(zhǎng)度。因此對(duì)于給定的I幀尋找要被檢索的文件的片斷就非常簡(jiǎn)單。綜合上述兩種方法直接得出一個(gè)I幀的檢索是否是分段的。
●像I幀那樣的數(shù)據(jù)對(duì)象,被存儲(chǔ)一個(gè)鏈接分配單元列表中。該數(shù)據(jù)對(duì)象被分配到的兩個(gè)連續(xù)的分配單元可能是相鄰的,或者是不相鄰的??梢詫?shù)據(jù)被不相鄰地存儲(chǔ)所在的那些點(diǎn)保持在一個(gè)列表中,以與文件的起點(diǎn)相距的距離來(lái)表示(按位或兆位(Mbits)計(jì))。此外,也可以將每個(gè)I幀的起點(diǎn)和長(zhǎng)度存儲(chǔ)在一個(gè)列表中,其中的起點(diǎn)也能以與文件的起點(diǎn)相距的距離(按位或兆位(Mbits)計(jì))和按位或兆位(Mbits)計(jì)的對(duì)應(yīng)長(zhǎng)度來(lái)表示。將這兩個(gè)列表組合起來(lái),就能容易地通過(guò)平行地掃描兩個(gè)列表而確定哪些I幀是相鄰地存儲(chǔ)的。
設(shè)p_1、p_2、p_3、...、p_n代表不相鄰地存儲(chǔ)的數(shù)據(jù)在文件中的位置。設(shè)(s_1,1_1)、(s_2,1_2)、(s_3,1_3)、...、(s_m,1_m)是連續(xù)的I幀的開(kāi)始位置和長(zhǎng)度的列表。于是,我們可以掃描第二個(gè)列表,直到找到一個(gè)j,使得1.s_j<p_1<s_j+1_j或2.s_j+1_j<p_1<s_(j+1)。
在第一種情況中,我們得出在文件中的第一個(gè)非相鄰點(diǎn)(non-continuity)分割一個(gè)I幀,準(zhǔn)確地說(shuō)是第j個(gè)I幀。在第二種情況中,它不分割一個(gè)I幀。該過(guò)程可以繼續(xù),以檢查所有的不相鄰點(diǎn)。
當(dāng)至少一個(gè)被選擇的I幀是分段的時(shí),在過(guò)程步驟412中,選擇接近分段的第一幀的第二I幀。這可以是直接位于分段的第一幀之前的或者之后的第二I幀,但是也可以是第一I幀組中的分段的I幀之前的或者之后的第二I幀。這意味著,“接近”被定義為或者是時(shí)間上靠近(在回放時(shí)間的意義上)或者邏輯上靠近(在按位計(jì)的距離的意義上)。它未必意味著在盤(pán)片(disk platter)上的空間上的靠近。
在一個(gè)有益的實(shí)施例中,選擇直接位于分段的I幀之前的或者之后的一個(gè)被選擇的第一I幀。換言之,上一個(gè)被顯示的I幀被再次顯示,以代替分段的I幀的顯示。這個(gè)實(shí)施例的一個(gè)優(yōu)點(diǎn)是甚至節(jié)省了兩個(gè)盤(pán)請(qǐng)求。在另一個(gè)實(shí)施例中,直接位于分段的I幀之后的被選擇的I幀被顯示,以代替分段的I幀的顯示。
在步驟412中選擇了第二I幀后,在步驟414中,分段的第一I幀被取消選擇。然后,過(guò)程繼續(xù)到步驟408,被選擇的(第一和第二)I幀被檢索出來(lái)用于再現(xiàn)。如果在判斷步驟406中檢測(cè)到被選擇的I幀沒(méi)有被分段存儲(chǔ)的,則過(guò)程直接繼續(xù)到步驟408。最后,在最后一個(gè)步驟410中,被檢索的I幀被再現(xiàn),用于在電視機(jī)150(圖1)的屏幕152(圖1)上顯示。
盡管通過(guò)一個(gè)在其上存儲(chǔ)了按照MPEG-2標(biāo)準(zhǔn)壓縮的視頻流的硬盤(pán)描述了本發(fā)明的實(shí)施例,本發(fā)明也適用于其它情形。其它情形的例子是如MPEG-4和DV的其它視頻存儲(chǔ)標(biāo)準(zhǔn)。在不偏離本發(fā)明范圍的情況下可能有各種變體。硬盤(pán)驅(qū)動(dòng)器能被代之以光盤(pán)或磁-光盤(pán)、甚至固態(tài)存儲(chǔ)器。另外,也可以使用其它壓縮算法。此外,要被檢索的數(shù)據(jù)也可以是視頻數(shù)據(jù)以外的數(shù)據(jù)。一個(gè)例子是要從高級(jí)音頻緊致盤(pán)(SuperAudio Compact Disc)中檢索出音頻脈沖串用于快速特技播放的情形。
本發(fā)明的實(shí)施例是按照只在特技播放期間檢索I幀而描述的。然而,也可以檢索P幀,如果已經(jīng)解碼了在前的I幀或P幀,因?yàn)檫@個(gè)幀是解碼一個(gè)P幀所需要的。理論上,這意味著也可以檢索B幀,但是在快速特技播放模式中,可能需要太多的處理能力并且需要檢索和解碼太多的其它幀,使這個(gè)實(shí)施方式效率不高。因此,盡管按照本發(fā)明是要檢索“特定類型”的幀,在把本發(fā)明應(yīng)用于供快速特技播放的MPEG2編碼的數(shù)據(jù)的檢索時(shí),“特定類型”卻不限定于I幀。
同樣,當(dāng)檢索非音像數(shù)據(jù)的被選擇的部分時(shí),也能使用本發(fā)明,盡管對(duì)這種情況的實(shí)時(shí)要求一般更寬松。在從一個(gè)測(cè)量值序列中進(jìn)行選擇,以確定例如平均值、中值或標(biāo)準(zhǔn)偏差和被選擇的部分之間的波動(dòng)不太高時(shí),也能使用本發(fā)明。
另外,被描述為由單個(gè)處理單元執(zhí)行的各種任務(wù),在本發(fā)明的其它實(shí)施例中也可以由多個(gè)模塊執(zhí)行,而不會(huì)偏離本發(fā)明的范圍。另一方面,被描述為由多個(gè)模塊執(zhí)行的任務(wù)也可以組合在一個(gè)處理模塊中。
對(duì)本發(fā)明可以總結(jié)如下數(shù)據(jù)對(duì)象的不相鄰的存儲(chǔ),嚴(yán)重妨礙所述數(shù)據(jù)對(duì)象的檢索速度。此外,在檢索其中有些是被分段的多個(gè)數(shù)據(jù)對(duì)象時(shí),所有數(shù)據(jù)對(duì)象的檢索時(shí)間變得更不可預(yù)測(cè)。因此,期望只檢索非分段的數(shù)據(jù)對(duì)象。對(duì)于某些情形來(lái)說(shuō),可能不必檢索一個(gè)特定的數(shù)據(jù)對(duì)象。在這種情況下,檢索一個(gè)相同類型的類似數(shù)據(jù)對(duì)象就足夠了。為此,本發(fā)明主要提供一種用于數(shù)據(jù)的檢索的方法和電路。本發(fā)明特別適合于檢索用于特技播放的音像數(shù)據(jù)。當(dāng)一個(gè)為再現(xiàn)而被選擇的第一幀是分段存儲(chǔ)的時(shí),選擇和檢索一個(gè)第二非分段的幀代替該第一幀。
權(quán)利要求
1.檢索被存儲(chǔ)在一個(gè)按分配單元(352,354,356,358)組織的存儲(chǔ)裝置(122)中的數(shù)據(jù)對(duì)象(202,204,206,208)的方法,該方法包含以下步驟a)選擇要檢索的一個(gè)特定類型的多個(gè)預(yù)定的數(shù)據(jù)對(duì)象;b)確定一個(gè)被選擇的第一數(shù)據(jù)對(duì)象是否被分段存儲(chǔ)在多個(gè)分配單元上;c)如果被選擇的第一數(shù)據(jù)對(duì)象是被分段存儲(chǔ)在多個(gè)分配單元上,則i.)選擇靠近所述被選擇的第一數(shù)據(jù)對(duì)象而存儲(chǔ)的該特定類型的一個(gè)第二數(shù)據(jù)對(duì)象,該第二數(shù)據(jù)對(duì)象不是分段存儲(chǔ)在多個(gè)分配單元上的;ii.)取消選擇所述被選擇的第一數(shù)據(jù)對(duì)象;d)檢索被選擇的數(shù)據(jù)對(duì)象。
2.按照權(quán)利要求1的方法,其中,數(shù)據(jù)對(duì)象是被存儲(chǔ)在一個(gè)序列中的,并且第二數(shù)據(jù)對(duì)象是從在以下數(shù)據(jù)對(duì)象之間并包括它們的一組數(shù)據(jù)對(duì)象中選擇的a)一個(gè)被選擇的第三數(shù)據(jù)對(duì)象,其中該被選擇的第三數(shù)據(jù)對(duì)象是所述序列中所述被選擇的第一數(shù)據(jù)對(duì)象之前最接近的被選擇數(shù)據(jù)對(duì)象;和b)被選擇的第一數(shù)據(jù)對(duì)象。
3.按照權(quán)利要求2的方法,其中,第二數(shù)據(jù)對(duì)象是被選擇的第三數(shù)據(jù)對(duì)象。
4.按照權(quán)利要求1的方法,其中,數(shù)據(jù)對(duì)象是被存儲(chǔ)在一個(gè)序列中的,并且第二數(shù)據(jù)對(duì)象是從在以下數(shù)據(jù)對(duì)象之間并包括它們的一組數(shù)據(jù)對(duì)象中選擇的a)一個(gè)被選擇的第四數(shù)據(jù)對(duì)象,其中該被選擇的第四數(shù)據(jù)對(duì)象是所述序列中所述被選擇的第一數(shù)據(jù)對(duì)象之后最接近的被選擇數(shù)據(jù)對(duì)象;和b)被選擇的第一數(shù)據(jù)對(duì)象。
5.按照權(quán)利要求4的方法,其中,第二數(shù)據(jù)對(duì)象是被選擇的第四數(shù)據(jù)對(duì)象。
6.按照權(quán)利要求1的方法,其中,數(shù)據(jù)對(duì)象是由一個(gè)視頻流(200)包含的幀。
7.按照權(quán)利要求6,其中,該流是編碼的,并且包含內(nèi)部編碼的和幀間編碼的幀,并且該特定類型的數(shù)據(jù)對(duì)象是內(nèi)部編碼的幀。
8.按照權(quán)利要求1的方法,其中,存儲(chǔ)裝置是基于盤(pán)的介質(zhì)。
9.用于檢索被存儲(chǔ)在一個(gè)按分配單元(352,354,356,358)組織的存儲(chǔ)裝置(122)中的數(shù)據(jù)對(duì)象(202,204,206,208)的電路(124),該電路包含一個(gè)處理單元(124)以用于a)選擇要檢索的一個(gè)特定類型的多個(gè)預(yù)定的數(shù)據(jù)對(duì)象;b)確定一個(gè)被選擇的第一數(shù)據(jù)對(duì)象是否被分段存儲(chǔ)在多個(gè)分配單元上;c)如果被選擇的第一數(shù)據(jù)對(duì)象被分段存儲(chǔ)在多個(gè)分配單元上,則i.)選擇靠近所述被選擇的第一數(shù)據(jù)對(duì)象之前或之后存儲(chǔ)的該特定類型的一個(gè)第二數(shù)據(jù)對(duì)象,該第二數(shù)據(jù)對(duì)象不是分段存儲(chǔ)在多個(gè)分配單元上的;ii.)取消選擇所述被選擇的第一數(shù)據(jù)對(duì)象;d)檢索被選擇的數(shù)據(jù)對(duì)象。
10.用于音像數(shù)據(jù)的再現(xiàn)的設(shè)備(110),包含用于存儲(chǔ)音像數(shù)據(jù)的存儲(chǔ)器、按照權(quán)利要求9的用于從存儲(chǔ)器中檢索音像數(shù)據(jù)的電路和用于再現(xiàn)被檢索的音像數(shù)據(jù)的裝置。
11.用于對(duì)處理單元編程使其執(zhí)行按照權(quán)利要求1的方法的計(jì)算機(jī)程序產(chǎn)品(126)。
12.攜帶按照權(quán)利要求11的計(jì)算機(jī)程序產(chǎn)品的記錄載體(126)。
13.能執(zhí)行按照權(quán)利要求1的方法的被編程的計(jì)算機(jī)。
全文摘要
數(shù)據(jù)對(duì)象的不相鄰的存儲(chǔ),嚴(yán)重妨礙所述數(shù)據(jù)對(duì)象(202)的檢索速度。此外,在檢索其中有些是分段的多個(gè)數(shù)據(jù)對(duì)象時(shí),所有數(shù)據(jù)對(duì)象的檢索時(shí)間變得更不可預(yù)測(cè)。因此,期望只檢索非分段的數(shù)據(jù)對(duì)象。對(duì)于某些情形來(lái)說(shuō),可能不必檢索一個(gè)特定的數(shù)據(jù)對(duì)象。在這種情況下,檢索一個(gè)相同類型的類似數(shù)據(jù)對(duì)象就足夠了。為此,本發(fā)明主要提供一種用于數(shù)據(jù)的檢索的方法和電路(124)。本發(fā)明特別適合于檢索用于特技播放的音像數(shù)據(jù)。當(dāng)一個(gè)為再現(xiàn)而被選擇的第一幀是分段存儲(chǔ)的時(shí),選擇和檢索一個(gè)第二非分段的幀代替該第一幀。
文檔編號(hào)G11B27/00GK1890966SQ200480035934
公開(kāi)日2007年1月3日 申請(qǐng)日期2004年11月25日 優(yōu)先權(quán)日2003年12月3日
發(fā)明者J·H·M·科斯特, R·喬徹姆森, 李虹 申請(qǐng)人:皇家飛利浦電子股份有限公司