欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

用于快速上下文自適應可變長編碼的h.264解碼方法

文檔序號:7951896閱讀:210來源:國知局
專利名稱:用于快速上下文自適應可變長編碼的h.264解碼方法
技術領域
本發(fā)明涉及用于快速上下文自適應可變長編碼(CAVLC)的H.264解碼方法,更具體的,涉及一種有效快速地查找多個表格以在最短時間段內獲得CAVLC塊的系數(shù)以便可以對于低頻設計高效的解碼器的方法。
背景技術
在超高速互連網(wǎng)時代,采用普通用戶電話線和互連網(wǎng)協(xié)議(IP)網(wǎng)絡的視頻點播(VOD)系統(tǒng)正在被使用。在高清晰度電視(HDTV)的情況下,測試業(yè)務以4Mbps到6Mbps的速率執(zhí)行。考慮到19.3Mbps的HDTV廣播的傳輸容量,通信網(wǎng)絡的限制隨著26Mbps VDSL的普及正在消失。
近來,不嚴格相互區(qū)分廣播和通信的數(shù)字多媒體廣播(DMB)已經(jīng)引起關注。DMB成為一種能夠最快且廉價地提供高速寬帶多媒體信息業(yè)務的媒體。
H.264編碼方法主要分為上下文自適應可變長編碼(CAVLC)和基于上下文的自適應二進制算術編碼(CABAC)。目前,H.264基線(Baseline)和X協(xié)議(profile)使用CAVLC,主類協(xié)議則使用CAVLC和CABAC兩種。
CAVLC可以通過4個步驟得到系數(shù)。第一步驟獲得尾隨1(trailingones)Tls和總系數(shù)(total coefficient)以估計4×4塊的形式,第二步驟獲得級(level)值。第三步驟獲得全部零(total zero)的值,第四步驟獲得Run_before以獲得真實的系數(shù)。
圖1表示了關于傳統(tǒng)H.264的Num-VLC0的表格。執(zhí)行CAVLC時,CAVLC的第一步驟需要大量的計算。為了在第一步驟中獲得尾隨1Tls和總系數(shù),將輸入比特流與該表格進行比較以查找與該輸入比特流相對應的表格中的位置。在H.264中,總共有4個用于獲得尾隨1Tls和總系數(shù)的表格,圖1所示表格是其中的一個。
當使用軟件或者通用CAVLC硬件來進行CAVLC處理時,參數(shù)應通過如下示例來提取。
假設比特流“00000000011100.....”被輸入到解碼器中。如果圖1的表格是從H.264標準中的用于獲得總系數(shù)的表格中選出的(表格是基于相鄰宏塊的總系數(shù)的數(shù)目而選出的),則圖1的表格總共有62個比特流。將輸入比特流與圖1表格中的比特流進行比較。當在軟件處理過程中在逐比特地對輸入比特流進行移位的同時,將輸入比特流與該表格的比特流進行比較時,即便在硬件處理過程中也需要大量的比較。一種進一步改進的方法是對輸入比特流中的‘0’的數(shù)目進行計數(shù),掌握前導零的數(shù)目(在前述例子的情況下有9個),從而從圖1表格中查找具有與所掌握的前導零數(shù)目相同數(shù)目的前導零的比特流。找到多個比特流。對所找到的比特流中的除了‘0’之外的剩余比特進行匹配(accord),以在匹配所得值的位置處獲得尾隨1Tls和總系數(shù)。
為掌握‘0’的數(shù)目,‘0’被連續(xù)計數(shù)直到在按規(guī)則移位時出現(xiàn)了比特‘1’。從而,需要較長時間來掌握‘0’的總數(shù),并且在表格中搜索‘0’需要大量的計算和時間。如上所述,當使用傳統(tǒng)方法進行表格搜索和模式匹配時,需要大量的計算和時間,從而需要提高H.264解碼器的性能。

發(fā)明內容
因此,做出本發(fā)明來解決前述技術中出現(xiàn)的問題,本發(fā)明的目的是提供一種快速有效的搜索多個表格以在最短時間內獲得CAVLC塊的系數(shù)從而對于低頻設計高效解碼器的方法。
為實現(xiàn)上述目標,根據(jù)本發(fā)明,提供了一種用于快速CAVLC的H.264解碼方法,包括第一步驟,獲得包含第一個輸入的比特‘0’到第一個出現(xiàn)的比特‘1’之前的比特‘0’的‘0’的數(shù)目以獲得行索引值;第二步驟,獲得指示第一個比特‘1’的定位索引(fix index);第三步驟,獲得指示除了行索引和定位索引之外的比特流的列索引;第四步驟,獲得與行索引值和列索引值對應的總系數(shù)和尾隨1Tls。


