專利名稱:智能的解碼圖片緩沖的制作方法
技術(shù)領(lǐng)域:
本發(fā)明的實(shí)施例涉及多媒體視頻解碼和對(duì)視頻解碼部分進(jìn)行的智能解碼圖片緩沖。
背景技術(shù):
視頻技術(shù)因?yàn)槟軌蛳蛳M(fèi)者展示運(yùn)動(dòng)的圖像而非常受歡迎。視頻是表示電影場(chǎng)景的一系列靜止圖像,這些圖像可以通過電子手段來捕獲、記錄、處理、存儲(chǔ)、發(fā)送以及重建。可以通過數(shù)字存儲(chǔ)格式和模擬存儲(chǔ)格式來對(duì)視頻進(jìn)行存儲(chǔ)。數(shù)字存儲(chǔ)格式包含DVD、 QuickTime和MPEG-4。模擬存儲(chǔ)格式包含VHS和Betamax錄像帶。視頻壓縮指的是一種對(duì)用來表示視頻圖像的數(shù)據(jù)進(jìn)行編碼并降低數(shù)據(jù)量的數(shù)據(jù)壓縮過程。通常而言,視頻壓縮是在將視頻數(shù)據(jù)發(fā)送到目的地并隨后將其解碼之前執(zhí)行的。 視頻壓縮標(biāo)準(zhǔn)包含MPEG-2、ffi63、MPEG-4第2部分以及H264/AVC。與以前的標(biāo)準(zhǔn)相比, 64 標(biāo)準(zhǔn)以低比特速率提供了高質(zhì)量的視頻。之所以可以實(shí)現(xiàn)視頻壓縮,是因?yàn)橐曨l數(shù)據(jù)包含空間冗余和時(shí)間冗余。這些冗余使得未經(jīng)壓縮的視頻流效率低下。在一種技術(shù)中,視頻壓縮通過對(duì)單個(gè)幀的各個(gè)部分之間的差異進(jìn)行寄存,使用幀內(nèi)壓縮來降低空間冗余。同樣,通過對(duì)幀間的差異進(jìn)行寄存,視頻壓縮使用幀間壓縮來降低時(shí)間冗余。視頻解決方案包含標(biāo)清視頻和高清(HD)視頻。通常而言,HD視頻指的是分辨率比標(biāo)清視頻的分辨率高的任何視頻系統(tǒng)。HD視頻分辨率包含1280X720(720p)或 1920X1080(1080i或1080p)。HD視頻產(chǎn)生更好的視覺清晰度,但是也占用了更多的存儲(chǔ)器
存儲(chǔ)空間。在視頻編碼中,系統(tǒng)的最大數(shù)據(jù)傳輸速率就是其的數(shù)字帶寬。換句話說,帶寬是計(jì)算機(jī)能夠在數(shù)據(jù)信道上傳遞數(shù)據(jù)的數(shù)據(jù)量。可以用比特速率(表達(dá)為比特/秒)來對(duì)帶寬進(jìn)行衡量,帶寬表示能夠通過一個(gè)連接來傳遞數(shù)據(jù)的最大比特速率。在計(jì)算機(jī)網(wǎng)絡(luò)中,帶寬管理是測(cè)量和控制通過網(wǎng)絡(luò)信道進(jìn)行傳輸?shù)臄?shù)據(jù)量的過程,以避免將信道占用達(dá)到其容量 (這種情況可能導(dǎo)致網(wǎng)絡(luò)擁塞和較低的性能)。因此,節(jié)省帶寬有助于防止較低的視頻性能。在傳統(tǒng)視頻解碼器中,將編碼比特流輸入到系統(tǒng)中。在一種技術(shù)中,可以對(duì)編碼比特流進(jìn)行熵編碼以形成殘差。隨后,該殘差可以被逆掃描、逆量化并逆變換。隨后,運(yùn)動(dòng)補(bǔ)償模塊使用先前幀或?qū)韼瑏懋a(chǎn)生幀間宏塊預(yù)測(cè)值,或者空間補(bǔ)償模塊使用相鄰宏塊來產(chǎn)生幀內(nèi)宏塊預(yù)測(cè)值。MPEG4/H263標(biāo)準(zhǔn)只支持幀間預(yù)測(cè)值,而H264標(biāo)準(zhǔn)既支持幀間預(yù)測(cè)值也支持幀內(nèi)預(yù)測(cè)值。預(yù)測(cè)值宏塊可以被添加到經(jīng)掃描、量化和變換的殘差??梢詫?duì)這個(gè)結(jié)果進(jìn)行濾波并且隨后作為重建并解碼的宏塊進(jìn)行輸出。幀間宏塊預(yù)測(cè)值可以從不同尺寸的塊形成,這些不同尺寸的塊包含可變尺寸的、 不重疊的塊(稱為分割和子分割)的整數(shù)倍。MPEG4/H263支持一個(gè)16x16宏塊或4個(gè)8x8 塊的塊或分割。H264支持一個(gè)16x16宏塊、2個(gè)16x8、2個(gè)8x16或4個(gè)8x8塊或分割。H264還支持將每個(gè)8x8分割再分成1個(gè)8x8分割、2個(gè)8x4子分割、2個(gè)4x8或4個(gè)4x4子分割。 每個(gè)分割或子分割可以具有單獨(dú)的運(yùn)動(dòng)向量,該運(yùn)動(dòng)向量描述了要使用哪個(gè)參考幀以及在參考幀中用于收集預(yù)測(cè)值分割或子分割的位置。這些參考幀可以被臨時(shí)地存儲(chǔ)并組織在存儲(chǔ)器中的解碼圖片緩沖器中。解碼圖片緩沖器可以向解碼像素處理器(即,解碼器)提供圖片或幀。視頻解碼器在存儲(chǔ)器中保持若干緩沖器,其中,在對(duì)視頻比特流進(jìn)行解碼的過程中,解碼器從該存儲(chǔ)器讀取或者向該存儲(chǔ)器寫入。這些讀取和寫入包含視頻比特流讀取/ 寫入、系統(tǒng)比特流讀取/寫入、命令緩沖器讀取/寫入以及運(yùn)動(dòng)向量讀取/寫入。在解碼圖片緩沖器和解碼像素處理器之間發(fā)送和接收被參考的視頻解碼部分通常最為消耗帶寬。視頻的解碼部分可以被解碼器參考一次或者參考多次。視頻部分被參考的越頻繁,則占用的帶寬越多。與解碼視頻部分不被頻繁參考的情況相比,如果視頻部分被頻繁地參考,那么將消耗更多的帶寬。這是因?yàn)槊慨?dāng)解碼視頻部分被參考時(shí),則將解碼視頻部分從解碼圖片緩沖器發(fā)送到解碼器,而在每個(gè)傳輸期間都會(huì)消耗帶寬。
發(fā)明內(nèi)容
一個(gè)實(shí)施例是一種視頻數(shù)據(jù)緩沖系統(tǒng),其包括被配置為通過對(duì)與視頻數(shù)據(jù)的解碼部分相對(duì)應(yīng)的視頻數(shù)據(jù)比特流的編碼部分進(jìn)行前瞻來對(duì)所述視頻數(shù)據(jù)的解碼部分的值進(jìn)行預(yù)測(cè)的前瞻解析器,被配置為對(duì)所述視頻數(shù)據(jù)比特流的所述編碼部分進(jìn)行解碼的解碼器,以及被配置為基于所述視頻數(shù)據(jù)的解碼部分的所預(yù)測(cè)的值來將所述視頻數(shù)據(jù)的解碼部分存儲(chǔ)在第一存儲(chǔ)器的第一緩沖器中或第二存儲(chǔ)器的第二緩沖器中的存儲(chǔ)器管理器。在另一個(gè)實(shí)施例中,有一種用于對(duì)視頻數(shù)據(jù)進(jìn)行緩沖的方法,所述方法包括通過對(duì)與視頻數(shù)據(jù)的解碼部分相對(duì)應(yīng)的視頻數(shù)據(jù)比特流的編碼部分進(jìn)行前瞻來對(duì)所述視頻數(shù)據(jù)的解碼部分的值進(jìn)行預(yù)測(cè),對(duì)所述視頻數(shù)據(jù)比特流的所述編碼部分進(jìn)行解碼,以及基于所述視頻數(shù)據(jù)的解碼部分的所預(yù)測(cè)的值來確定是將所述視頻數(shù)據(jù)的解碼部分存儲(chǔ)在第一存儲(chǔ)器的第一緩沖器中還是第二存儲(chǔ)器的第二緩沖器中。在另一個(gè)實(shí)施例中,有一種視頻數(shù)據(jù)緩沖系統(tǒng),包括用于通過對(duì)與視頻數(shù)據(jù)的解碼部分相對(duì)應(yīng)的視頻數(shù)據(jù)比特流的編碼部分進(jìn)行前瞻來對(duì)所述視頻數(shù)據(jù)的解碼部分的值進(jìn)行預(yù)測(cè)的模塊,用于對(duì)所述視頻數(shù)據(jù)比特流的所述編碼部分進(jìn)行解碼的模塊,以及用于基于所述視頻數(shù)據(jù)的解碼部分的所預(yù)測(cè)的值來確定是將所述視頻數(shù)據(jù)的解碼部分存儲(chǔ)在第一存儲(chǔ)器的第一緩沖器中還是第二存儲(chǔ)器的第二緩沖器中的模塊。在另一個(gè)實(shí)施例中,有一種包含軟件的計(jì)算機(jī)可讀介質(zhì),所述軟件在被執(zhí)行時(shí),使得計(jì)算機(jī)執(zhí)行以下動(dòng)作通過對(duì)與視頻數(shù)據(jù)的解碼部分相對(duì)應(yīng)的視頻數(shù)據(jù)比特流的編碼部分進(jìn)行前瞻來對(duì)所述視頻數(shù)據(jù)的解碼部分的值進(jìn)行預(yù)測(cè),對(duì)所述視頻數(shù)據(jù)比特流的所述編碼部分進(jìn)行解碼,以及基于所述視頻數(shù)據(jù)的解碼部分的所預(yù)測(cè)的值來確定是將所述視頻數(shù)據(jù)的解碼部分存儲(chǔ)在第一存儲(chǔ)器的第一緩沖器中還是第二存儲(chǔ)器的第二緩沖器中。在另一個(gè)實(shí)施例中,有一種視頻數(shù)據(jù)緩沖系統(tǒng),包括被配置為對(duì)已編碼的視頻數(shù)據(jù)的跳過部分進(jìn)行識(shí)別和標(biāo)記的前瞻解析器,被配置為對(duì)所述視頻數(shù)據(jù)的跳過部分進(jìn)行解碼的解碼器,其中,經(jīng)解碼的所述視頻數(shù)據(jù)的跳過部分具有視頻數(shù)據(jù)的對(duì)應(yīng)相同的解碼部分,以及被配置為將經(jīng)解碼的所述視頻數(shù)據(jù)的跳過部分和所述視頻數(shù)據(jù)的對(duì)應(yīng)相同的解碼部分存儲(chǔ)在單個(gè)參考存儲(chǔ)器位置中的存儲(chǔ)器管理器。
圖1是示出了視頻比特流中的一組幀的框圖。圖2是示出了一種用于進(jìn)行智能解碼圖片緩沖的系統(tǒng)的框圖。圖3是示出了一種用于進(jìn)行智能解碼圖片緩沖的高層級(jí)處理的流程圖。圖4是示出了用于進(jìn)行智能解碼圖片緩沖的一個(gè)實(shí)施例的測(cè)試結(jié)果圖。
具體實(shí)施例方式本文描述了一種用于進(jìn)行智能解碼圖片緩沖的系統(tǒng)和方法。在一個(gè)實(shí)施例中,視頻比特流緩沖器接收并且臨時(shí)保持編碼壓縮比特流,該編碼壓縮比特流包含視頻的各個(gè)部分。在一個(gè)實(shí)施例中,緩沖器保持來自輸入視頻比特流的一個(gè)或多個(gè)視頻幀。隨后,前瞻解析器提前在視頻比特流緩沖器中進(jìn)行掃描以分析視頻比特流緩沖器中的編碼視頻比特流的各個(gè)部分,從而對(duì)解碼視頻部分的“值”進(jìn)行預(yù)測(cè)。在一個(gè)實(shí)施例中,解碼視頻部分的值與該視頻部分被后來的視頻幀參考的頻繁程度有關(guān)。舉例而言,那些被確定為要被多次參考的視頻幀可以被設(shè)為具有高值,而那些不被其他視頻幀參考的視頻幀可以被設(shè)為具有低值?;趯?duì)視頻值的前瞻預(yù)測(cè),智能存儲(chǔ)器管理器對(duì)解碼圖片緩沖器中的不同解碼視頻部分的優(yōu)先次序進(jìn)行區(qū)分??梢詫⒏咧狄曨l部分發(fā)送到具有非常快的存取時(shí)間的第一緩沖器,并且將低值視頻部分發(fā)送到具有較慢的存取時(shí)間的第二緩沖器。在一個(gè)實(shí)施例中,將高值視頻部分存儲(chǔ)在第一內(nèi)部存儲(chǔ)器中,而將低值視頻部分存儲(chǔ)在第二外部存儲(chǔ)器中。與將全部的解碼視頻部分存儲(chǔ)在單個(gè)存儲(chǔ)器中的情況相比,通過使用這種策略,可以實(shí)現(xiàn)帶寬、功率和經(jīng)濟(jì)成本的節(jié)省。在一個(gè)實(shí)施例中,內(nèi)部存儲(chǔ)器可以是高速緩沖存儲(chǔ)器,而外部存儲(chǔ)器可以是隨機(jī)存取存儲(chǔ)器(RAM)。在手持式應(yīng)用和移動(dòng)應(yīng)用中,節(jié)省功率、帶寬和經(jīng)濟(jì)成本是至關(guān)重要的。文中詳細(xì)的描述針對(duì)本發(fā)明的某些特定實(shí)施例。但是,本發(fā)明可以體現(xiàn)在多種不同的方法中。在本說明書中參照附圖,其中,所有附圖中相同的附圖標(biāo)記表示相同的部件。 更具體地,可以預(yù)期的是這些實(shí)施例可以在各種電子設(shè)備(例如,但是不限于,移動(dòng)電話、 無線設(shè)備和個(gè)人數(shù)據(jù)助理(PDA))中實(shí)現(xiàn)或者與這些各種電子設(shè)備關(guān)聯(lián)起來實(shí)現(xiàn)。本文所使用的“視頻部分”包含編碼視頻部分和解碼視頻部分。編碼視頻部分包含解碼前的視頻文件或比特流的部分。解碼視頻部分是編碼視頻部分的解碼版本,并且解碼視頻部分可以具有與它們相關(guān)聯(lián)的值。視頻部分可以包含多個(gè)視頻幀、一個(gè)視頻幀、 視頻幀的片段(fragment)、切片(slice)、像素、解碼圖片緩沖器頁面、組塊(chunk)、片段 (fragment)、片(piece)、部分(portion)、比特、圖片、塊(block)、宏塊(macroblock)、子宏士夬(submacroblock)、分割(partition)或幀的子分割(sub-partition)。眾所周知,多個(gè)視頻塊形成一個(gè)宏塊,并且多個(gè)宏塊形成一個(gè)切片。多個(gè)切片形成一個(gè)幀,且多個(gè)幀轉(zhuǎn)而形成一個(gè)視頻。在一個(gè)實(shí)施例中,每個(gè)解碼視頻部分的尺寸是相同的。在另一個(gè)實(shí)施例中,多個(gè)解碼視頻部分可以在存儲(chǔ)器中對(duì)應(yīng)于一些可變的尺寸。另外,從視頻解碼的角度來看,本文所使用的“高值”視頻部分是比低值視頻部分更為重要的視頻部分。與其他視頻部分相比,高值視頻部分可以包含那些更為頻繁地用于解碼的視頻部分(例如,幀和宏塊)。舉例而言,如果解析器預(yù)測(cè)到一個(gè)視頻部分將會(huì)被頻繁地參考,那么該視頻幀可以被認(rèn)為是高值的。再作為一個(gè)示例,比特流中的其他解碼視頻部分可以頻繁地訪問高值視頻部分。來自后來視頻部分的運(yùn)動(dòng)向量可以頻繁地參考高值視頻部分。相反地,低值視頻部分可以包含那些不被頻繁地參考的視頻部分。另外,本文所使用的“預(yù)測(cè)(視頻部分的)值”可以包含在解碼過程期間對(duì)視頻部分的重要性等級(jí)進(jìn)行預(yù)測(cè)。在一個(gè)實(shí)施例中,預(yù)測(cè)基于在解碼比特流或視頻比特流緩沖器中視頻部分(例如,幀)被參考的次數(shù)。這種預(yù)測(cè)可以是準(zhǔn)確的確定,或者這種預(yù)測(cè)可以僅僅是對(duì)基于預(yù)期視頻部分被后來視頻幀參考的頻繁程度的一種估計(jì)。“參考”視頻部分可以包含已經(jīng)被解碼但是被用于確定后來的解碼視頻部分的那些視頻部分。對(duì)視頻部分進(jìn)行參考還可以被稱為對(duì)視頻部分進(jìn)行存取。圖1是示出了視頻比特流中的視頻幀llOa-e的時(shí)間序列的框圖。隨著幀110在時(shí)間上從時(shí)間-1推進(jìn)到時(shí)間+3,幀llOa-e在每個(gè)視頻幀內(nèi)示出了從左向右移動(dòng)的汽車 lOfe-e。在一個(gè)實(shí)施例中,在時(shí)間-1處對(duì)視頻比特流進(jìn)行分析以預(yù)測(cè)在即將到來的幀中被參考次數(shù)最多的宏塊。在幀-1中,包含汽車105的宏塊115和118隨后被當(dāng)前幀、幀+1、 幀+2和幀+3參考。因此,包含汽車105的宏塊115和118可以被確定為是被頻繁參考的。 在一個(gè)實(shí)施例中,如參照?qǐng)D2所解釋的那樣,與其他宏塊相比,被頻繁參考的宏塊被存儲(chǔ)在提供到處理器的較快存取時(shí)間的存儲(chǔ)位置中。圖2示出了一種用于進(jìn)行智能解碼圖片緩沖的系統(tǒng)架構(gòu)200。系統(tǒng)200包含編碼視頻比特流A,視頻比特流緩沖器210對(duì)編碼視頻比特流A進(jìn)行處理,然后發(fā)送到前瞻解析器220,并且最后進(jìn)入電路四5。電路295包含解碼器230、存儲(chǔ)器管理器MO、地址轉(zhuǎn)譯器 250以及第一存儲(chǔ)器270中的第一緩沖器沈0。電路四5的外部是第二存儲(chǔ)器四0中的第二緩沖器觀0。本領(lǐng)域技術(shù)人員還應(yīng)當(dāng)理解,結(jié)合本申請(qǐng)的實(shí)施例描述的各種示例性的邏輯框、 模塊、電路和算法步驟均可以實(shí)現(xiàn)成電子硬件、計(jì)算機(jī)軟件或這兩者的組合。為了清楚地說明硬件和軟件之間的可交換性,對(duì)各種示例性的組件、方框、模塊、電路和步驟均圍繞其功能進(jìn)行總體描述。至于這種功能是實(shí)現(xiàn)成硬件還是實(shí)現(xiàn)成軟件,取決于特定的應(yīng)用和對(duì)整個(gè)系統(tǒng)所施加的設(shè)計(jì)約束條件。熟練的技術(shù)人員可以針對(duì)每個(gè)特定應(yīng)用,以變通的方式實(shí)現(xiàn)所描述的功能,但是,這種實(shí)現(xiàn)決策不應(yīng)解釋為導(dǎo)致背離本發(fā)明的范圍。圖2中的編碼視頻比特流A可以包括壓縮視頻數(shù)據(jù),以使得能夠在介質(zhì)(例如,空氣)上有效地發(fā)送視頻數(shù)據(jù)。視頻比特流緩沖器210能夠臨時(shí)地存儲(chǔ)壓縮視頻數(shù)據(jù),直到壓縮視頻數(shù)據(jù)已經(jīng)做好了由解碼器230進(jìn)行解碼的準(zhǔn)備。因此,解碼器230提供了一個(gè)用于對(duì)視頻數(shù)據(jù)比特流的編碼部分進(jìn)行解碼的模塊。在壓縮視頻比特流被臨時(shí)地存儲(chǔ)在緩沖器210中后,該壓縮視頻比特流對(duì)前瞻解析器220而言是可用的。前瞻解析器220能夠貫穿視頻比特流緩沖器210中的各個(gè)編碼視頻部分進(jìn)行掃描以預(yù)測(cè)壓縮比特流中的哪些視頻部分最有可能對(duì)解碼器而言是高值的。因此,前瞻解析器220提供了一種用于通過對(duì)與視頻數(shù)據(jù)的解碼部分相對(duì)應(yīng)的視頻數(shù)據(jù)比特流的編碼部分進(jìn)行前瞻來對(duì)視頻數(shù)據(jù)的解碼部分的值進(jìn)行預(yù)測(cè)的模塊。在一個(gè)實(shí)施例中,該預(yù)測(cè)是通過向每個(gè)視頻部分分配一個(gè)值來實(shí)現(xiàn)的。在一個(gè)實(shí)施例中,這個(gè)值被存儲(chǔ)在由存儲(chǔ)器管理器240監(jiān)視的、經(jīng)優(yōu)先級(jí)化的表(未示出)中。在一個(gè)實(shí)施例中,當(dāng)預(yù)測(cè)值大于或等于閾值時(shí),則將解碼視頻部分發(fā)送到第一緩沖器沈0,而當(dāng)預(yù)測(cè)值小于閾值時(shí),則將解碼視頻部分發(fā)送到第二緩沖器觀0。在一個(gè)實(shí)施例中,這個(gè)值與解碼視頻部分的預(yù)測(cè)帶寬有關(guān)。在另一個(gè)實(shí)施例中,這個(gè)值與解碼視頻部分的預(yù)測(cè)壽命有關(guān),或者與在該壽命期間解碼視頻部分的預(yù)測(cè)帶寬變化有關(guān)。在一個(gè)實(shí)施例中,這個(gè)值與預(yù)期解碼視頻部分在解碼器230中被視頻比特流中的后來幀參考的次數(shù)有關(guān)。解析器220可以將編碼視頻部分發(fā)送到解碼器230,并且將預(yù)測(cè)值發(fā)送到存儲(chǔ)器管理器140。在解碼前,前瞻解析器220被配置成在時(shí)間上對(duì)視頻的編碼部分進(jìn)行前瞻,并且在解碼后,前瞻解析器220被配置成針對(duì)相應(yīng)的解碼視頻部分來預(yù)測(cè)一個(gè)值。在一個(gè)實(shí)施例中,解碼視頻部分的帶寬是通過以下方式來計(jì)算的將由系統(tǒng)中的解碼器進(jìn)行的視頻部分的總讀取次數(shù)和總寫入次數(shù)之和除以視頻部分的總壽命。換句話說,帶寬與對(duì)視頻的一個(gè)特定幀或多個(gè)特定幀進(jìn)行參考的正在進(jìn)行的次數(shù)有關(guān)。因此,解析器220能夠主動(dòng)并且智能地對(duì)編碼視頻部分進(jìn)行前瞻以定量地確定或者預(yù)測(cè)將會(huì)對(duì)哪些解碼視頻部分進(jìn)行頻繁地參考。為了利用數(shù)據(jù)的局部性,通常要提早至少數(shù)個(gè)幀對(duì)參考模式進(jìn)行確定。因?yàn)檫@個(gè)原因,等到視頻幀已被解碼時(shí),可能已來不及利用數(shù)據(jù)的局部性。因此,前瞻解析器220可以提前對(duì)哪些視頻部分會(huì)被更頻繁地參考進(jìn)行確定。舉例而言,解析器220可以對(duì)給定數(shù)目的編碼視頻部分(例如,15個(gè)幀)進(jìn)行前瞻,并且著眼于視頻比特流緩沖器中的那些后來幀的運(yùn)動(dòng)向量。通過對(duì)與每個(gè)幀相關(guān)聯(lián)的運(yùn)動(dòng)向量進(jìn)行分析,解析器220隨后可以針對(duì)每個(gè)幀確定其向回參考了多少個(gè)其他幀。此外,解析器220可以對(duì)哪些視頻部分被頻繁地參考以及哪些視頻部分不被頻繁地參考進(jìn)行確定。在一個(gè)實(shí)施例中,將那些被頻繁存取的視頻部分(例如,幀)存儲(chǔ)在內(nèi)部的較近的存儲(chǔ)器(例如,eDRAM)中,而將那些被較少存取的視頻部分存儲(chǔ)在外部的較遠(yuǎn)的存儲(chǔ)器(例如,SDRAM)中。舉例來說,通過從視頻比特流緩沖器210中取回15個(gè)幀,解析器220可以對(duì)這15 個(gè)幀進(jìn)行前瞻。對(duì)于15個(gè)幀中的每個(gè)幀,前瞻解析器220對(duì)與每個(gè)幀相關(guān)聯(lián)的運(yùn)動(dòng)向量進(jìn)行確定。隨后,解析器識(shí)別那些被每個(gè)運(yùn)動(dòng)向量參考的幀。隨后,將被超過閾值數(shù)目個(gè)運(yùn)動(dòng)向量參考的那些幀存儲(chǔ)在第一存儲(chǔ)器270內(nèi),以使得解碼器230能夠快速地取回這些幀。 而將被少于閾值數(shù)目個(gè)運(yùn)動(dòng)向量參考的那些幀存儲(chǔ)在第二存儲(chǔ)器四0中,這是因?yàn)榻獯a器 230較少需要這些幀。解析器220前瞻得越遠(yuǎn),值的預(yù)測(cè)越準(zhǔn)確。前瞻解析器220能夠執(zhí)行完全解析和部分解析的實(shí)施例。在一個(gè)完全解析的實(shí)施例中,前瞻解析器220提前掃描并且瀏覽整個(gè)壓縮視頻。在這種情況下,解析器220準(zhǔn)確地確定特定的視頻部分被參考的次數(shù)。在一個(gè)完全解析的實(shí)施例中,前瞻解析器220可以做出哪些幀是被參考次數(shù)最多的單次確定,并且將這些幀存儲(chǔ)在第一存儲(chǔ)器中。在另一個(gè)完全解析的實(shí)施例中,前瞻解析器220還可以一次性計(jì)算存取的數(shù)目,但是使用這個(gè)信息來連續(xù)地對(duì)將哪些視頻部分存儲(chǔ)在第一存儲(chǔ)器中進(jìn)行重分配。在一個(gè)完全解析的實(shí)施例中,對(duì)運(yùn)動(dòng)向量和參考索引兩者進(jìn)行重建以獲得最準(zhǔn)確的帶寬信息。雖然完全解析能夠產(chǎn)生對(duì)視頻部分的值的準(zhǔn)確確定,但是這種處理是相當(dāng)復(fù)雜并且耗時(shí)的,并且取決于解碼系統(tǒng)的計(jì)算能力,這種處理可能不適用于實(shí)時(shí)視頻解碼。前瞻解析器220還可以執(zhí)行“部分解析”。在部分解析中,前瞻解析器220只檢查部分視頻數(shù)據(jù)。在一個(gè)基于參考類型的部分解析的實(shí)施例中,只對(duì)參考索引而不是運(yùn)動(dòng)向量進(jìn)行重建。在另一個(gè)部分解析的實(shí)施例中,參考索引和運(yùn)動(dòng)向量都不被重建,而只對(duì)切片級(jí)別的頭部進(jìn)行重建。結(jié)果,因?yàn)闆]有對(duì)運(yùn)動(dòng)向量進(jìn)行解碼,部分解析的實(shí)施例獲得準(zhǔn)確度較低的帶寬信息。但是,雖然信息準(zhǔn)確度較低,但是其處理起來較快,并且因此可能更適于實(shí)時(shí)的情形。因此,部分解析可能不對(duì)運(yùn)動(dòng)向量是整數(shù)還是分?jǐn)?shù)進(jìn)行確定,并且因此可能影響帶寬計(jì)算的準(zhǔn)確度。在另一個(gè)部分解析的實(shí)施例中,前瞻解析器220對(duì)少于整個(gè)編碼比特流的編碼比特流進(jìn)行掃描。舉例而言,前瞻解析器220可以僅對(duì)每隔一幀進(jìn)行分析。雖然掃描比特流的更多幀導(dǎo)致更為準(zhǔn)確預(yù)測(cè)哪些幀或哪些宏塊可能會(huì)被經(jīng)常參考,但是這種做法也需要高水平的計(jì)算開銷。通常而言,對(duì)少于整個(gè)視頻流的視頻流進(jìn)行掃描是更為可行的。在部分解析中,前瞻解析器220可以基于對(duì)存儲(chǔ)在緩沖器內(nèi)的視頻部分在時(shí)間上的快照(snapshot) 進(jìn)行檢查來對(duì)哪些視頻部分具有最高值做出預(yù)測(cè)。作為前瞻過程的一部分而預(yù)覽的幀的數(shù)目可能改變。在一個(gè)實(shí)施例中,之前已經(jīng)瀏覽過的幀的數(shù)目與視頻比特流緩沖器210的尺寸成比例。在另一個(gè)實(shí)施例中,解析器220 提前掃面數(shù)個(gè)幀,例如1-5個(gè)幀、6-10個(gè)幀、11-15個(gè)幀、16-20或21-25個(gè)幀等。作為一個(gè)示例,對(duì)解析器220的預(yù)測(cè)方面進(jìn)行了解釋,當(dāng)前瞻解析器220提前讀取下15個(gè)幀時(shí),其已經(jīng)知道了那些幀內(nèi)的每個(gè)宏塊的值。但是,解析器220可能還需要對(duì)那些下15個(gè)幀再往后的任何幀的值進(jìn)行預(yù)測(cè)。提前掃描的幀越多,并且隨著視頻的進(jìn)一步推進(jìn),預(yù)測(cè)的準(zhǔn)確度也越高。隨著時(shí)間的推移,視頻部分的值可以是不均勻的。舉例而言,隨著時(shí)間的推移,高值視頻部分可以轉(zhuǎn)變成低值部分。發(fā)生這種情況時(shí),管理器240可以將包含在高性能第一緩沖器260中的低值視頻部分發(fā)送到第二緩沖器觀0。同樣地,低值視頻部分也可以變成高值視頻部分。發(fā)生這種情況時(shí),管理器240可以將高值視頻部分從第二緩沖器280發(fā)送到第一緩沖器260。當(dāng)值基于帶寬時(shí),第一緩沖器中的每個(gè)解碼視頻部分的帶寬大于第二緩沖器中的每個(gè)解碼視頻部分的帶寬。在部分解析中,解析器220可以有規(guī)律地更新其對(duì)包含在第一緩沖器260和第二緩沖器觀0中的視頻部分的預(yù)測(cè)。在完全解析中,管理器240可以基于解碼視頻部分的當(dāng)前預(yù)測(cè)值來對(duì)緩沖器中的視頻部分的優(yōu)先次序進(jìn)行區(qū)分。前瞻解析器220在上文中多次被描述為對(duì)給定數(shù)目的幀進(jìn)行前瞻。但是,前瞻解析器220可以對(duì)視頻的任何部分進(jìn)行前瞻。電路四5內(nèi)的解碼器230對(duì)視頻部分進(jìn)行重建,以使得它們能夠由用戶瀏覽。在一個(gè)實(shí)施例中,解碼器230被稱為像素處理器。為了對(duì)當(dāng)前視頻部分進(jìn)行解碼,解碼器230 可以對(duì)通過地址轉(zhuǎn)譯器250獲得的先前解碼視頻部分進(jìn)行參考。存儲(chǔ)器管理器240被連接到解碼器230的輸出,并且可以基于由解析器220預(yù)測(cè)的解碼視頻部分的預(yù)測(cè)值來將解碼視頻部分在第一存儲(chǔ)器270中的第一緩沖器260和第二存儲(chǔ)器290中的第二緩沖器280之間進(jìn)行分配??梢詫⒏咧狄曨l部分放入第一緩沖器沈0。 相反地,可以將低值視頻部分放入第二緩沖器觀0。因此,存儲(chǔ)器管理器240提供一種用于基于視頻數(shù)據(jù)的解碼部分的預(yù)測(cè)值來確定是將視頻數(shù)據(jù)的解碼部分存儲(chǔ)在第一存儲(chǔ)器270 的第一緩沖器260中還是存儲(chǔ)在第二存儲(chǔ)器四0中的第二緩沖器觀0中。在一個(gè)實(shí)施例中,管理器240按照最有價(jià)值到最沒價(jià)值的順序在表格中對(duì)視頻部分進(jìn)行組織。在一個(gè)實(shí)施例中,在使用第二緩沖器之前,先填充第一緩沖器。舉例而言,管理器240可以用最有價(jià)值的片(例如,大帶寬解碼視頻部分)來填充第一緩沖器沈0,并且隨后將剩余的片發(fā)送到第二緩沖器觀0中。管理器240還可以對(duì)第一緩沖器260和第二緩沖器280中的視頻部分進(jìn)行重組和丟棄。在完全解析和部分解析中,高值視頻部分可以隨著時(shí)間改變。因此,管理器240可以對(duì)第一緩沖器260和第二緩沖器觀0進(jìn)行重組,以使得高值視頻部分保留在第一緩沖器沈0 中。此外,當(dāng)一個(gè)視頻部分不再被參考時(shí),管理器240可以丟棄該過時(shí)的視頻部分。這種智能的系統(tǒng)和方法與傳統(tǒng)高速緩沖存儲(chǔ)器不同。通常而言,傳統(tǒng)高速緩沖存儲(chǔ)器與諸如FIFO (先進(jìn)先出)之類的確定性替換策略相關(guān)聯(lián)。傳統(tǒng)高速緩沖存儲(chǔ)器通常與諸如直接映射或集合關(guān)聯(lián)之類的確定性映射策略相關(guān)聯(lián)。這些確定性策略不太可能在高速緩沖存儲(chǔ)器中“凈得”高值視頻部分。傳統(tǒng)高速緩沖存儲(chǔ)器是臨時(shí)的存儲(chǔ)區(qū)域,其中,被頻繁參考的數(shù)據(jù)可以被存儲(chǔ)以用于快速存取。在傳統(tǒng)高速緩沖存儲(chǔ)器中,一旦數(shù)據(jù)存儲(chǔ)在高速緩沖存儲(chǔ)器中,將來對(duì)該數(shù)據(jù)的使用可以通過參考緩存副本的方式來實(shí)現(xiàn),而不是對(duì)原始數(shù)據(jù)進(jìn)行重取或重計(jì)算。與原本從計(jì)算機(jī)的主存儲(chǔ)器取得數(shù)據(jù)的情況相比,傳統(tǒng)高速緩沖存儲(chǔ)器降低了對(duì)數(shù)據(jù)的存取時(shí)間。但是,傳統(tǒng)高速緩沖存儲(chǔ)器不是智能的。傳統(tǒng)高速緩沖存儲(chǔ)器被動(dòng)地對(duì)數(shù)據(jù)進(jìn)行保存。傳統(tǒng)高速緩沖存儲(chǔ)器只知道其復(fù)制的數(shù)據(jù)的地址,并且只有在需要數(shù)據(jù)的時(shí),系統(tǒng)才檢查傳統(tǒng)高速緩沖存儲(chǔ)器,而且數(shù)據(jù)要么在高速緩沖存儲(chǔ)器中要么不在高速緩沖存儲(chǔ)器中。傳統(tǒng)高速緩沖存儲(chǔ)器不主動(dòng)地對(duì)將來幀進(jìn)行前瞻。因此, 傳統(tǒng)高速緩沖存儲(chǔ)器沒有時(shí)間來預(yù)測(cè)或確定哪個(gè)數(shù)據(jù)是重要的。因此,傳統(tǒng)高速緩沖存儲(chǔ)器不基于視頻部分的預(yù)測(cè)值來做出決策。此外,傳統(tǒng)高速緩沖存儲(chǔ)器不對(duì)由視頻的編碼部分占用的帶寬進(jìn)行預(yù)測(cè)。因此,傳統(tǒng)高速緩沖存儲(chǔ)器不同于進(jìn)行智能解碼圖片緩沖的系統(tǒng)和方法。在一個(gè)實(shí)施例中,第一存儲(chǔ)器270和第二存儲(chǔ)器290都不是高速緩沖存儲(chǔ)器。在給定幀或圖像的壽命期間,解碼器230可以對(duì)其進(jìn)行多次參考。通常不會(huì)在短時(shí)間(例如,處理一個(gè)宏塊所需要的時(shí)間)內(nèi)發(fā)生對(duì)參考幀的多次存取(數(shù)據(jù)局部性)。而是,典型地,在數(shù)個(gè)幀的跨度上發(fā)生數(shù)據(jù)局部性。由于參考行為不會(huì)在短的時(shí)間或空間跨度內(nèi)發(fā)生,因此傳統(tǒng)高速緩沖存儲(chǔ)器不能使用數(shù)據(jù)局部性。在這種情況下,對(duì)于避免不得不從外部存儲(chǔ)器一次又一次地加載給定幀的情況而言,將那些被高度參考的幀保存在內(nèi)部或較近的存儲(chǔ)器(例如,eDRAM)內(nèi)是有用的,這種做法有助于整體的外部存儲(chǔ)帶寬,這是因?yàn)檫\(yùn)動(dòng)補(bǔ)償帶寬對(duì)整體的視頻解碼帶寬的占用較大。在本發(fā)明的一個(gè)實(shí)施例中,將高值視頻部分存儲(chǔ)在第一存儲(chǔ)器(例如,內(nèi)部存儲(chǔ)器)中,而將低值數(shù)據(jù)部分存儲(chǔ)在第二存儲(chǔ)器(例如,外部存儲(chǔ)器)中。在另一個(gè)實(shí)施例中,在使用第二緩沖器之前,先填充第一緩沖器。與將所有的解碼視頻部分只存儲(chǔ)在內(nèi)部存儲(chǔ)器或外部存儲(chǔ)器中的一個(gè)中的系統(tǒng)相比,管理器240發(fā)送解碼視頻部分以對(duì)至少兩個(gè)存儲(chǔ)器進(jìn)行參考的能力也是不同的。對(duì)于諸如HD視頻之類的大視頻應(yīng)用而言,將所有的視頻數(shù)據(jù)都存儲(chǔ)在內(nèi)部存儲(chǔ)器中將需要非常大的eDRAM,這是很昂貴而且不切實(shí)際的?;蛘?,將所有的HD視頻數(shù)據(jù)都存儲(chǔ)在SDRAM 中將會(huì)使用顯著的帶寬和功率,這對(duì)通信設(shè)備來說是不理想的。在本發(fā)明的一個(gè)實(shí)施例中, 通過將最頻繁存取的視頻部分存儲(chǔ)在內(nèi)部存儲(chǔ)器(例如,eDRAM)中并且將其余的視頻部分存儲(chǔ)在外部存儲(chǔ)器(例如,SDRAM)中,管理器240對(duì)各個(gè)視頻部分的優(yōu)先次序進(jìn)行區(qū)分。由于這種優(yōu)先級(jí)化的原因,可以實(shí)現(xiàn)經(jīng)濟(jì)成本和帶寬的節(jié)省。
在視頻部分被解碼前,管理器240可以對(duì)第一緩沖器沈0中的空間進(jìn)行分配。在一個(gè)實(shí)施例中,管理器140撤回那些不再是高值的視頻部分(例如,預(yù)期不再會(huì)占用帶寬)。 在另一個(gè)實(shí)施例中,在預(yù)期到高值視頻部分的情況下,管理器140對(duì)第一緩沖器260中的可用存儲(chǔ)器空間進(jìn)行分配。在不同的實(shí)施例中,管理器240可以較少地或頻繁地對(duì)解碼視頻部分進(jìn)行分配。 在較少分配的實(shí)施例中,管理器240最初基于解碼視頻部分的值來將解碼視頻部分在第一存儲(chǔ)器260和第二存儲(chǔ)器280之間進(jìn)行分配。一旦做出該分配,那么該較少分配的實(shí)施例允許視頻部分保留在所分配的存儲(chǔ)器中,直到幀已過時(shí)(即不再被參考)。換句話說,一旦管理器240做出了最初的分配決策,那么視頻部分不會(huì)頻繁地在第一存儲(chǔ)器260和第二存儲(chǔ)器280之間來回轉(zhuǎn)移。雖然這是一個(gè)比較呆板的實(shí)施例,但是與更為頻繁地進(jìn)行分配的實(shí)施例相比,這個(gè)過程復(fù)雜度較低。在頻繁分配檢查的實(shí)施例中,管理器240最初基于解碼視頻部分的值來將解碼視頻部分分配給第一緩沖器260或第二緩沖器觀0。在這個(gè)實(shí)施例中,管理器240不斷地檢查解碼視頻部分的值以審視是否應(yīng)當(dāng)對(duì)它們進(jìn)行重分配。在這個(gè)實(shí)施例中,管理器240可以基于視頻部分的值來在表格中對(duì)視頻部分進(jìn)行分類,以減輕識(shí)別應(yīng)當(dāng)對(duì)哪些視頻部分進(jìn)行重分配的負(fù)擔(dān)。地址轉(zhuǎn)譯器250也被連接到解碼器230。地址轉(zhuǎn)譯器250可以執(zhí)行檢查功能和轉(zhuǎn)譯功能。在檢查功能中,地址轉(zhuǎn)譯器250可以在解碼期間檢查第一存儲(chǔ)器270和第二存儲(chǔ)器四0以確定是從第一存儲(chǔ)器270還是從第二存儲(chǔ)器290對(duì)存儲(chǔ)器參考進(jìn)行路由。然而, 地址轉(zhuǎn)譯器250并不需要直接地(例如,物理地)檢查第一存儲(chǔ)器270或第二存儲(chǔ)器四0, 這是因?yàn)樽鳛樘娲?,地址轉(zhuǎn)譯器250可以訪問頁面表。頁面表可以由存儲(chǔ)器管理器240產(chǎn)生并且可以包含轉(zhuǎn)譯地址條目。地址轉(zhuǎn)譯器250可以訪問轉(zhuǎn)譯地址條目以確定是從第一存儲(chǔ)器270還是從第二存儲(chǔ)器290對(duì)存儲(chǔ)器參考進(jìn)行路由。在轉(zhuǎn)譯功能中,通過動(dòng)態(tài)地將第二存儲(chǔ)器四0的虛擬地址轉(zhuǎn)譯成第一存儲(chǔ)器270的物理地址,地址轉(zhuǎn)譯器250可以支持虛擬存儲(chǔ)器的假象。頁面表的概念與虛擬存儲(chǔ)器概念具有類似應(yīng)用。已經(jīng)在傳統(tǒng)計(jì)算機(jī)架構(gòu)中使用了虛擬存儲(chǔ)器的概念以實(shí)現(xiàn)主存儲(chǔ)器和SDRAM之間的指令和數(shù)據(jù)的移動(dòng)的自動(dòng)化,從而展現(xiàn)了單個(gè)大存儲(chǔ)器的表象。在本發(fā)明的一個(gè)實(shí)施例中,第一存儲(chǔ)器270在物理地址空間對(duì)高值視頻部分進(jìn)行存儲(chǔ)。不需要對(duì)第一存儲(chǔ)器270的物理地址進(jìn)行轉(zhuǎn)譯??梢詫⒌椭狄曨l部分存儲(chǔ)在第二存儲(chǔ)器四0中,其中,第二存儲(chǔ)器四0的地址可以由虛擬地址來表示。隨后,通過動(dòng)態(tài)地將第二存儲(chǔ)器四0的虛擬地址轉(zhuǎn)譯成第一存儲(chǔ)器270的物理地址,地址轉(zhuǎn)譯器250可以支持虛擬存儲(chǔ)器的假象。結(jié)果,第一存儲(chǔ)器270可以被用作包含來自第二存儲(chǔ)器四0的數(shù)據(jù)的虛擬存儲(chǔ)器。在一個(gè)實(shí)施例中,地址轉(zhuǎn)譯器250支持eDRAM和SDRAM之間的虛擬化。地址轉(zhuǎn)譯器250可以被實(shí)施為轉(zhuǎn)譯后援緩沖器。第一緩沖器260和第二緩沖器280可以分別是將解碼視頻部分存儲(chǔ)在第一存儲(chǔ)器 270和第二存儲(chǔ)器290中的解碼圖片緩沖器。在一個(gè)實(shí)施例中,解碼圖片緩沖器被設(shè)計(jì)成大到足夠存儲(chǔ)6-8個(gè)視頻幀。存儲(chǔ)器的兩個(gè)示例是嵌入式動(dòng)態(tài)隨機(jī)存取存儲(chǔ)器(eDRAM)和同步動(dòng)態(tài)隨機(jī)存取存儲(chǔ)器(SDRAM)。與典型的SDRAM不同,eDRAM是典型地集成在同一卡片、管芯或封裝上的、 作為主ASIC或解碼處理器的本地或內(nèi)部存儲(chǔ)器。嵌入式存儲(chǔ)器允許寬得多的總線和更高的工作速度。然而,eDRAM的制造要昂貴得多,部分原因是不得不將數(shù)個(gè)管芯封裝在一個(gè)芯片中。SDRAM具有同步接口,這意味著SDRAM在對(duì)控制輸入做出響應(yīng)之前將等待時(shí)鐘信號(hào)。因此,SDRAM與計(jì)算機(jī)的系統(tǒng)總線是同步的。在通信設(shè)備中,功率和帶寬是至關(guān)重要的。 eDRAM具有較低帶寬和較低功耗的優(yōu)點(diǎn),但是與SDRAM相比,具有存儲(chǔ)密度較低而且經(jīng)濟(jì)成本較高的缺點(diǎn)。第一存儲(chǔ)器270可以在電路295上與解碼器230集成在一起。由于第一存儲(chǔ)器 270是在內(nèi)部,因此第一存儲(chǔ)器270中的視頻部分離解碼器230較近,并且由此對(duì)整體視頻帶寬的占用較小,從而節(jié)省功率。在一個(gè)實(shí)施例中,第一存儲(chǔ)器是eDRAM。在另一個(gè)實(shí)施例中,第一存儲(chǔ)器270比第二存儲(chǔ)器290更近。在另一個(gè)實(shí)施例中,第一存儲(chǔ)器270具有比第二存儲(chǔ)器290更快的存取時(shí)間。第二存儲(chǔ)器290可以位于電路四5的外部。由于在外部,第二存儲(chǔ)器四0中的視頻部分對(duì)整體視頻帶寬的占用更大,但是允許將第一存儲(chǔ)器270設(shè)計(jì)成較小的存儲(chǔ)器,并且因此更為便宜。對(duì)于實(shí)際應(yīng)用而言,允許合理尺寸的、較近的外部存儲(chǔ)器是可取的。在一個(gè)實(shí)施例中,第二存儲(chǔ)器290是SDRAM。在另一個(gè)實(shí)施例中,第二存儲(chǔ)器四0比第一存儲(chǔ)器 270遠(yuǎn)或者比第一存儲(chǔ)器270慢。電路295可以是諸如視頻顯示控制器或視頻顯示處理器之類的輸入視頻數(shù)據(jù)的任何組件。在不脫離本發(fā)明的精神的前提下,電路295可以具有諸如額外的存儲(chǔ)器、緩沖器、解析器和處理器之類的沒有在圖2中示出的額外組件。在一個(gè)實(shí)施例中,通過將那些被更頻繁參考的視頻部分存儲(chǔ)在離處理器近的緩沖器中,系統(tǒng)降低了帶寬和功率。在另一個(gè)實(shí)施例中,發(fā)現(xiàn)高值視頻部分并且將這些高值視頻部分發(fā)送到內(nèi)部存儲(chǔ)器的緩沖器中,在其中,可以較快地對(duì)這些高值視頻部分進(jìn)行存取,從而降低了帶寬并且節(jié)省了功率。由于額外的視頻部分被存儲(chǔ)在附近的緩沖器中,因此可以實(shí)現(xiàn)額外的帶寬節(jié)省。在不考慮經(jīng)濟(jì)成本的一個(gè)實(shí)施例中,將所有的解碼視頻部分都存儲(chǔ)在附近的緩沖器中。在另一個(gè)實(shí)施例中,基于預(yù)測(cè)值來將解碼視頻部分在第一緩沖器260 和第二緩沖器280之間進(jìn)行分配。相反地,將至少一些視頻部分存儲(chǔ)在外部存儲(chǔ)器緩沖器中的做法有一個(gè)優(yōu)點(diǎn)。視頻標(biāo)準(zhǔn)(例如,H264)要求一定量的解碼視頻(例如,6-8個(gè)幀)可供參考。通過將至少一些視頻部分存儲(chǔ)在外部緩沖器中,這種做法允許將外部存儲(chǔ)器設(shè)計(jì)成較小的存儲(chǔ)器,以使得兩個(gè)緩沖器都滿足視頻標(biāo)準(zhǔn)所要求的解碼視頻存儲(chǔ)量。較小的嵌入式存儲(chǔ)器比較大的嵌入式存儲(chǔ)器便宜得多。因此,可以在通過使用較大較近的緩沖器來節(jié)省帶寬和通過使用較小較近的緩沖器來節(jié)省經(jīng)濟(jì)成本之間做一個(gè)折衷。為了實(shí)現(xiàn)低帶寬和低功率,消耗較多帶寬的視頻部分應(yīng)當(dāng)被存儲(chǔ)在解碼器230或電路四5附近。由于在較遠(yuǎn)的距離上發(fā)送視頻部分會(huì)消耗更多的功率,因此內(nèi)部存儲(chǔ)器存儲(chǔ)優(yōu)于外部存儲(chǔ)器存儲(chǔ)。此外,如上所述,諸如HD視頻的一些視頻解決方案會(huì)比標(biāo)準(zhǔn)視頻消耗更多的存儲(chǔ)器空間。對(duì)于很多電路應(yīng)用而言,大到足夠用于HD視頻幀的內(nèi)部存儲(chǔ)器通常是非常昂貴的。舉例而言,H264視頻標(biāo)準(zhǔn)需要解碼圖片緩沖器存儲(chǔ)并且保持大約6-8個(gè)可供解碼器進(jìn)行參考的解碼圖片幀。如果每個(gè)幀約為3MB,那么對(duì)6-8個(gè)幀進(jìn)行存儲(chǔ)將需要18-24MB的存儲(chǔ)器,這對(duì)很多電路應(yīng)用中的內(nèi)部存儲(chǔ)器而言,都是過于昂貴的。某些視頻區(qū)域不隨著時(shí)間改變,并且這些視頻區(qū)域被稱為是靜態(tài)的。靜態(tài)視頻區(qū)域往往會(huì)大量出現(xiàn),特別是在高分辨率視頻中。靜態(tài)視頻區(qū)域包含跳過的視頻部分(例如, 跳過的宏塊),并且具有零運(yùn)動(dòng)向量預(yù)測(cè)值。在對(duì)靜態(tài)視頻部分進(jìn)行解碼后,解碼視頻部分與另一解碼視頻部分是相同的。在一個(gè)實(shí)施例中,相同視頻部分是包含與另一解碼視頻部分完全相同的像素的解碼視頻部分。按照慣例,會(huì)產(chǎn)生相同解碼視頻部分的重復(fù)“副本”并且將其存儲(chǔ)在存儲(chǔ)器中。舉例而言,如果存在5個(gè)相同宏塊,那么按照慣例,將會(huì)產(chǎn)生原始的宏塊和4個(gè)副本并且將它們存儲(chǔ)在存儲(chǔ)器中。傳統(tǒng)方法的缺點(diǎn)包含用于產(chǎn)生這4個(gè)副本的額外帶寬以及被這4個(gè)副本占用的額外存儲(chǔ)空間。在一個(gè)實(shí)施例中,只占用存儲(chǔ)器中的單個(gè)物理位置,并且這個(gè)位置表示多個(gè)相同視頻部分。舉例而言,如果存在5個(gè)相同宏塊,那么5個(gè)宏塊中的每個(gè)宏塊在存儲(chǔ)器中將由該單個(gè)存儲(chǔ)器位置來表示。該單個(gè)存儲(chǔ)器位置被當(dāng)作每個(gè)相同視頻部分的參考位置。在一個(gè)實(shí)施例中,前瞻解析器220將跳過的視頻部分標(biāo)記為“跳過”。當(dāng)解碼器230對(duì)跳過的視頻部分進(jìn)行解碼時(shí),解碼器230使用地址轉(zhuǎn)譯器250來參考該參考位置。針對(duì)相同視頻部分只對(duì)單個(gè)參考位置進(jìn)行存儲(chǔ)和參考顯著地節(jié)省了帶寬。特別地,唯一的帶寬消耗是由顯示處理器(未示出)進(jìn)行的讀出操作導(dǎo)致的。對(duì)于相同視頻部分,這個(gè)方法消除了解碼器230和存儲(chǔ)器270以及290之間的所有其他寫出和讀入帶寬分量。由于帶寬的節(jié)省,實(shí)現(xiàn)了伴隨著的功率節(jié)省。此外,存儲(chǔ)空間和復(fù)雜度也得以降低。存儲(chǔ)空間的降低有效地增加了可以存在于第一存儲(chǔ)器270中的視頻部分的數(shù)目。由于存儲(chǔ)空間的降低,可以將來自第二存儲(chǔ)器290的更多視頻部分存儲(chǔ)在第一存儲(chǔ)器270中,這提供了額外的帶寬節(jié)省。圖3是示出了一種進(jìn)行智能解碼圖片緩沖的高層級(jí)處理的流程圖。該過程在步驟 300處開始。在步驟310處,這個(gè)方法使用前瞻解析器來對(duì)編碼比特流中的視頻部分的值進(jìn)行預(yù)測(cè)。在一個(gè)實(shí)施例中,前瞻解析器可以使用完全解析或部分解析來對(duì)給定數(shù)目的編碼幀進(jìn)行前瞻,以對(duì)解碼后的一部分幀的帶寬值進(jìn)行預(yù)測(cè)。在步驟320處,這個(gè)處理使用解碼器來對(duì)視頻部分進(jìn)行解碼。如上所討論,視頻部分可以是幀、圖片和宏塊等。接下來,決策步驟330對(duì)視頻部分的預(yù)測(cè)值是否為高進(jìn)行確定。如果是,那么該處理移向步驟340,其中,將具有高預(yù)測(cè)值的解碼視頻部分存儲(chǔ)在第一存儲(chǔ)器中。在一個(gè)實(shí)施例中,第一存儲(chǔ)器是內(nèi)部存儲(chǔ)器(例如,eDRAM)。如果對(duì)決策步驟330的回答是否,那么該處理移向步驟350,在步驟350中,該處理將解碼視頻部分存儲(chǔ)在第二存儲(chǔ)器中。在一個(gè)實(shí)施例中,第二存儲(chǔ)器是外部存儲(chǔ)器(例如, SDRAM)中。在步驟360處,該處理將第二存儲(chǔ)器的地址轉(zhuǎn)譯成虛擬第一存儲(chǔ)器地址。在一個(gè)實(shí)施例中,這個(gè)轉(zhuǎn)譯是由地址轉(zhuǎn)譯器來執(zhí)行的。在步驟370處,該處理對(duì)來自第一存儲(chǔ)器或虛擬第一存儲(chǔ)器的解碼視頻部分進(jìn)行參考。隨后,該處理要么循環(huán)回到步驟310,要么在步驟380處結(jié)束。圖4示出了使用智能解碼圖片緩沖的測(cè)試結(jié)果圖。測(cè)試條件包含eDRAM內(nèi)部存儲(chǔ)器、SDRAM外部存儲(chǔ)器、4個(gè)解碼參考圖片幀,其中每個(gè)解碼幀的分辨率為1920xl088(每個(gè)約3MB),并且因此4個(gè)解碼幀總共約12M。此外,測(cè)試條件包含H264壓縮、IBBPBBP組的幀格式、30幀/秒的幀速率、64比特的總線寬度、4KB視頻部分、6虹64參考圖片、前瞻解析器先于解碼器對(duì)15個(gè)幀進(jìn)行前瞻,以及完全解析。在圖4的y軸中,以兆字節(jié)/秒(mbs)來對(duì)帶寬節(jié)省進(jìn)行衡量。在χ軸中,用第一存儲(chǔ)器和第二存儲(chǔ)器器中的兆字節(jié)數(shù)據(jù)來對(duì)視頻部分進(jìn)行衡量。在這個(gè)測(cè)試中,第一存儲(chǔ)器是eDRAM,而第二個(gè)存儲(chǔ)器是SDRAM。測(cè)試的結(jié)果表明,帶寬節(jié)省與放進(jìn)第一存儲(chǔ)器中的數(shù)據(jù)量有關(guān),但不是直接地成比例關(guān)系。在這個(gè)測(cè)試中,當(dāng)12MB中的OMB存儲(chǔ)在第一存儲(chǔ)器中(即全部的12MB都位于第二存儲(chǔ)器中),那么節(jié)省的帶寬為OMBps。隨著更多的存儲(chǔ)器從第二存儲(chǔ)器移位到第一存儲(chǔ)器,就實(shí)現(xiàn)了帶寬的節(jié)省。舉例而言,當(dāng)12MB中的1MB存儲(chǔ)在第一存儲(chǔ)器中(意味著第二存儲(chǔ)器中有IlMB的數(shù)據(jù)),就實(shí)現(xiàn)了相應(yīng)的50MBps的帶寬節(jié)省。當(dāng)12MB中的4MB (或 5MB)存儲(chǔ)在第一存儲(chǔ)器中,就實(shí)現(xiàn)了相應(yīng)的250MBps的帶寬節(jié)省。換句話說,當(dāng)視頻尺寸的 30% (即12MB中的4MB)存儲(chǔ)在第一存儲(chǔ)器中,那么可以實(shí)現(xiàn)50%的帶寬節(jié)省(即300MBps 中的250MBps)。如果將全部的12MB都存儲(chǔ)在第一存儲(chǔ)器中,就實(shí)現(xiàn)了相應(yīng)的300MBps的帶寬節(jié)省。但是,將12MB的存儲(chǔ)內(nèi)容存儲(chǔ)在第一存儲(chǔ)器中的代價(jià)可能是高昂的。將少于全部解碼視頻部分的解碼視頻部分存儲(chǔ)在第一存儲(chǔ)器中可能是所期望的在帶寬和經(jīng)濟(jì)成本之間的折衷。由于通過管理器的優(yōu)先級(jí)化獲得的帶寬節(jié)省以及隨之產(chǎn)生的功率節(jié)省,因此可以對(duì)諸如高清視頻之類的大存儲(chǔ)器應(yīng)用進(jìn)行處理。通過上面的描述,應(yīng)當(dāng)理解的是上述實(shí)施例提供了對(duì)設(shè)備(例如,移動(dòng)站)中的視頻部分進(jìn)行的智能解碼圖片緩沖。所描述的實(shí)施例可以應(yīng)用于雙模AMPS和CDMA系統(tǒng)中的通信。此外,本領(lǐng)域的普通技術(shù)人員很容易想到如何在其中需要進(jìn)行智能緩沖的類似情形中應(yīng)用本發(fā)明。名稱為"Spread Spectrum Multipl e Access Communication System Using Satellite or Terrestrial Repeaters"的美國(guó)專利 No. 4,901, 307 對(duì) CDMA 通信系統(tǒng)的一般原理(特別是用于通信信道上的傳輸?shù)臄U(kuò)頻信號(hào)的產(chǎn)生的一般原理)進(jìn)行了描述,該專利已轉(zhuǎn)讓給本發(fā)明的受讓人。此外,名稱為“System and Method for Generating Signal Waveforms in a CDMA Cellular Telephone System,,的美國(guó)專利 No. 5,103,459 公開了與 PN擴(kuò)頻和Walsh覆蓋相關(guān)的原理,以及用于產(chǎn)生CDMA擴(kuò)頻通信信號(hào)的技術(shù)。此外,本發(fā)明的實(shí)施例利用了數(shù)據(jù)的時(shí)分復(fù)用以及與“高數(shù)據(jù)速率”通信系統(tǒng)相關(guān)的各種原理,并且可以在“高數(shù)據(jù)速率”通信系統(tǒng)中使用本文所公開的實(shí)施例,這種系統(tǒng)例如1997年11月3日提交的、申請(qǐng)?zhí)枮?08/963,386、名稱為"Method and Apparatus for High Rate Packet Data Transmission”的美國(guó)專利申請(qǐng)中所公開的通信系統(tǒng),該申請(qǐng)已轉(zhuǎn)讓給本發(fā)明的受讓人。本領(lǐng)域技術(shù)人員應(yīng)當(dāng)理解,可以使用任何各種不同技術(shù)和方法來表示信息和信號(hào)。例如,在上面的描述中提及的數(shù)據(jù)、指令、命令、信息、信號(hào)、比特、符號(hào)和碼片可以由電壓、電流、電磁波、磁場(chǎng)或粒子、光場(chǎng)或粒子或者其組合來表示。結(jié)合本文公開的實(shí)施例所描述的各種示例性邏輯方框、模塊和電路可以用以下組件來實(shí)現(xiàn)或執(zhí)行通用處理器、數(shù)字信號(hào)處理器(DSP)、專用集成電路(ASIC)、現(xiàn)場(chǎng)可編程門陣列(FPGA)或其它可編程邏輯器件、分立門或晶體管邏輯、分立硬件組件、或者其設(shè)計(jì)用于執(zhí)行本文所述功能的任意組合。通用處理器可以是微處理器,但是可替代地,處理器可以是任何傳統(tǒng)的處理器、控制器、微控制器或狀態(tài)機(jī)。處理器也可以實(shí)現(xiàn)為計(jì)算設(shè)備的組合,例如DSP和微處理器的組合、多個(gè)微處理器、一個(gè)或多個(gè)微處理器結(jié)合DSP核或任何其它類似配置。結(jié)合本申請(qǐng)的實(shí)施例所描述的方法或者算法的步驟可直接體現(xiàn)為硬件、由處理器執(zhí)行的軟件模塊或兩者的組合。軟件模塊可以位于RAM存儲(chǔ)器、閃存、ROM存儲(chǔ)器、EPROM存儲(chǔ)器、EEPROM存儲(chǔ)器、寄存器、硬盤、移動(dòng)磁盤、CD-ROM或者本領(lǐng)域熟知的任何其它形式的存儲(chǔ)介質(zhì)中。將一種示例性的存儲(chǔ)介質(zhì)耦合至處理器,從而使處理器能夠從該存儲(chǔ)介質(zhì)讀取信息,并且可向該存儲(chǔ)介質(zhì)寫入信息?;蛘?,存儲(chǔ)介質(zhì)也可以集成到處理器。處理器和存儲(chǔ)介質(zhì)可以位于ASIC中。ASIC可以位于移動(dòng)站中?;蛘撸幚砥骱痛鎯?chǔ)介質(zhì)也可以作為分立組件存在于移動(dòng)站中。提供所公開的實(shí)施例的先前描述以使得本領(lǐng)域的技術(shù)人員能夠獲得或使用本發(fā)明。對(duì)這些實(shí)施例進(jìn)行各種各樣的修改對(duì)本領(lǐng)域技術(shù)人員來說是顯而易見的,并且在不背離本發(fā)明精神和范圍的前提下,本文所定義的一般原理可以應(yīng)用在其他實(shí)施例上。因此,本發(fā)明并不限于本文所給出的實(shí)施例,而是與本文所公開的原理和新穎的特征相一致的最廣范圍相符合。
權(quán)利要求
1.一種視頻數(shù)據(jù)緩沖系統(tǒng),包括前瞻解析器,其被配置為通過對(duì)與視頻數(shù)據(jù)的解碼部分相對(duì)應(yīng)的視頻數(shù)據(jù)比特流的編碼部分進(jìn)行前瞻來對(duì)所述視頻數(shù)據(jù)的解碼部分的值進(jìn)行預(yù)測(cè);解碼器,其被配置為對(duì)所述視頻數(shù)據(jù)比特流的所述編碼部分進(jìn)行解碼;以及存儲(chǔ)器管理器,其被配置為基于所述視頻數(shù)據(jù)的解碼部分的所預(yù)測(cè)的值來將所述視頻數(shù)據(jù)的解碼部分存儲(chǔ)在第一存儲(chǔ)器的第一緩沖器中或第二存儲(chǔ)器的第二緩沖器中。
2.根據(jù)權(quán)利要求1所述的系統(tǒng),其中,所述視頻數(shù)據(jù)的解碼部分的所預(yù)測(cè)的值是所述視頻數(shù)據(jù)的解碼部分的預(yù)測(cè)帶寬、所述視頻數(shù)據(jù)的解碼部分的預(yù)測(cè)壽命或者在所述壽命期間所述視頻數(shù)據(jù)的解碼部分的預(yù)測(cè)帶寬變化。
3.根據(jù)權(quán)利要求2所述的系統(tǒng),其中,所述第一緩沖器中的所述解碼視頻數(shù)據(jù)的每一部分的所述預(yù)測(cè)帶寬大于所述第二緩沖器中的所述解碼視頻數(shù)據(jù)的每一部分的所述預(yù)測(cè)帶寬。
4.根據(jù)權(quán)利要求1所述的系統(tǒng),其中,與所述第二緩沖器中的視頻數(shù)據(jù)的每個(gè)解碼部分相比,所述第一緩沖器中的視頻數(shù)據(jù)的每個(gè)解碼部分被預(yù)測(cè)為更加頻繁地被參考。
5.根據(jù)權(quán)利要求1所述的系統(tǒng),其中,所述視頻數(shù)據(jù)的解碼部分的所預(yù)測(cè)的值是所述視頻數(shù)據(jù)的解碼部分將要被參考以用于進(jìn)行運(yùn)動(dòng)補(bǔ)償?shù)念A(yù)測(cè)次數(shù)。
6.根據(jù)權(quán)利要求2所述的系統(tǒng),其中,所述第一緩沖器是解碼圖片緩沖器,其中,所述解碼圖片緩沖器是內(nèi)部存儲(chǔ)器或嵌入式動(dòng)態(tài)隨機(jī)存取存儲(chǔ)器(“eDRAM”)。
7.根據(jù)權(quán)利要求6所述的系統(tǒng),其中,當(dāng)所述視頻數(shù)據(jù)的解碼部分的所述預(yù)測(cè)帶寬被預(yù)測(cè)為大于或等于閾值時(shí),所述視頻數(shù)據(jù)的解碼部分被存儲(chǔ)在內(nèi)部存儲(chǔ)器中。
8.根據(jù)權(quán)利要求2所述的系統(tǒng),其中,所述第二緩沖器是解碼圖片緩沖器,其中,所述解碼圖片緩沖器是外部存儲(chǔ)器或同步動(dòng)態(tài)隨機(jī)存取存儲(chǔ)器(“SDRAM”)。
9.根據(jù)權(quán)利要求8所述的系統(tǒng),其中,當(dāng)所述視頻數(shù)據(jù)的解碼部分的所述預(yù)測(cè)帶寬被預(yù)測(cè)為小于或等于閾值時(shí),所述視頻數(shù)據(jù)的解碼部分被存儲(chǔ)在外部存儲(chǔ)器中。
10.根據(jù)權(quán)利要求1所述的系統(tǒng),其中,所述前瞻解析器執(zhí)行完全解析或部分解析。
11.根據(jù)權(quán)利要求1所述的系統(tǒng),其中,所述視頻數(shù)據(jù)的所述部分包括解碼圖片緩沖器頁面、幀、宏塊或子宏塊。
12.—種對(duì)視頻數(shù)據(jù)進(jìn)行緩沖的方法,所述方法包括通過對(duì)與視頻數(shù)據(jù)的解碼部分相對(duì)應(yīng)的視頻數(shù)據(jù)比特流的編碼部分進(jìn)行前瞻來對(duì)所述視頻數(shù)據(jù)的解碼部分的值進(jìn)行預(yù)測(cè);對(duì)所述視頻數(shù)據(jù)比特流的所述編碼部分進(jìn)行解碼;以及基于所述視頻數(shù)據(jù)的解碼部分的所預(yù)測(cè)的值來確定是將所述視頻數(shù)據(jù)的解碼部分存儲(chǔ)在第一存儲(chǔ)器的第一緩沖器中還是第二存儲(chǔ)器的第二緩沖器中。
13.根據(jù)權(quán)利要求12所述的方法,其中,所述視頻數(shù)據(jù)的解碼部分的所預(yù)測(cè)的值是所述視頻數(shù)據(jù)的解碼部分的預(yù)測(cè)帶寬、所述視頻數(shù)據(jù)的解碼部分的預(yù)測(cè)壽命或者在所述壽命期間所述視頻數(shù)據(jù)的解碼部分的預(yù)測(cè)帶寬變化。
14.根據(jù)權(quán)利要求13所述的方法,其中,所述第一緩沖器中的所述解碼視頻數(shù)據(jù)的每一部分的所述預(yù)測(cè)帶寬大于所述第二緩沖器中的所述解碼視頻數(shù)據(jù)的每一部分的所述預(yù)測(cè)帶寬。
15.根據(jù)權(quán)利要求12所述的方法,其中,所述視頻數(shù)據(jù)的解碼部分的所預(yù)測(cè)的值是所述視頻數(shù)據(jù)的解碼部分將要被參考以用于進(jìn)行運(yùn)動(dòng)補(bǔ)償?shù)念A(yù)測(cè)次數(shù)。
16.根據(jù)權(quán)利要求12所述的方法,其中,所述第一緩沖器是解碼圖片緩沖器,其中,所述解碼圖片緩沖器是內(nèi)部存儲(chǔ)器或嵌入式動(dòng)態(tài)隨機(jī)存取存儲(chǔ)器(“eDRAM”)。
17.根據(jù)權(quán)利要求12所述的方法,其中,所述第二緩沖器是解碼圖片緩沖器,其中,所述解碼圖片緩沖器是外部存儲(chǔ)器或同步動(dòng)態(tài)隨機(jī)存取存儲(chǔ)器(“SDRAM”)。
18.根據(jù)權(quán)利要求12所述的方法,其中,在使用所述第二緩沖器之前,對(duì)所述第一緩沖器進(jìn)行填充。
19.一種視頻數(shù)據(jù)緩沖系統(tǒng),包括用于通過對(duì)與視頻數(shù)據(jù)的解碼部分相對(duì)應(yīng)的視頻數(shù)據(jù)比特流的編碼部分進(jìn)行前瞻來對(duì)所述視頻數(shù)據(jù)的解碼部分的值進(jìn)行預(yù)測(cè)的模塊;用于對(duì)所述視頻數(shù)據(jù)比特流的所述編碼部分進(jìn)行解碼的模塊;以及用于基于所述視頻數(shù)據(jù)的解碼部分的所預(yù)測(cè)的值來確定是將所述視頻數(shù)據(jù)的解碼部分存儲(chǔ)在第一存儲(chǔ)器的第一緩沖器中還是第二存儲(chǔ)器的第二緩沖器中的模塊。
20.根據(jù)權(quán)利要求19所述的系統(tǒng),其中,所述視頻數(shù)據(jù)的解碼部分的所預(yù)測(cè)的值是所述視頻數(shù)據(jù)的解碼部分的預(yù)測(cè)帶寬、所述視頻數(shù)據(jù)的解碼部分的預(yù)測(cè)壽命或者在所述壽命期間所述視頻數(shù)據(jù)的解碼部分的預(yù)測(cè)帶寬變化。
21.根據(jù)權(quán)利要求19所述的系統(tǒng),其中,所述視頻數(shù)據(jù)的解碼部分的所預(yù)測(cè)的值是所述視頻數(shù)據(jù)的解碼部分將要被參考以用于進(jìn)行運(yùn)動(dòng)補(bǔ)償?shù)念A(yù)測(cè)次數(shù)。
22.一種包含軟件的計(jì)算機(jī)可讀介質(zhì),所述軟件在被執(zhí)行時(shí)使得計(jì)算機(jī)執(zhí)行以下動(dòng)作通過對(duì)與視頻數(shù)據(jù)的解碼部分相對(duì)應(yīng)的視頻數(shù)據(jù)比特流的編碼部分進(jìn)行前瞻來對(duì)所述視頻數(shù)據(jù)的解碼部分的值進(jìn)行預(yù)測(cè);對(duì)所述視頻數(shù)據(jù)比特流的所述編碼部分進(jìn)行解碼;以及基于所述視頻數(shù)據(jù)的解碼部分的所預(yù)測(cè)的值來確定是將所述視頻數(shù)據(jù)的解碼部分存儲(chǔ)在第一存儲(chǔ)器的第一緩沖器中還是第二存儲(chǔ)器的第二緩沖器中。
23.根據(jù)權(quán)利要求22所述的介質(zhì),其中,所述視頻數(shù)據(jù)的解碼部分的所預(yù)測(cè)的值是預(yù)測(cè)帶寬。
24.根據(jù)權(quán)利要求22所述的介質(zhì),其中,所述視頻數(shù)據(jù)的解碼部分的所預(yù)測(cè)的值是所述視頻數(shù)據(jù)的解碼部分將要被參考以用于進(jìn)行運(yùn)動(dòng)補(bǔ)償?shù)念A(yù)測(cè)次數(shù)。
25.一種視頻數(shù)據(jù)緩沖系統(tǒng),包括前瞻解析器,其被配置為對(duì)已編碼的視頻數(shù)據(jù)的跳過部分進(jìn)行識(shí)別和標(biāo)記;解碼器,其被配置為對(duì)所述視頻數(shù)據(jù)的跳過部分進(jìn)行解碼,其中,經(jīng)解碼的所述視頻數(shù)據(jù)的跳過部分具有視頻數(shù)據(jù)的對(duì)應(yīng)相同的解碼部分;以及存儲(chǔ)器管理器,其被配置為將經(jīng)解碼的所述視頻數(shù)據(jù)的跳過部分和所述視頻數(shù)據(jù)的對(duì)應(yīng)相同的解碼部分存儲(chǔ)在單個(gè)參考存儲(chǔ)器位置中。
26.根據(jù)權(quán)利要求25所述的系統(tǒng),其中,所述單個(gè)參考存儲(chǔ)器位置位于第一存儲(chǔ)器中。
27.根據(jù)權(quán)利要求沈所述的系統(tǒng),其中,所述第一存儲(chǔ)器是嵌入式動(dòng)態(tài)隨機(jī)存取存儲(chǔ)器(“eDRAM”)。
全文摘要
本文描述了一種用于進(jìn)行智能解碼圖片緩沖的系統(tǒng)和方法。在一個(gè)實(shí)施例中,視頻比特流緩沖器接收并且臨時(shí)保持編碼壓縮比特流,其中該編碼壓縮比特流包含視頻的各個(gè)部分。隨后,前瞻解析器提前在視頻中進(jìn)行掃描以分析視頻比特流緩沖器中的編碼視頻比特流的各個(gè)部分,從而對(duì)視頻的值進(jìn)行預(yù)測(cè)?;谶@個(gè)預(yù)測(cè),智能存儲(chǔ)器管理器對(duì)各個(gè)視頻部分的優(yōu)先次序進(jìn)行區(qū)分,并且隨后將高值視頻部分發(fā)送到第一緩沖器并將低值視頻部分發(fā)送到第二緩沖器。
文檔編號(hào)H04N7/26GK102246522SQ200980149660
公開日2011年11月16日 申請(qǐng)日期2009年12月11日 優(yōu)先權(quán)日2008年12月12日
發(fā)明者R·納加拉杰, S·A·莫洛伊 申請(qǐng)人:高通股份有限公司