專利名稱:用于儲(chǔ)存中間環(huán)路過(guò)濾數(shù)據(jù)之暫存存儲(chǔ)器的制作方法
技術(shù)領(lǐng)域:
本發(fā)明是關(guān)于視頻處理技術(shù)。在一個(gè)態(tài)樣中,本發(fā)明是關(guān)于數(shù)字 視頻信息的解壓縮。
背景技術(shù):
因?yàn)橐曨l信息需要大量的儲(chǔ)存空間,故視頻信息通常被壓縮。因此,為了顯示例如儲(chǔ)存在CD-ROM或DVD之經(jīng)壓縮之視頻信息,該 經(jīng)壓縮之視頻信息必須被解壓縮以提供解壓縮之視頻信息。解壓縮之 視頻信息接著以比特流方式提供于顯示器。視頻信息的解壓縮位流通 常以對(duì)應(yīng)于顯示器之像素位置之位映像(bit map)而儲(chǔ)存于存儲(chǔ)器位置 中。在顯示器上呈現(xiàn)單一屏幕信息所需之視頻信息稱之為幀(frame)。 許多視頻系統(tǒng)之目標(biāo)為快速且有效地譯碼經(jīng)壓縮之視頻信息,以便藉 由顯示一序列的幀而提供動(dòng)作視頻。錄像媒體、裝置及數(shù)據(jù)處理(譬如視頻壓縮)的多種態(tài)樣的標(biāo)準(zhǔn)化, 系為此技術(shù)持續(xù)成長(zhǎng)及其應(yīng)用所高度需要。已發(fā)展或正在發(fā)展數(shù)種(解) 壓縮標(biāo)準(zhǔn)用以壓縮及解壓縮視頻信息,如用于視頻編碼及譯碼之動(dòng)作 圖形專家小組(Moving Pictures Expert Group, MPEG)標(biāo)準(zhǔn)(例如 MPEG-1、 MPEG-2、 MPEG-3、 MPEG-4、 MPEG-7、 MPEG-21)或窗口 媒體視頻(Windows Media Video)壓縮標(biāo)準(zhǔn)(如WMV9)。在此提出之每種 MPEG及WMV標(biāo)準(zhǔn)整體并入本文中作為參考。通常,視頻壓縮技術(shù)包括幀內(nèi)(intraframe)壓縮及幀間(interframe) 壓縮,該等壓縮技術(shù)藉由減少在視頻幀中出現(xiàn)之空間及時(shí)間上之冗余 而操作以壓縮視頻信息。幀內(nèi)壓縮技術(shù)僅使用幀內(nèi)含之信息來(lái)壓縮幀, 其稱之為I-幀(I-frame)。幀間壓縮技術(shù)參考之前及/或之后之幀(通常 稱之為預(yù)測(cè)幀、P-幀(P-frame)或B-幀(B-frameX)而壓縮幀。幀內(nèi)及幀間 壓縮技術(shù)通常使用以空間或塊為基礎(chǔ)之編碼,藉此視頻幀分為用于編 碼之多個(gè)塊(亦稱為塊變換處理)。例如,一I-幀分為8x8塊。使用離散
余弦轉(zhuǎn)換(discrete cosine transform, DCT)編碼方式將該等塊編碼,而該 編碼方式將系數(shù)編碼為特定余弦基函數(shù)之振幅,或用一些其它轉(zhuǎn)換(例 如整數(shù)(integer)轉(zhuǎn)換)來(lái)編碼塊。轉(zhuǎn)換之系數(shù)接著被量化(quatize),其產(chǎn) 生具有非0振幅位準(zhǔn)之系數(shù)以及0振幅位準(zhǔn)系數(shù)的束(runs)(或子序列 (subsequences))。量化之系數(shù)接著被束位準(zhǔn)編碼(或束長(zhǎng)度編碼)以壓縮0 系數(shù)的長(zhǎng)束。結(jié)果為一致性編碼(entropy coded)于可變長(zhǎng)度編碼器 (VLC),該VLC使用統(tǒng)計(jì)編碼技術(shù),該技術(shù)分配碼字符(codewords)至 欲編碼之值,或使用一些其它一致性編碼技術(shù),如基于上下文之自適 應(yīng)二進(jìn)帝ij算術(shù)編碼(Context-based Adaptive Binary Arithmetic Coding, CABAC)、上下文之自適應(yīng)可變長(zhǎng)度編碼(Context Adaptive Variable Length Coding, CAVLC)等。將出現(xiàn)頻率高之值指定給短碼字符,而那 些不常出現(xiàn)之值指定給長(zhǎng)碼字符。平均而言,較常出現(xiàn)之較短碼字符 占了大部分,因此碼字符串(code string)比原始數(shù)據(jù)短。因此,以空間 或塊為基礎(chǔ)之編碼技術(shù)壓縮關(guān)于單一幀之?dāng)?shù)字信息。為了壓縮關(guān)聯(lián)于 一序列幀之?dāng)?shù)字信息,視頻壓縮技術(shù)使用P-幀及/或B-幀以利用連續(xù) 幀間具有時(shí)間上相關(guān)性的事實(shí)。幀間壓縮技術(shù)將識(shí)別不同幀間的差異 性,然后DCT、量化法、束長(zhǎng)度和一致性編碼技術(shù)來(lái)空間地編碼不同 的信息,雖然不同的實(shí)施可使用不同的塊配置。例如,P-幀可分為16x16 宏塊(macroblock)(例如,四個(gè)8x8亮度塊(luminance block)及二個(gè)8x8 色度塊(chrominance block)),并壓縮宏塊。無(wú)論使用幀內(nèi)或幀間壓縮技 術(shù),使用以空間或塊為基礎(chǔ)之編碼技術(shù)來(lái)編碼視頻數(shù)據(jù)系指已對(duì)壓縮 之視頻數(shù)據(jù)進(jìn)行可變長(zhǎng)度編碼,不然己使用如上述之以塊為基礎(chǔ)的壓 縮技術(shù)壓縮。在接收器或播放裝置,反轉(zhuǎn)壓縮步驟以譯碼已用塊變換處理之視 頻數(shù)據(jù)。圖1繪示用于解壓縮視頻信息之習(xí)知系統(tǒng)30,其包括輸入比 特流譯碼部分35、動(dòng)作譯碼器38、加法器39、幀緩沖器40和顯示器 41。輸入比特流譯碼器35在輸入緩沖器31接收壓縮視頻信息之比特 流,在VLC譯碼器32執(zhí)行可變長(zhǎng)度譯碼,在反向量化器33反向鋸齒 狀掃描(zig-zag)及量化,在IDCT 34反向DCT轉(zhuǎn)換,并將靜態(tài)解壓縮 視頻信息之塊提供至加法器39。在動(dòng)作譯碼部分38中,動(dòng)作補(bǔ)償單元 37從VLC譯碼器32接收動(dòng)作信息及先前圖像數(shù)據(jù)(其儲(chǔ)存于先前圖像 儲(chǔ)存緩沖器36)的副本,且提供動(dòng)作補(bǔ)償像素至加法器39。加法器39 接收動(dòng)作解壓縮視頻信息和動(dòng)作補(bǔ)償像素,并提供解壓縮像素至幀緩 沖器40,該幀緩沖器40接著提供該訊息至顯示器41。在傳統(tǒng)視頻編碼器及譯碼器設(shè)計(jì)下,可能由以塊為基礎(chǔ)的轉(zhuǎn)換、 動(dòng)作補(bǔ)償、量化及/或其它有損的(lossy)處理步驟,而將塊化贗像 (blocking artifact)(可察覺的塊間之不連續(xù))導(dǎo)入幀。先前已使用重疊平 滑化(overlap smoothing)或解塊(deblocking)過(guò)濾(環(huán)路內(nèi)或后處理)以藉 由平滑化塊間邊界而處理幀,來(lái)試圖降低塊化贗像。例如,WMV9標(biāo) 準(zhǔn)中,指定對(duì)整個(gè)圖像進(jìn)行重疊平滑化及環(huán)路內(nèi)解塊處理,以降低塊 化贗像。當(dāng)激活WMP9譯碼,重疊平滑化只在8X8塊邊界進(jìn)行,起始 為在垂直方向平滑化整個(gè)幀,接著重疊平滑化在整個(gè)幀的水平方向進(jìn) 行。接著,環(huán)路內(nèi)解塊,當(dāng)激活時(shí)以此順序進(jìn)行(i)幀內(nèi)所有8x8塊 水平邊界線從頂部線開始過(guò)濾;(ii)在幀中所有8x4次塊水平邊界線從 頂部線開始過(guò)濾;(iii)所有8x8塊垂直邊界線從最左邊線開始過(guò)濾;以 及(iv)所有4x8次塊垂直邊界線從最左邊線開始過(guò)濾。先前的方法對(duì)整 個(gè)幀使用二階段處理(two passes),其中第一次處理是要執(zhí)行重疊平滑 化,而第二步驟系用于環(huán)路內(nèi)解塊。雖然在決定是否要進(jìn)行個(gè)別步驟 的處理時(shí)可能有也適用的其它要求(例如,涉及參數(shù)PQUANT及塊類 型的要求),但是這些處理的目標(biāo)都是要平滑化16x16宏塊、8x8塊、 或4x4次塊的邊緣,因而去除二維轉(zhuǎn)換及量化時(shí)所導(dǎo)入的塊效應(yīng) (blockiness)之贗像。以處理器為基礎(chǔ)之方法來(lái)處理視頻解壓縮,其它平滑化或解塊功 能的加入為計(jì)算密集過(guò)濾流程。此處理順序可在軟件完成且具有大存 儲(chǔ)器緩沖器保留幀(例如640x480像素之VGA尺寸,相當(dāng)于307k字節(jié))。 另一方面,以硬件為基礎(chǔ)之方法用于譯碼并未同時(shí)實(shí)施平滑化及解塊, 且已在幀整體執(zhí)行解塊,其需要大局部存儲(chǔ)器,負(fù)擔(dān)顯著總線頻寬需 求及犧牲存儲(chǔ)器存取時(shí)間。結(jié)果,關(guān)于減低解壓縮方法相關(guān)之處理需 求及改良尤其包括重疊平滑化及/或解塊過(guò)濾操作之解壓縮操作存在 顯著的需求。對(duì)熟習(xí)該項(xiàng)技術(shù)者而言,在參考下述圖式及詳細(xì)說(shuō)明閱 讀本說(shuō)明書后,習(xí)知系統(tǒng)之進(jìn)一步限制及缺點(diǎn)會(huì)變得顯而易見
發(fā)明內(nèi)容
藉由使用結(jié)合軟件及硬件以執(zhí)行視頻解壓縮,提供彈性(flexible) 解壓縮系統(tǒng)可適于快速且有效處理多種不同視頻壓縮方法。彈性解壓 縮系統(tǒng)包括執(zhí)行前端解壓縮步驟之處理器,及執(zhí)行后端解壓縮步驟之 視頻加速器。為了降低對(duì)視頻幀數(shù)據(jù)執(zhí)行重疊平滑化及環(huán)路內(nèi)解塊過(guò) 濾操作之視頻加速器中之存儲(chǔ)器頻寬需求,環(huán)路內(nèi)過(guò)濾器耦合至?xí)捍?存儲(chǔ)器(scratch pad)或儲(chǔ)存器裝置其加速以宏塊為基礎(chǔ)之方式實(shí)行重疊 平滑化及環(huán)路內(nèi)解塊的分段(piecewise)處理。使用暫存存儲(chǔ)器以宏塊為 基礎(chǔ)之方式執(zhí)行過(guò)濾操作之分段處理與以幀為基礎(chǔ)之方法相比為更有 效率。由于暫存存儲(chǔ)器之尺寸和幀之寬度相關(guān),因此芯片上存儲(chǔ)器 (on-chip memory)的數(shù)量降低。例如,暫存存儲(chǔ)器的尺寸可夠大以保持 不會(huì)多過(guò)來(lái)自視頻數(shù)據(jù)之幀之部分過(guò)濾塊之一行(row)。根據(jù)本發(fā)明之一個(gè)或多個(gè)實(shí)施例,提供了視頻處理系統(tǒng)、裝置及 方法,藉此處理器及視頻譯碼電路譯碼己用塊變換處理成多個(gè)宏塊視 頻數(shù)據(jù)。與譯碼操作相關(guān)連,設(shè)在一個(gè)或多個(gè)集成電路上之環(huán)路內(nèi)過(guò) 濾器及暫存存儲(chǔ)器,用來(lái)藉由平滑化及解塊在第一宏圖塊之選擇、之像 素?cái)?shù)據(jù)而執(zhí)行分段處理,以產(chǎn)生一個(gè)或多個(gè)完成塊及一個(gè)或多個(gè)部分 過(guò)濾塊,其中至少一個(gè)部分過(guò)濾塊包含儲(chǔ)存于暫存存儲(chǔ)器中之控制數(shù) 據(jù)和像素?cái)?shù)據(jù)。結(jié)果,任何鄰接先前處理之宏塊之塊可完全過(guò)濾用于 重疊平滑化及解塊,且接著在第一過(guò)濾操作期間輸出為完成塊,同時(shí) 鄰接后續(xù)處理之宏塊之塊可部分過(guò)濾用于重疊平滑化及解塊且接著以 部分過(guò)濾塊儲(chǔ)存在暫存存儲(chǔ)器中。由環(huán)路內(nèi)過(guò)濾器使用暫存存儲(chǔ)器以 提供用于平滑化及解塊在第一宏塊中之像素?cái)?shù)據(jù)之部分過(guò)濾塊,其中 該取得之部分過(guò)濾塊為先前在處理先前宏塊期間產(chǎn)生。藉由依序處理 在視頻幀之宏塊的每一行以一次重疊平滑化及解塊一個(gè)宏塊,該環(huán)路 內(nèi)過(guò)濾器及暫存存儲(chǔ)器可用來(lái)依序地以流水線方式(pipelined fahion)對(duì) 多個(gè)宏塊執(zhí)行平滑化及解塊。本發(fā)明之目的、優(yōu)點(diǎn)及其它新穎特征在熟習(xí)該項(xiàng)技術(shù)者閱讀下列 詳細(xì)說(shuō)明并閱讀所附申請(qǐng)專利范圍和圖式之后,會(huì)變?yōu)槿菀桌斫狻?br>
圖1為方塊圖,代表用于解壓縮視頻信息之系統(tǒng);圖2為方塊圖,代表依據(jù)本發(fā)明建構(gòu)之例示視頻解壓縮系統(tǒng);圖3為根據(jù)本發(fā)明之選擇之實(shí)施例,繪示環(huán)路內(nèi)過(guò)濾處理之簡(jiǎn)單圖標(biāo),其使用暫存存儲(chǔ)器以在硬件中有效處理重疊平滑化及環(huán)路內(nèi)解塊;圖4繪示用于降低在譯碼幀中之塊效應(yīng)(blockiness)之例示技術(shù), 系在視頻編碼器或譯碼器中使用平滑化及解塊過(guò)濾器;圖5A至5K顯示如何可使用分段處理對(duì)亮度塊執(zhí)行平滑化及解塊 過(guò)程;以及圖6A至6F顯示如何可使用分段處理對(duì)色度塊執(zhí)行平滑化及解塊 過(guò)程。
具體實(shí)施方式
以下說(shuō)明本發(fā)明之實(shí)施范例,應(yīng)了解可不需要這些特定詳細(xì)說(shuō)明 而實(shí)施本發(fā)明,且在此之?dāng)⑹鰧?duì)本發(fā)明可有多種特定履行方式?jīng)Q定以 達(dá)到設(shè)計(jì)者之特定目標(biāo),例如符合系統(tǒng)相關(guān)或商業(yè)相關(guān)限制,而其可 從一種履行方式到其它方式而有變化。此等發(fā)展努力也許復(fù)雜或耗費(fèi) 時(shí)間,然而對(duì)熟習(xí)該項(xiàng)技術(shù)者而言乃為例行工作,仍能從本發(fā)明獲得 效益。例如,選擇之態(tài)樣系以方塊圖形式顯示,而非詳細(xì)顯示,以避 免模糊了本發(fā)明。該等敘述和表現(xiàn)可由熟習(xí)該項(xiàng)技術(shù)者使用,且傳遞 其工作之主旨至其它熟習(xí)該項(xiàng)技術(shù)者。本發(fā)明現(xiàn)在參考圖式詳細(xì)說(shuō)明 如后。參考圖2,提供根據(jù)本發(fā)明之代表例示視頻解壓縮系統(tǒng)100之方塊 圖。如繪示者,視頻解壓縮系統(tǒng)100可使用于任何視頻播放裝置,如 桌上型或膝上型計(jì)算機(jī)、無(wú)線或移動(dòng)裝置、個(gè)人數(shù)字助理、行動(dòng)或蜂 巢式電話及其它任何包括視頻成像特征之視頻播放裝置。如圖2所示, 視頻解壓縮系統(tǒng)100使用作為主機(jī)或應(yīng)用處理單元,該單元包括總線 95耦合至一個(gè)或多個(gè)處理器或處理單元50及視頻或媒體加速硬件單 元101。此外,視頻解壓縮系統(tǒng)100包括主存儲(chǔ)器系統(tǒng),該主存儲(chǔ)器系 統(tǒng)包括大型DDR SDRAM 62、 64,其經(jīng)由DDR控制器60存取。此外 或可變換地,影像解壓縮系統(tǒng)100包括一個(gè)或多個(gè)存儲(chǔ)器(如IDE 72、
閃存單元74、 ROM 76等)為經(jīng)由靜態(tài)存儲(chǔ)器控制器70存取。DDR SDRAM或其它存儲(chǔ)器之兩者或其一可整合至或外接至視頻解壓縮系 統(tǒng)100。當(dāng)然,其它外圍及顯示器裝置(82、 84、 86、 92)可經(jīng)由個(gè)別 控制器80、 90存取。為了清楚及容易明了,并沒(méi)詳細(xì)描述所有制造視 頻譯碼系統(tǒng)100之組件。該等細(xì)節(jié)為熟悉該項(xiàng)技術(shù)者所知悉,且根據(jù) 特定計(jì)算機(jī)供貨商及處理器類型而有所不同。再者,根據(jù)實(shí)施需求, 視頻解壓縮系統(tǒng)100可包括其它總線、裝置、及/或子系統(tǒng)。例如視 頻解壓縮系統(tǒng)100可包括快取存儲(chǔ)器、調(diào)制解調(diào)器、平行或串接接口、 SCSI接口、網(wǎng)絡(luò)適配卡等。在描述實(shí)施例中,CPU50執(zhí)行儲(chǔ)存于閃存 74及/或SDRAM 62、 64之軟件。在繪示于圖2中之視頻解壓縮系統(tǒng)100,當(dāng)媒體加速硬件單元101 對(duì)譯碼數(shù)據(jù)執(zhí)行反向量化104、反向轉(zhuǎn)換106、動(dòng)作補(bǔ)償108、環(huán)路內(nèi) 過(guò)濾110、顏色空間轉(zhuǎn)換112、改變尺寸(scaling)114及過(guò)濾116時(shí),CPU 50如指示為在VLD塊52執(zhí)行起始可變長(zhǎng)度譯碼功能。所得譯碼數(shù)據(jù) 在顯示在顯示器92之前可暫時(shí)儲(chǔ)存在輸出緩沖器118及/或幀緩沖器 (未圖標(biāo))。藉由分配譯碼處理功能在處理器50與媒體加速硬件101之 間,前端譯碼步驟(例如可變長(zhǎng)度譯碼)可在軟件執(zhí)行,以容納不同的壓 縮方法(例如MPEG-1、 MPEG-2、 MPEG-3 、 MPEG-4、 MPEG-7、 MPEG-21、 WMV9等)。經(jīng)由前端產(chǎn)生之譯碼數(shù)據(jù)提供至媒體加速硬件 101其進(jìn)一步譯碼以宏圖塊為基礎(chǔ)之于宏圖塊上之譯碼數(shù)據(jù)以提供像 素值至輸出緩沖器118或幀緩沖器直到幀完成為止。操作中,視頻解壓縮系統(tǒng)100從視頻訊號(hào)源如CD ROM、 DVD或 其它儲(chǔ)存裝置接收解壓縮視頻訊號(hào)。壓縮視頻訊號(hào)提供為壓縮視頻訊 號(hào)之比特流至處理器50,該處理器執(zhí)行指令以譯碼壓縮訊號(hào)之可變長(zhǎng) 度編碼部分,以提供可變長(zhǎng)度譯碼數(shù)據(jù)(VLD數(shù)據(jù))訊號(hào)。 一旦使用軟 件輔助執(zhí)行可變長(zhǎng)度譯碼后,即直接或使用數(shù)據(jù)壓縮技術(shù),更詳盡說(shuō) 明于美國(guó)專利申請(qǐng)第11/042,365號(hào)(標(biāo)題為"輸入數(shù)據(jù)之輕量壓縮 (Lightweight Compression of Input Data)"),將該VLD數(shù)據(jù)(其包括標(biāo)頭 (header)、矩陣加權(quán)、動(dòng)作向量、轉(zhuǎn)換殘余系數(shù)及偶數(shù)差分動(dòng)作向量(even differential motion vector))傳遞至媒體加速硬件單元101。在媒體加速硬 件單元101, 一旦接收到VLD數(shù)據(jù),數(shù)據(jù)即提供至反向鋸齒狀掃描及
量化器電路104,該電路104譯碼VLD數(shù)據(jù)訊號(hào)以提供鋸齒狀掃描譯 碼訊號(hào)。反向鋸齒狀掃描及量化補(bǔ)償系基于下列事實(shí)當(dāng)壓縮之視頻 訊號(hào)以鋸齒狀掃描束長(zhǎng)度編碼(Zig-Zag run-length code)方式壓縮時(shí),該 鋸齒狀掃描譯碼訊號(hào)系提供至反向DCT電路106作為序列塊之信息。 因此,此鋸齒狀掃描譯碼訊號(hào)提供了按照在顯示器92上進(jìn)行光柵掃描 (raster scanning)所需順序之塊。此鋸齒狀譯碼訊號(hào)然后提供于以塊接著 塊方式于鋸齒狀譯碼視頻訊號(hào)施行反向離散余弦轉(zhuǎn)換之反向轉(zhuǎn)換電路 106(例如,IDCT或反向整數(shù)轉(zhuǎn)換),以提供靜態(tài)解壓縮像素值或解壓縮 錯(cuò)誤項(xiàng)目。靜態(tài)解壓縮像素值經(jīng)由行動(dòng)補(bǔ)償單元108以塊接著塊方式 處理,該行動(dòng)補(bǔ)償單元108提供幀內(nèi)、預(yù)測(cè)的及雙向(bidirectional)行動(dòng) 補(bǔ)償,包括支持一個(gè)、兩個(gè)及四個(gè)行動(dòng)向量(16x16、 16x8及8x8塊)。 根據(jù)WMV9壓縮標(biāo)準(zhǔn),藉由使用暫存存儲(chǔ)器111儲(chǔ)存部分完成的宏塊 過(guò)濾數(shù)據(jù),如下列更詳細(xì)描述者,環(huán)路內(nèi)過(guò)濾器10執(zhí)行重疊平滑化及 /或解塊以降低或消除塊化贗像。顏色空間轉(zhuǎn)換器112轉(zhuǎn)換一個(gè)或多 個(gè)輸入數(shù)據(jù)格式(例如YCbCr 4:2:0)為一個(gè)或多個(gè)輸出格式(如RGB), 結(jié)果在過(guò)濾器116過(guò)濾及/或調(diào)整大小。如在此所揭示的,平滑化及解塊環(huán)路內(nèi)過(guò)濾器110在第一次處理 時(shí)藉由部分過(guò)濾或處理每一行的宏塊以移除鄰近塊間的邊界不連續(xù), 接著在處理下一行宏塊時(shí)完成部分處理塊的處理。以此技術(shù),小型暫 存存儲(chǔ)器111可有效地用于將部分處理之塊儲(chǔ)存在暫存存儲(chǔ)器中,相 反于發(fā)生在傳統(tǒng)解塊處理,其使用大型存儲(chǔ)器儲(chǔ)存整個(gè)幀影像來(lái)過(guò)濾。 在以行接續(xù)行方式完成每一塊的重疊平滑化及解塊處理后,完成塊可 從過(guò)濾器110在傳輸至CSC 112之前先輸出至FIFO緩沖器(未圖標(biāo))。圖3繪示根據(jù)本發(fā)明之選擇性實(shí)施例,簡(jiǎn)化例示宏塊為基礎(chǔ)之環(huán) 路內(nèi)過(guò)濾處理,其使用暫存存儲(chǔ)器以有效處理重疊平滑化及解塊。在 過(guò)濾處理中,環(huán)路內(nèi)過(guò)濾器的每一次通過(guò)處理(pass)系經(jīng)由一行宏塊產(chǎn) 生完全完成塊(已完全過(guò)濾為平滑化及解塊之塊)及部分完成塊(儲(chǔ)存在 暫存存儲(chǔ)器以后續(xù)使用于下一行宏塊之平滑化及解塊)。如繪示,每個(gè) 單一宏塊(例如,宏塊4或"mb4"包括四個(gè)亮度塊mb4y0、mb4yl、mb4y2 及mb4y3)在環(huán)路內(nèi)過(guò)濾流程經(jīng)過(guò)下列順序之處理(i)完全完成平滑化及解塊之8x8塊(如塊mb4y0、 mb4yl)鄰接先
前宏塊(如宏塊l)及部分完成平滑化及解塊之8x8塊(如塊mb4y2、 mb4y3)鄰接下一個(gè)宏塊(如宏塊7);(ii) 輸出完全完成之8x8塊(如塊mb4y0、 mb4yl)及儲(chǔ)存部分完成 之8x8塊(如塊mb4y2、 mb4y3)在暫存存儲(chǔ)器;(iii) 當(dāng)下一個(gè)宏塊(如宏塊7)處理時(shí),從暫存存儲(chǔ)器提取部分完成 之8x8塊(如塊mb4y2、 mb4y3),并完成提取之8x8塊(如塊mb4y2、 mb4y3)的處理;以及(iv) 輸出完成之8x8塊(如塊mb4y2、 mb4y3)及下一個(gè)區(qū)集塊所完 成的8x8塊(如塊mb7y0、 mb7yl)。雖然實(shí)施之詳細(xì)情形可根據(jù)應(yīng)用而改變,然而圖3繪示了例示的 實(shí)施例,其中影像幀150由環(huán)路內(nèi)過(guò)濾器110處理,該影像幀150由 宏塊(如宏塊mb0、 mbl、 mb2、 mb3、 mb4、 mb5、 mb6、 mb7、 mb8 等)構(gòu)成且以復(fù)數(shù)行(如第一行151由mb0、 mbl及mb2構(gòu)成)配置。如 圖3之3A部分所示,環(huán)路內(nèi)過(guò)濾器110已完成第一次處理(first pass) 宏塊的第一行151。由于對(duì)第一行151的該第一次處理,已對(duì)上塊 (mbOy0、 mbOyl、 mbly0、 mblyl 、 mb2y0及mb2yl)完全經(jīng)重疊平滑化 及解塊處理(如由交叉影線(cross-hatching)所示),而下塊(mb0y2、 mb0y3、 mbly2、 mbly3、 mb2y2及mb2y3)為只有部分經(jīng)重疊平滑化及 解塊處理。為了在對(duì)宏塊之下一次處理期間完成該第一行151之該等 部分處理的塊,系將該第一行151之該等部分處理的塊儲(chǔ)存于暫存存 儲(chǔ)器111中(如點(diǎn)圖樣所指示者)。如其它繪示于圖3之3A部分,環(huán)路內(nèi)過(guò)濾器110已開始處理宏塊 的第二行152,其會(huì)完成第一行151的部分處理塊。結(jié)果,mb0y2、mb3y0 塊已完全經(jīng)平滑化及解塊處理,且mb3y2塊只有部分處理(且儲(chǔ)存于暫 存存儲(chǔ)器)。如在圖3之3A部分被過(guò)濾器110處理的各塊(如覆以斜線 所指示之已過(guò)濾塊154), mb0y3、 mb3yl及mb3y3塊己被部分經(jīng)平滑 化及解塊處理(且留置于過(guò)濾器110), mbly2塊為部分完成塊且自暫存 存儲(chǔ)器提取,而剩余塊(mb4y0及mb4y2)得自目前塊(例如宏塊4)。當(dāng) 環(huán)路內(nèi)過(guò)濾器110處理過(guò)濾塊154時(shí),平滑化及解塊在一個(gè)或多個(gè)部 分處理塊(如mb0y3及mb3yl)完成,而剩余塊(mbly2、 mb4y0、 mb4y2 及mb3y3)為只有部分完成。
在處理已過(guò)濾塊154后,環(huán)路內(nèi)過(guò)濾器110移至新數(shù)據(jù)。此以圖3 之3B部分繪示幀155,其顯示過(guò)濾器110取得過(guò)濾塊156系經(jīng)由輸出 任何完成塊(如mb0y3、 mb3yl),經(jīng)由儲(chǔ)存一個(gè)或多個(gè)部分完成塊(如 mb3y3)在暫存存儲(chǔ)器,經(jīng)由移動(dòng)剩余部分完成塊(如mbly2、 mb4y0及 mb4y2)于過(guò)濾器中一個(gè)塊位置,經(jīng)由從先前宏塊之行提取部分完成塊 (如mbly3),及從目前宏塊加載新塊(如mb4yl、 mb4y3)。當(dāng)環(huán)路內(nèi)過(guò) 濾器110處理已過(guò)濾之塊156時(shí),在一個(gè)或多個(gè)部分處理塊(如mbly2、 mb4y0)完成平滑化及解塊,而剩余塊(mbly3、 mb4yl、 mb4y3及mb4y2) 僅為部分完成。在處理己過(guò)濾塊156之后,環(huán)路內(nèi)過(guò)濾器110再度移至新數(shù)據(jù)如 圖3之3C部分所繪示之幀157。特別是過(guò)濾器110取得過(guò)濾塊158系 經(jīng)由輸出任何完成塊(如mbly2、 mb4y0),經(jīng)由儲(chǔ)存一個(gè)或多個(gè)部分完 成塊(如mb4y2)在暫存存儲(chǔ)器,經(jīng)由移動(dòng)剩余部分完成塊(如mbly3、 mb4yl及mb4y3)于過(guò)濾器中一個(gè)塊位置,經(jīng)由從先前宏塊之行提取部 分完成塊(如mb2y2),及從目前宏塊加載新塊(如mb5y0、 mb5y2)。當(dāng) 環(huán)路內(nèi)過(guò)濾器110處理已過(guò)濾塊158時(shí),在一個(gè)或多個(gè)部分處理塊(如 mbly3、 mb4yl)完成平滑化及解塊,而剩余塊(mb2y2、 mb5y0、 mb5y2 及mb4y3)僅為部分完成。此時(shí),宏塊4中之上塊(mb4y0、 mb4yl)已完 全經(jīng)重疊平滑化及解塊完成,但下塊(mb4y2、 mb4y3)為只有部分完成。 經(jīng)由儲(chǔ)存該部分儲(chǔ)存之下塊于暫存存儲(chǔ)器,過(guò)濾器操作可在過(guò)濾器110 處理下一行宏塊時(shí)完成。本發(fā)明之選擇性實(shí)施例的其它細(xì)節(jié)顯示于圖4中,其顯示技術(shù)200 在視頻編碼器或譯碼器使用平滑化及解塊過(guò)濾器用于降低在譯碼幀之 塊效應(yīng)(塊瑕疵;blockiness)。將了解到,繪示技術(shù)可用于處理亮度或 色度塊,雖然在每一幀的周緣會(huì)有特別角落情況,熟習(xí)該項(xiàng)技術(shù)者會(huì) 依照需要調(diào)整而應(yīng)用本發(fā)明。然而,為了簡(jiǎn)化之故,本發(fā)明的揭示主 要將重點(diǎn)放在環(huán)路內(nèi)過(guò)濾步驟,其施行于每一幀之宏塊內(nèi)部。參考圖4, 一旦視頻編碼器/譯碼器產(chǎn)生用于幀之至少第一宏塊 (201),則環(huán)路內(nèi)過(guò)濾器處理宏塊的上方行, 一次一個(gè)宏塊以過(guò)濾每一 塊與其鄰近塊的邊界。如可了解的,因?yàn)闆](méi)有在幀周圍執(zhí)行平滑化或 解塊,因此沒(méi)有在幀外之部分完成塊使用在過(guò)濾處理中。然而,當(dāng)過(guò)
濾宏塊的第一行時(shí),暫存存儲(chǔ)器以部分完成塊填滿。從第一宏塊開始(201),編碼器/譯碼器加載所需塊及從暫存存儲(chǔ)器提取來(lái)自上方的任 何部分完成鄰近塊(除了宏塊之第一行外)。宏塊包括四個(gè)亮度塊(yO、 yl、 y2、 y3)及兩個(gè)色度塊(Cb、 Cr),塊以下述順序進(jìn)入編碼器/譯碼 器硬件y0、 yl、 y2、 y3、 Cb、 Cr。接著,視頻編碼器/譯碼器過(guò)濾加載過(guò)濾器之塊與鄰接塊或次塊 的預(yù)定邊界(步驟210)。在選擇之實(shí)施例中,可使用分段處理技術(shù)以在 過(guò)濾器中部分處理每一塊。例如,在以亮度或色度計(jì)劃譯碼8x8塊之 后,所有或部分的左及/或右(垂直)邊緣施以平滑化過(guò)濾處理(步驟 211)。除此之外或可選擇地,所有或部分之塊之上及/或下(水平)邊緣 施以平滑化過(guò)濾處理(步驟212)。除了重疊平滑化外,解塊過(guò)濾處理可 施于所有或部分8x8塊之選擇之水平邊界線(步驟213),及/或所有或 部分8x4次塊之選擇之水平邊界線(步驟214)。除此之外或可選擇地解 塊過(guò)濾處理于所有或部分8x8塊之選擇之垂直邊界線(步驟215),及/ 或所有或部分4x8次塊之選擇之垂直邊界線(步驟216)。一旦過(guò)濾器中之塊已分段處理,則所得結(jié)果儲(chǔ)存或移至過(guò)濾器中 以進(jìn)行其它處理。特別地,為了讓過(guò)濾器處理新數(shù)據(jù),任何在過(guò)濾器 中完成塊從過(guò)濾器輸出(步驟217)。此外,不會(huì)與新塊一起處理之任何 部分完成塊儲(chǔ)存于暫存存儲(chǔ)器(步驟219)以后續(xù)使用并與下一宏塊行另 外處理,除非宏塊之最后一行已被處理(判定步驟218為否定結(jié)果),在 此情況暫存存儲(chǔ)器儲(chǔ)存步驟(219)可予略過(guò)。經(jīng)由儲(chǔ)存選擇之塊(步驟217、 219)在過(guò)濾器內(nèi)制造出空間,過(guò)濾 器因此現(xiàn)在可以處理新數(shù)據(jù)。特別地,如果在幀中有額外的塊(判定步 驟220為肯定結(jié)果),則過(guò)濾器中剩余之部分過(guò)濾塊移至左方(步驟 222)。對(duì)于在頂部行下方之行(判定步驟224為否定結(jié)果),過(guò)濾器內(nèi)可 用空間由從暫存存儲(chǔ)器提取之下一個(gè)部分完成塊填滿(步驟226),及過(guò) 濾器中任何剩余空間由新塊填滿(步驟228)。 一旦過(guò)濾器加載新數(shù)據(jù), 則塊過(guò)濾處理(步驟210)重復(fù)于新一組過(guò)濾塊。藉由重復(fù)此序列操作, 幀中每一宏塊依序過(guò)濾以從暫存存儲(chǔ)器提取部分完成塊,該部分完成 塊由先前宏塊之行處理時(shí)產(chǎn)生,且儲(chǔ)存部分過(guò)濾塊在暫存存儲(chǔ)器以為 后續(xù)在處理宏塊之下一行時(shí)使用。另一方面,若沒(méi)有將要過(guò)濾的剩余
塊(判定步驟222為否定結(jié)果),則完成了目前幀的平滑化及解塊處理。 此時(shí),提取下一幀(步驟230),并從新幀的第一宏塊開始重復(fù)過(guò)濾處理。參考圖5A至5K,本發(fā)明之例示實(shí)施例繪示如何以WMV9平滑化 及解塊過(guò)程可以用分段處理技術(shù)施行于宏塊4(或"mb4")中之亮度塊。 該過(guò)濾處理的起始步驟繪示于圖5A,其中過(guò)濾器320己加載部分己平 滑化(見,如橢圓形指示322)及解塊(見,如線指示323)處理之塊(例如 mbOy3、 mb3yl、 mb3y3》過(guò)濾器320接著以其它塊填滿,如圖5B所示。特別是部分完成塊 (如mbly2)從暫存存儲(chǔ)器提取且加載過(guò)濾器。此外,從目前宏塊(如mb4) 之選擇塊(如mb4y0、 mb4y2)加載編碼器/譯碼器,雖然宏塊加載序列 (例如mb4y0、 mb4yl、 mb4y2、 mb4y3)要求于此時(shí)至少其中一個(gè)塊將 要被加載但不移入過(guò)濾器320,如321所指示。一旦過(guò)濾塊被加載,則過(guò)濾器320實(shí)行分段重疊平滑化,如圖5C 所示。特別情況是,垂直重疊平滑化(V)執(zhí)行在選擇之內(nèi)部垂直邊緣 301、 302。接著,水平重疊平滑化(H)執(zhí)行在選擇之內(nèi)部水平邊緣(如 303、 304、 305、 306)。在過(guò)濾塊已部分平滑化后,過(guò)濾器320執(zhí)行分段解塊,如圖5D所 示。第一,執(zhí)行水平環(huán)路內(nèi)解塊(HD)在選擇之8x8塊邊界(如307、 308、 309、 310),接著在選擇之次塊邊界執(zhí)行水平環(huán)路內(nèi)解塊(HDH)(如311、 312、 313、 314)。接著,過(guò)濾器在選擇之8x8塊邊界(如315、 316)執(zhí)行 垂直環(huán)路內(nèi)解塊(VD),接著在選擇之次塊邊界執(zhí)行垂直環(huán)路內(nèi)解塊 (VDH)(如317、 318)。在上述每一平滑化及解塊步驟中,邊界片段(boundary piece)被過(guò)濾 的順序并不重要,因?yàn)檫吔缙沃g并無(wú)相依性。除了圖5C及5D中 所繪示之分段處理之特定順序外,其它順序及/或過(guò)濾步驟亦可根據(jù) 本發(fā)明施行。例如,不同順序之邊界邊緣片段可予過(guò)濾。此外,可有 多于一種類型之平滑化或解塊模式可實(shí)施,且過(guò)濾操作可影響在邊界 的每一邊上多至三個(gè)或更多個(gè)像素,依據(jù)過(guò)濾方法而定。例如MPEG-4 標(biāo)準(zhǔn)使用兩種解塊模式,于一個(gè)模式中施以短過(guò)濾器于塊邊緣的任一 邊之一個(gè)像素,以及于第二模式中施以長(zhǎng)過(guò)濾器于塊邊緣的任一邊之 兩個(gè)像素。于其它施行方式中,可調(diào)適過(guò)濾器定義、不同過(guò)濾器數(shù)目及/或適用過(guò)濾器情形,以符合特定需求。一旦平滑化及解塊過(guò)濾操作結(jié)束,儲(chǔ)存且移動(dòng)經(jīng)處理之過(guò)濾塊,如圖5E所示。特別地,任何完成之塊(如mb0y3、 mb3yl)然后可予輸 出,由于它們已完成。此外, 一個(gè)或多個(gè)部分完成塊(如mb3y3)可移至 暫存存儲(chǔ)器以在當(dāng)處理下方鄰近宏塊(見,如圖3中相關(guān)mb3y3之宏塊 6)時(shí)之后續(xù)使用。然后可將過(guò)濾器中任何剩余部分完成塊(如mbly2、 mb4y0、 mb4y2)在該過(guò)濾器中移動(dòng)以讓出空間給新數(shù)據(jù)。輸出的結(jié)果、 儲(chǔ)存及移動(dòng)步驟系如圖5F所示。過(guò)濾器320現(xiàn)在可用新數(shù)據(jù)塊填滿,如圖5G所示。特別地,部分 完成塊(如mbly3)系自暫存存儲(chǔ)器提取且加載過(guò)濾器。此外,自目前宏 塊(如mb4)之剩余塊(如mb4yl、 mb4y3)加載過(guò)濾器320。一旦加載過(guò)濾塊,過(guò)濾器320執(zhí)行分段重疊平滑化,如圖5H所示。 此外,垂直重疊平滑化(V1、 V2)在所選擇內(nèi)部垂直邊緣執(zhí)行。接著, 水平重疊平滑化(H1、 H2、 H3、 H4)在所選擇內(nèi)部水平邊緣執(zhí)行。在過(guò)濾塊部分平滑化后,過(guò)濾器320執(zhí)行分段解塊,如圖5I所示。 首先,水平環(huán)路內(nèi)解塊(HD1、 HD2、 HD3、 HD4)執(zhí)行于選擇之8x8塊 邊界上,接著在選擇之次塊邊界(HDH1、 HDH2、 HDH3、 HDH4)執(zhí)行 水平環(huán)路內(nèi)解塊。下一步,濾波器于選擇之8x8塊邊界上執(zhí)行垂直環(huán) 路內(nèi)解塊(VD1、 VD2),接著在選擇之次塊邊界執(zhí)行垂直環(huán)路內(nèi)解塊 (VDH1、 VDH2)。一旦平滑化及解塊過(guò)濾操作結(jié)束,經(jīng)處理之過(guò)濾塊儲(chǔ)存且移動(dòng), 如圖5J所示。特別地,可輸出任何完成之過(guò)濾塊(如mbly2、 mb4y0), 由于它們己完成。此外, 一個(gè)或多個(gè)部分完成塊(如mb4y2)可移至?xí)捍?存儲(chǔ)器以在當(dāng)處理下方鄰接宏塊時(shí)之后續(xù)使用。然后可將該過(guò)濾器中 任何剩余之部分完成塊(如mbly3、 mb4yl、 mb4y4)在該過(guò)濾器中移動(dòng) 以讓出空間給新數(shù)據(jù)。輸出的結(jié)果、儲(chǔ)存及移動(dòng)步驟系如圖5K所示, 其正對(duì)應(yīng)于圖5A所繪示之初始過(guò)濾器狀態(tài)。結(jié)果,圖5A至5K繪示 之序列步驟可重復(fù)持續(xù)過(guò)濾該等過(guò)濾塊,包括下一個(gè)宏塊(如宏塊5或 mb5)。參考圖6A至6F,繪示本發(fā)明之例示實(shí)施例,顯示如何以WMV9 平滑化及解塊流程可以分段處理技術(shù)施行于宏塊中之Cb或Cr塊。由
于Cb與Cr宏塊相類似,故實(shí)施例以參考確認(rèn)指示巻標(biāo)為Cb(x,y)之目 前Cb宏塊而提供。過(guò)濾處理的起始點(diǎn)繪示于圖6A,其中過(guò)濾器420 已加載已經(jīng)重疊平滑化(如橢圓形指示422)及解塊(見,如線指示423) 之部分處理之塊(如Cb(x-l,y-l)和Cb(x-l,y))。過(guò)濾器420接著以其它塊填滿,如圖6B所示。特別是部分完成塊 (如Cb(x,y-l))從暫存存儲(chǔ)器提取且加載過(guò)濾器。此外,來(lái)自目前宏塊之 塊(如Cb(x,y))加載過(guò)濾器420。 一旦加載過(guò)濾器塊,過(guò)濾器420實(shí)行分 段重疊平滑化,如圖6C所示。特別地,垂直重疊平滑化(V)執(zhí)行在選 擇之內(nèi)部垂直邊緣。接著,水平重疊平滑化(H1、 H2)執(zhí)行在選擇之內(nèi) 部水平邊緣。在過(guò)濾塊已部分平滑化之后,過(guò)濾器420執(zhí)行分段解塊,如圖6D 所示。首先,在選擇之8x8塊邊界執(zhí)行水平環(huán)路內(nèi)解塊(HDl、 HD2), 接著在選擇之次塊邊界執(zhí)行水平環(huán)路內(nèi)解塊(HDH1、 HDH2)。接著, 過(guò)濾器在選擇之8x8塊邊界執(zhí)行垂直環(huán)路內(nèi)解塊(VD),接著在選擇之 次塊邊界執(zhí)行垂直環(huán)路內(nèi)解塊(VDH)。一旦平滑化及解塊過(guò)濾操作結(jié)束,則經(jīng)處理之過(guò)濾塊予以儲(chǔ)存且 移動(dòng),如圖6E所示。特別地,可輸出完成之過(guò)濾塊(如Cb(x-l,y-l)), 由于其已完成。此外,部分完成塊(如Cb(x-l,y))可移至?xí)捍娲鎯?chǔ)器以在 當(dāng)處理下方鄰接宏塊時(shí)之后續(xù)使用。然后可將該過(guò)濾器中任何剩余之 部分完成塊(如Cb(x,y-l)、 Cb(x,y))在該過(guò)濾器中移動(dòng)以讓出空間給新 數(shù)據(jù)。輸出的結(jié)果儲(chǔ)存及移動(dòng)步驟系如圖6F所示,其正對(duì)應(yīng)于圖6A 所繪示之初始過(guò)濾器狀態(tài)。結(jié)果,圖6A至6F繪示之序列步驟可以重 復(fù)以過(guò)濾下一個(gè)宏塊。從前述可知,藉由提供小型暫存存儲(chǔ)器在硬件譯碼器單元中,環(huán) 路內(nèi)過(guò)濾器可暫時(shí)儲(chǔ)存來(lái)自現(xiàn)用宏塊(標(biāo)示為MB(x,y))之亮度及色度塊 的任何部分完成過(guò)濾結(jié)果在暫存存儲(chǔ)器中。儲(chǔ)存之過(guò)濾結(jié)果可接著用 于處理下一行之鄰接宏塊之諸塊。特別地,當(dāng)過(guò)濾器處理緊鄰下方之 宏塊,即MB(x,y+l)時(shí),對(duì)于MB(x,y)之儲(chǔ)存數(shù)據(jù)自暫存存儲(chǔ)器提取且 用于處理MB(x,y+l)。雖然儲(chǔ)存于暫存存儲(chǔ)器中之部分完成過(guò)路結(jié)果應(yīng)該包括至少8x8 像素?cái)?shù)據(jù),但是在選擇之實(shí)施例中,暫存存儲(chǔ)器亦儲(chǔ)存控制數(shù)據(jù)以判頁(yè)定塊是否需要邊界過(guò)濾。例如,控制數(shù)據(jù)可包括在目前宏塊中之對(duì)六個(gè)塊之每一個(gè)塊的一組標(biāo)頭,包括lmv或4mv之選擇碼、塊地址、幀 中塊位置、mb模式、轉(zhuǎn)換大小、系數(shù)(O或非O)及動(dòng)作向量(兩個(gè)用于 向前之x及y方向,及兩個(gè)用于向后之x及y方向)。數(shù)據(jù)可以允許有 效使用叢發(fā)大小(burst size)的方式封裝(pack)。因?yàn)闀捍娲鎯?chǔ)器的小尺寸,因此存儲(chǔ)器可和視頻加速器設(shè)在同一 芯片上,雖然對(duì)于一般幀尺寸,暫存存儲(chǔ)器可位于不同芯片上,如DDR 存儲(chǔ)器或其它外部存儲(chǔ)器。然而,藉由讓暫存存儲(chǔ)器位于視頻加速硬 件單元101上,而得到增進(jìn)存儲(chǔ)器存取性能。藉由最小化暫存存儲(chǔ)器 的尺寸,相較于包括大型存儲(chǔ)器緩沖器用于儲(chǔ)存整個(gè)幀數(shù)據(jù)塊者,媒 體加速硬件單元的制造成本降低。例如,用于儲(chǔ)存部分完成過(guò)濾結(jié)果 之暫存存儲(chǔ)器,包括控制數(shù)據(jù)及像素?cái)?shù)據(jù),可計(jì)算如下暫存存儲(chǔ)器之尺寸=(576字節(jié))x(幀水平方向宏塊之?dāng)?shù)目)。如前所述,當(dāng)幀尺寸在垂直方向較大時(shí),暫存存儲(chǔ)器的尺寸相對(duì) 較小。換句話說(shuō),暫存存儲(chǔ)器的尺寸相依于水平方向之幀尺寸??闪?解在此描述之分段處理技術(shù)可有利地用于保持整個(gè)幀之大存儲(chǔ)器,此 時(shí)只要在將整個(gè)幀譯碼前,先開始對(duì)第一宏塊過(guò)濾,即可改善過(guò)濾作 業(yè)的速度。然而,使用暫存存儲(chǔ)器提供成本及速度優(yōu)點(diǎn),而使用大型 存儲(chǔ)器以儲(chǔ)存整個(gè)幀為高成本且增加存取耗用時(shí)間。使用暫存存儲(chǔ)器 亦非常符合在過(guò)濾算法中之流水線方式處理。上述之特定實(shí)施例僅為描述性且不用于限制本發(fā)明,本發(fā)明可以 不同但均等方式修飾及實(shí)施,且熟習(xí)該項(xiàng)技術(shù)者可了解此技術(shù)之優(yōu)點(diǎn)。 因此,前面敘述并非用于限制本發(fā)明于特定形式,相反地,其系用于 涵蓋可包括于本發(fā)明精神與范圍之該些變化、修飾及均等物,如所附 權(quán)利要求書所定義,因此熟習(xí)該項(xiàng)技術(shù)者應(yīng)了解他們可進(jìn)行多種變化、 取代及替換而不超過(guò)本發(fā)明最廣泛形式之精神與范圍。
權(quán)利要求
1.一種對(duì)以塊變換處理成多個(gè)宏塊的視頻數(shù)據(jù)譯碼的方法,包括平滑化及解塊在第一宏塊中選擇的像素?cái)?shù)據(jù),以產(chǎn)生至少一個(gè)第一部分過(guò)濾塊及至少一個(gè)第一完成塊;以及將該第一部分過(guò)濾塊儲(chǔ)存于暫存存儲(chǔ)器中,以用于平滑化及解塊在第二宏塊中選擇的像素?cái)?shù)據(jù)。
2. 如權(quán)利要求1所述的方法,還包括從該暫存存儲(chǔ)器提取第二部 分過(guò)濾塊以用于該平滑化及解塊步驟,該第二部分過(guò)濾塊先前已在處 理先前宏塊期間產(chǎn)生。
3. 如權(quán)利要求1所述的方法,其中,由環(huán)路內(nèi)過(guò)濾器執(zhí)行該平滑 化及解塊步驟。
4. 如權(quán)利要求3所述的方法,其中,該環(huán)路內(nèi)過(guò)濾器依序處理在 視頻幀中的宏塊的每一行,以一次重疊平滑化及解塊一個(gè)宏塊。
5. 如權(quán)利要求3所述的方法,其中,該環(huán)路內(nèi)過(guò)濾器以流水線方式依序?qū)Χ鄠€(gè)宏塊執(zhí)行平滑化及解塊。
6. 如權(quán)利要求1所述的方法,包括平滑化及解塊在宏塊的第一行中選擇的像素?cái)?shù)據(jù),以產(chǎn)生多個(gè)部分過(guò)濾塊;以及將該多個(gè)部分過(guò)濾塊儲(chǔ)存在該暫存存儲(chǔ)器中。
7. 如權(quán)利要求6所述的方法,還包括當(dāng)平滑化及解塊在宏塊的第二行中選擇的像素?cái)?shù)據(jù)時(shí),從該暫存存儲(chǔ)器取回第一部分過(guò)濾塊;以及平滑化及解塊在該第一部分過(guò)濾塊中選擇的像素?cái)?shù)據(jù),以完成對(duì) 該第一部分過(guò)濾塊的平滑化及解塊處理,由此產(chǎn)生完成塊。
8. 如權(quán)利要求1所述的方法,其中,該平滑化及解塊步驟包括在 每一宏塊內(nèi)的至少第一塊上分段重疊平滑化及解塊,以便該第一塊在 第一過(guò)濾操作中被部分處理、儲(chǔ)存在該暫存存儲(chǔ)器中以及后續(xù)在第二 過(guò)濾操作中完成處理。
9. 一種在視頻處理系統(tǒng)中用于從壓縮的視頻數(shù)據(jù)流譯碼視頻信息的裝置,該裝置包括部分譯碼該壓縮的視頻數(shù)據(jù)流的處理器,以產(chǎn)生部分譯碼視頻數(shù) 據(jù);以及譯碼該部分譯碼視頻數(shù)據(jù)的視頻譯碼電路,以產(chǎn)生視頻幀,該視 頻譯碼電路包括暫存存儲(chǔ)器及環(huán)路內(nèi)過(guò)濾器,用以依序?qū)υ撘曨l幀中 多個(gè)宏塊執(zhí)行重疊平滑化及環(huán)路內(nèi)解塊的分段處理。
10. 如權(quán)利要求9所述的裝置,其中,該暫存存儲(chǔ)器儲(chǔ)存來(lái)自宏塊 的第一行的部分過(guò)濾塊,使得每一個(gè)部分過(guò)濾塊可由該環(huán)路內(nèi)過(guò)濾器 在重疊平滑化及解塊宏塊的第二行期間被提取。
全文摘要
一種視頻處理裝置及方法以結(jié)合處理器及視頻譯碼硬件塊而實(shí)施,藉由提供具有環(huán)路內(nèi)過(guò)濾器及暫存存儲(chǔ)器之視頻譯碼塊而譯碼視頻數(shù)據(jù),以便環(huán)路內(nèi)過(guò)濾器可有效地以宏塊為基礎(chǔ)之方式實(shí)行重疊平滑化及環(huán)路內(nèi)解塊的分段處理,此方法為比以幀為基礎(chǔ)之方法更有效率之算法。
文檔編號(hào)H04N7/26GK101160971SQ200680002732
公開日2008年4月9日 申請(qǐng)日期2006年1月17日 優(yōu)先權(quán)日2005年1月25日
發(fā)明者B·關(guān), C·金, E·施蘭格, R·羅扎斯 申請(qǐng)人:先進(jìn)微裝置公司