本發(fā)明的上述和其它目標、特征和優(yōu)點在結合附圖的本發(fā)明的優(yōu)選實施例的詳細描述中顯而易見,圖中圖1是關于傳統(tǒng)H.264的Num-VLC0的表格;圖2例示了根據(jù)本發(fā)明的快速CAVLC流結構;圖3是根據(jù)本發(fā)明的快速搜索Num-VLC0表格;圖4例示了根據(jù)本發(fā)明的獲得前導零的示例;圖5是根據(jù)本發(fā)明的為了進行快速CAVLC而通過修改圖1的表格獲得的表格;圖6是根據(jù)本發(fā)明的關于H.264的Num-VLC1的表格;圖7是根據(jù)本發(fā)明的為了執(zhí)行快速CAVLC而通過修改圖6的表格獲得的表格;圖8是根據(jù)本發(fā)明的H.264的Num-VLC2的表格;圖9根據(jù)本發(fā)明的為了進行快速CAVLC而通過修改圖8中的表格獲得的表格;圖10是根據(jù)本發(fā)明的H.264的ChromaDC Num-VCL的表格;圖11是根據(jù)本發(fā)明的為了實現(xiàn)快速CAVLC而通過修改圖10的表格獲得的表格;以及圖12是根據(jù)本發(fā)明的用于獲得總系數(shù)和尾隨1Tls的框圖。
具體實施例方式
下面將參照附圖詳細描述本發(fā)明的優(yōu)選實施例。
圖2例示了根據(jù)本發(fā)明的快速CAVLC流結構。圖2是通過分析H.264CAVLC的輸入比特流而得到的。本發(fā)明使用圖2所示的H.264 CAVLC的輸入比特流將圖1所示的用于獲得總系數(shù)和尾隨1 Tls的表格修改成圖5所示的表格。下面解釋用于執(zhí)行快速CAVLC的輸入比特流形式和快速表格。
圖3例示了根據(jù)本發(fā)明的快速搜索Num-VLC0表格。輸入比特流包括行索引、定位索引和列索引。行索引指示包括第一個輸入的比特‘0’到第一個出現(xiàn)的比特‘1’之前的比特‘0’的比特流。行索引的值被定義為第一個‘1’之前出現(xiàn)的‘0’的數(shù)目。參考圖1,第一定位索引在包含‘0’的比特流中包含至少一個‘1’。除了這些比特流,圖1表格中的剩余比特流由一個比特組成。就是說,所有H.264 CAVLC輸入比特流包含至少一個‘1’。
列索引指示除了行索引和定位索引之外的比特流。根據(jù)上述構造,圖1的表格可以被修改為圖3和圖5的表格。
在圖3的表格中,基于圖1的表格、與前導零的數(shù)目(包括第一個比特‘0’到第一個‘1’之前的比特‘0’的‘0’的數(shù)目)對應地布置除了行索引外可以獲得的所有比特流。假設根據(jù)行索引的前導零的數(shù)目是11,則除了行索引外的定位索引和列索引的比特流包括總共8個比特流(‘1000’,‘1001’,‘1010’,‘1011’,‘1100’,‘1101’,‘1110’和‘1111’)。這可以通過當前導零的值是11時跟蹤這個值來獲知。圖3表示了根據(jù)前導零的全部8比特流。
更具體的,每個8比特流的第一個比特是總為‘1’的定位索引,剩余的比特依次具有從‘0’到‘7’的值。依次的這些值對應于圖4的列索引。從而,在圖5中,行索引值變成前導零的值,列索引值對應于除了前導零和定位索引外的值。參考圖5所示的行索引和列索引的位置的表格,存在總系數(shù)和尾隨1Tls,并且使用它們進行CAVLC。
例如,對于輸入比特流‘0000011101......’獲得總系數(shù)和尾隨1Tls。首先,獲得前導零的數(shù)目。在本例中,前導零的數(shù)目是5。當前導零的數(shù)目是5時,在比特流中有3個后續(xù)比特。在本例中,這三個比特是‘111’。當定位索引‘1’被從比特流‘111’刪除后,得到‘11’。從而,在圖4中,行索引值變成與前導零數(shù)目對應的‘5’,列索引值變?yōu)椤?’,由此在圖5中,總系數(shù)變成‘2’,尾隨1Tls變成‘0’。
圖4例示了根據(jù)本發(fā)明的獲得前導零的示例。當執(zhí)行H.264解碼時,CAVLC處理塊需要比其他H.264塊(IDCT,INTRA預測等)更長的處理時間。因此,為了提高H.264解碼性能,更為有效的是使該H.264解碼器在短時間內獲得CAVLC結果,即使H.264解碼器的硬件復雜性稍微增加。獲得前導零就是獲得圖3的行索引值。獲得前導零的一種通用方法是判斷輸入比特流的第一比特是‘0’還是‘1’,對比特流進行移位,判斷下一比特是‘0’還是‘1’。參考圖1,前導零值最大為15比特。相應地,在本發(fā)明中得到輸入比特流的第一比特到第十五比特的前導零。下面解釋一種對于不同表格選擇具有最大比特數(shù)目的比特流的方法。
圖5是根據(jù)本發(fā)明的為了執(zhí)行快速CAVLC而通過修改圖1的表格獲得的表格,圖6是根據(jù)本發(fā)明的關于H.264的Num-VLC1的表格。圖7是根據(jù)本發(fā)明的為了執(zhí)行快速CAVLC而通過修改圖6的表格獲得的表格,圖8是根據(jù)本發(fā)明的H.264的Num-VLC2的表格。圖9是根據(jù)本發(fā)明的為了執(zhí)行快速CAVLC而通過修改圖8的表格獲得的表格,而圖10是根據(jù)本發(fā)明的H.264的ChromaDC Num-VCL的表格。圖11是根據(jù)本發(fā)明的為了執(zhí)行快速CAVLC而通過修改圖10的表格獲得的表格。
圖5、7、9、11中的行索引的最終值指示相應表格可能具有的前導零的最大值。圖5中的前導零的最大值是14,圖7中是12,圖9中是9,圖11中是7。圖5、7、9、11中的哪個表格被選中是由正在執(zhí)行CAVLC的宏塊的數(shù)目以及這些宏塊左側的宏塊數(shù)目決定的。因此,在圖5的情況下輸入比特流的最大比特數(shù)目是15,圖7是13,圖9中10,圖11中8。根據(jù)最大比特數(shù)目,如下得到前導零。
例如,參考圖5,15個比特(第0比特到第14比特)被分為兩個比特流。第一比特流包括第0比特到第7比特,第二比特流包括第8比特到第14比特。然后,得到第0比特到第7比特的和,或者判斷第0比特到第7比特的每一個是否大于‘0’。此外,得到第8比特到第14比特的和,或者判斷第8比特到第14比特的每一個是否大于‘0’。如果第0比特到第7比特的和大于‘0’或者判斷出有一個比特大于‘0’,則第一比特流包括‘1’,從而從第一比特流中獲得前導零。就是說,第8到第14比特被忽略掉。如果第0比特到第7比特的和等于‘0’,或者判定出第0比特到第7比特都等于‘0’,則前導零將從第二比特流中得到。當如上所述對一個比特流進行判定時,該處理被分為兩個相同的步驟,這兩個步驟被如圖4所示按順序執(zhí)行以獲得前導零。
圖12是根據(jù)本發(fā)明的用于獲得總系數(shù)和尾隨1Tls的框圖。當前輸入的比特流被分割為前導零塊、定位索引塊和列索引塊。圖5、7、9、11的表格被分別分配到作為內部存儲器的ROM表格,并存儲在其中。行索引和列索引是通過使用比特流的結果值而獲得的,并被放在ROM表格中,以獲得總系數(shù)和尾隨1Tls。
如上所述,根據(jù)本發(fā)明的用于快速CAVLC的H.264解碼方法可以使計算每個塊計算所需要的時間和硬件復雜性最小化,以獲得低頻下的最大性能。此外,本發(fā)明修改已存在的表格,并把輸入比特流分割成多個有意義的比特流,以使H.264解碼器的性能最優(yōu),從而使CAVLC計算時間最少。
盡管參照具體的例示性實施例描述了本發(fā)明,但是本發(fā)明并不被這些實施例所限制,而僅僅被所附權利要求所限制。很顯然,本領域技術人員可以在不脫離本發(fā)明范圍和主旨的情況下改變或修改這些實施例。
權利要求
1.一種用于快速上下文自適應可變長編碼的H.264解碼方法,包括第一步驟,獲得包含第一個輸入的比特‘0’到第一個出現(xiàn)的比特‘1’之前的比特‘0’的‘0’的數(shù)目,以獲得行索引值;第二步驟,獲得指示第一個比特‘1’的定位索引;第三步驟,獲得指示除了所述行索引和定位索引之外的比特流的列索引;以及第四步驟,獲得與所述行索引值和所述列索引值對應的總系數(shù)和尾隨1 Tls。
2.根據(jù)權利要求1所述的H.264解碼方法,其中所述第一步驟包括步驟A,判斷第一比特是否為‘0’;步驟B,當在所述步驟A中第一比特不是‘0’時判定行索引值為‘0’,而當?shù)谝槐忍厥恰?’時移位到第二比特;步驟C,判斷在所述步驟B中第二比特是否為‘0’;步驟D,當在步驟C中第二比特不是‘0’時判定行索引值為‘1’,而當?shù)诙忍貫椤?’時移位到第三比特;以及步驟E,重復執(zhí)行以上步驟,從而當?shù)趎比特不是‘0’時判定行索引值是n-1,而當?shù)趎比特是‘0’時移位到第(n+1)比特。
3.根據(jù)權利要求1所述的H.264解碼方法,其中在所述第一步驟中,所述輸入比特流被分為最多15個比特,這15個比特被分組為兩個比特流以獲得‘0’的數(shù)目。
4.根據(jù)權利要求1所述的H.264解碼方法,其中在所述第一步驟中,所述輸入比特流被分為最多13個比特,這13個比特被分組為兩個比特流以獲得‘0’的數(shù)目。
5.根據(jù)權利要求1所述的H.264解碼方法,其中在所述第一步驟中,所述輸入比特流被分為最多10個比特,這10個比特被分組為兩個比特流以獲得‘0’的數(shù)目。
6.根據(jù)權利要求1所述的H.264解碼方法,其中在所述第一步驟中,所述輸入比特流被分為最多8個比特,這8個比特被分組為兩個比特流以獲得‘0’的數(shù)目。
7.根據(jù)權利要求3到6中任一項所述的H.264解碼方法,其中通過獲得所述兩個比特流每個的和來獲得‘0’的數(shù)目。
8.根據(jù)權利要求3到6中任一項所述的H.264解碼方法,其中通過將所述兩個比特流中的每一個與‘0’進行比較來獲得‘0’的數(shù)目。
全文摘要
本發(fā)明提供了一種用于快速上下文自適應可變長編碼(CAVLC)的H.264解碼方法,該方法有效快速地搜索多個表格,以在最短時間內獲得上下文自適應可變長編碼塊的系數(shù),以便可以對于低頻設計高效的解碼器。用于快速上下文自適應可變長編碼的H.264解碼方法包括第一步驟,獲得包含第一個輸入的比特‘0’到第一個出現(xiàn)的比特‘1’之前的比特‘0’的‘0’的數(shù)目以獲得行索引值;第二步驟,獲得指示第一個比特‘1’的定位索引;第三步驟,獲得指示除了行索引和定位索引之外的比特流的列索引;以及第四步驟,獲得與行索引值和列索引值對應的總系數(shù)和尾隨l T1s。
文檔編號H04N7/26GK1913638SQ200610002800
公開日2007年2月14日 申請日期2006年1月28日 優(yōu)先權日2005年8月9日
發(fā)明者姜海龍 申請人:C&S技術有限公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1
淅川县| 屏东县| 达州市| 保山市| 新巴尔虎右旗| 罗源县| 府谷县| 惠水县| 玉门市| 宁都县| 汉源县| 泰来县| 启东市| 城口县| 韶关市| 凌海市| 清徐县| 沛县| 厦门市| 五大连池市| 韶关市| 韶山市| 西贡区| 南投市| 天全县| 奉节县| 常熟市| 荃湾区| 南川市| 无为县| 沁源县| 缙云县| 铁力市| 花莲市| 海南省| 侯马市| 丰镇市| 安塞县| 迭部县| 宜丰县| 北安市|