TWI380603B - Decoding variable length codes in jpeg applications - Google Patents

Decoding variable length codes in jpeg applications Download PDF

Info

Publication number
TWI380603B
TWI380603B TW097134621A TW97134621A TWI380603B TW I380603 B TWI380603 B TW I380603B TW 097134621 A TW097134621 A TW 097134621A TW 97134621 A TW97134621 A TW 97134621A TW I380603 B TWI380603 B TW I380603B
Authority
TW
Taiwan
Prior art keywords
group
huffman
symbol
value
bit stream
Prior art date
Application number
TW097134621A
Other languages
English (en)
Other versions
TW200917672A (en
Inventor
Jia Wei
Original Assignee
Nvidia Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Nvidia Corp filed Critical Nvidia Corp
Publication of TW200917672A publication Critical patent/TW200917672A/zh
Application granted granted Critical
Publication of TWI380603B publication Critical patent/TWI380603B/zh

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/70Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by syntax aspects related to video coding, e.g. related to compression standards
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N1/00Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
    • H04N1/41Bandwidth or redundancy reduction
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M7/00Conversion of a code where information is represented by a given sequence or number of digits to a code where the same, similar or subset of information is represented by a different sequence or number of digits
    • H03M7/30Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction
    • H03M7/40Conversion to or from variable length codes, e.g. Shannon-Fano code, Huffman code, Morse code
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/44Decoders specially adapted therefor, e.g. video decoders which are asymmetric with respect to the encoder
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/60Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
    • H04N19/625Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding using discrete cosine transform [DCT]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/90Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using coding techniques not provided for in groups H04N19/10-H04N19/85, e.g. fractals
    • H04N19/91Entropy coding, e.g. variable length coding [VLC] or arithmetic coding

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Physics & Mathematics (AREA)
  • Discrete Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Compression Of Band Width Or Redundancy In Fax (AREA)

Description

1380603 九、發明說明: 【發明所屬之技術領域】 =明之具體實施麵於驗解觸合照相專 Joint Photographic Experts Group”)影像檔案中可變長度碼。 【先前技術】 在運算應用當中,可變長度編碼(VLC: ‘ codmg”)編碼方式可允許無損失的資料壓’ ^ 登別是在雜應用中,例如影像、音樂及視訊,“的 貝汛將比一壓縮的版本會需要更多的儲存空間。 ,’、、 種VLC編碼方式為Huffman編碼,Huffman锒踩盔 資料相當有效率的方法,特別是當魏 Ϊίίίίΐΐϊ的HUffi樹,其藉由使用在該來源内容内 決疋在Huffman樹令每個符號數值必須出現在 二二/fman編碼亦有—優點,其中可產生無字首碼,有時 ’、稱之為字首碼;也就是說,在一 Huffman 將 不會對應到由該Huff_樹所產生的任何其它f號生之的^虎將 静ΪΪΓ”量用於媒體應用當中,特別是在见郎影 Ϊ!田ΐί式中。母一個卿使用Huffinan編碼來壓縮資料, 斤Ϊϊίί ’每個觀*器必須處理該Huffinan編碼來解 速卿觀視器處理Huffinan編碼越有效率,則解
—^PEG標準允許每一個影像有不同的Huffinan表格。其決 影像中每一個數值的發生頻率,且那些頻率係用於fG 唯一的Hu£fman表格。因此,為了一觀視器可解碼」 G衫像,重構該Huffman表格所需要的資訊 案本身當巾,做為鄉雜部份。 ^ 6 I380603 【發明内容】 本發明揭示一種解碼JPEG影像中Huffman符號的方法。 一種方法包含解碼在一 JPEG檔案中Huffman碼的方法。此 ,包含自關聯於言亥JPEG影像槽案的位元流取得一位元流樣 ^。該,το流樣本係她於—臨界值,以識別—歸_群組 ,碼。/、取得關聯於一 Huffinan群組的資訊,並用於自該位元 ^擷取目HUff_符號。絲使用目前拖版如符號及 该群组資訊即可得到一相對應符號值。 你狄ϊί提出一種方法’其中使用一系統來解碼在一 PEG影 =檔案中的Huffinan碼。該系統包括—控㈣模组,用於對於 該JPEG影像檔案執行作業。其使用一祕職表格產生器來 =包括在該JPEG影像檔案中的資訊產生-基本表格及一次要 二織使用—位元流緩衝11來儲存自包括在該JPEG影像 影像ί料摘錄的資料,並使用一些臨界值比較器來識 ,Vi#目則Huffman符號的一 Huffman群組。該控制器 5可=取得關聯於該Huffinan群組的群組資訊並使用該^ 、、且貧訊來取得對應於时Huffman符號的符號值。 姐从另—種方法描述解碼在一1^檔案中Hu馳η可變長度 碼=法。此方法&含掃描來自關聯於該影像槽案之位 二二H立疋到一位元流緩衝器中。識別對應於一目前 的—祕麵群組,並由一基本表格取得關聯於 ,Huffman群組之群組資訊。目前Huffman符號之符號值係 參照該群組資訊由一次要表格取得。 【實施方式】 細參照本發明之數種具體實關。本發明將配合 s二=例綱,其將可瞭朗它們麟要關本發明到 逆〜、體實施例。相反地,本發明係要涵蓋其它選項 、修正及 7 1380603 ' » 鍋晴料__嫩本發明的精 完整2==;:;=:張標的的 瞭解^實^可不制_敎㈣ =在其它實例中,並未詳細說明熟知的方法 以免不必要地混淆所主張標的的態樣及特徵 然其步驟及其順序係以描述此方法之作 ί第五_标’這些步驟及順序為示 ,好地適用於執行多種其它步驟及與此處圖以mu 婦驟之變化,且可以與此處所述及說明的為=順 ,詳細說明的一些部份係以程序、步驟、邏輯 二及其,可錢腦記憶體上執行對於資料位二處二 表不。廷些說明及表示為熟知該項技藝之專旒 ”用的方法來最佳地傳遞他們的 ,方塊及辦等,其應視為可❹謝 n相:致順序。該等步驟為那些需要實_量的實3: 夠被儲存、轉換、組合、比較,及另可在其能 其已隨時_社要為了通常躲地中 蝴位元、數值、♦符號、字元、術語、數^ 拉躲_術語係要關聯 田貝〒$ ’並僅為應關這些數量的便 = 以下討論中可瞭解者之外特定地陳述,其將可瞭解在 論中利用的術語,例如「存取」、「寫入」、「包 8 1380603 Ϊ類皆代表-電腦系統 該電腦系統之暫存器及記憶體内換表示成 類似地表不成在電腦系統記憶體、或 )=貝料成為 錯顯示裝置内的實體數量之像是資訊 腦可讀取媒體可為任;媒體之型式。電 (但非限制)電腦可讀取媒體可媒體。例如 體,I儲存媒體包括揮發性盘非媒體與通信媒 取指令、資料社權、#法成技術,例如電腦可讀 (但不限二構資料:電腦储存媒趙包括 憶體技術、CD.R〇M、數位多功、或其它記 =1 或奸絲_、雜卡11、磁 ===其r體,其可用於儲存 ,結構、程式模組或其它在—調變的#料信號 皮或其它輸送機制’並包括任何資訊傳遞媒b體。「調 二J謝其一或多項特性為利用方;設定或 :是有線網路或直接線路連接,以及無線媒 人f像,ΐ波 紅外線及其它無線舰。任何上述的组 口亦必須包含在電腦可讀取媒體的範疇内。 ^ 一些具體實施例可描述成電腦可執行指令的一般性文 U如ΐί模組,其可由—或多部電腦或其它裝置來執行。 甘5 4 i程式模組包括例式 '程式、物件、組件、資料結構等,
/、可執行特定工作或實施特定的摘要資料型別。基本上該等 程式模組的功能性在多種具體實施例中可視需要組合或分^文。 雖然此處所述之具體實施例可以參照到一 CPU及一 GPU 9 1380603 成為一電腦系統的分散組件,熟知該技藝專 一 cm及-GPU可磐料卜單—=專且*_人;^可瞭解到 Ιί享多觀源’例如指令邏輯、緩衝11、功能性單. 或獨立的資源可提供做為圖形及泛用性作業I早 所有的電路及/或功能性係關聯於 在適當配置的CPU中,或由其執行。 /、亦了只她 再者,當此處所述的具體實施例可參照 =解到此處所述的電路及/或功能性亦可實施在種类員的 =器,例如泛用性或其它特殊目的共同處理器,或在種=
基本運算系統 ㈣現ίίί照第—圖,所示為—示例性電腦系統112的-方 塊圖。其要轉到此處所述的電腦系統112例示 rt敗ίΐ ’其亡可較佳地實施具體實施例。然而,具有ΐ同 ,·且Κ、它電腦系統亦可在本發明的鱗内
統Π2。也就是說,電腦系統112除了那些配合第一== 夕卜的元件再者’具體實施例可實施在任何經組態成可以執 的系統’非僅是類似電腦系統112的電腦系統。其要瞭 體實施例可實施在許多不同類型的電腦祕112。^統出可 實施成例如-桌上型電腦系統、或具有輕合至—專用圖形取現 GPU之強有力的泛用型CPU的飼服器電腦系統。在這種具 實施例中,組件可包括加人周賴赌、特殊化音訊/視訊电 件、輸入/輸出裝置及類似者。 、 類似地,系統112可實施成一掌上型裝置(例如行動電話 等)、或一機上視訊遊戲主機裝置,例如像是美國華盛頓州 Redmond市的微軟公司所提供的Xb〇xTM,或是日本東京的新 力電月a娛樂公司所出品的PlayStation3TM。系統Π2亦可實施 成「晶片上系統」,其中一運算裝置的電子(如組件101、1〇3、 1(|5及類似者)將整個包含在—單一積體電路晶片内。範 二;S器的掌上型裝置、汽車導航系統、-攜帶 .電巧統112包含—位址/資料匯流排獅,用於傳遞資 =,.二中央處理器101,其耦合於匯流排100來處理資訊及指 ^,揮發性記憶體單元1〇2(例如隨機存取記憶體(r^, access mem〇ry”)、靜態丽、動態_等),其耦 儲存中央處理11 1〇1之資訊及指令;及一非 揮發^fe體單兀ι〇3(例如唯讀記憶體讲⑽,崎 之靜態資訊及指令。再者,電财統ιΐ2亦 〇 3貝料儲存裝置1〇4(例如硬碟機),用於儲存資訊 文數含一選擇性圖形子系統105、-選擇性 可傳遞資訊及命令選擇到中央處理,置1G6 及命令選擇到中央處理器用者輪入貝訊 置扉’其·至匯流排10。,以入,, ^亦可包括無線通訊機制。使用通訊介面⑽, 可通汛式地耦合至在一通訊網路上i 1、、、· 112村包含圖形子系統奶,用於ίί-ΐ 讯到該電腦使用者,例如藉由在由 =於王現貧 屬顯示裝置m上顯示資訊。以體=^ 統1〇5係加入到中央處理H 1〇1巾。在1歸圖形子系 形子系統W5為一獨立分散組件!:中,圖 子系統奶係用其它方式包括在系、统„2中體貧⑽中,圖形 1380603 · * 鹰 JPEG應用中有效率的VLC處理 “在以f的具體實施例巾’所述為—種方式來在影像 硯視應用中有效率地處理可變長度編碼(VLC),特別是
Huffman編碼。在一具體實施例中,所述為一種處理在一 影像中Huffinan編碼的方法’其中包含有效率地自一见£()位 =流中醜-VLC符號’並職VLC魏匹配於其相對應 號值。
此處所述的數個具體實施例利用了該JPEG檔案格式之數 個特徵’以及其相對應的Huffman表格的用途。首先,一 jpEG 影像所允許的最大長度Huffman碼為16位元。其次,每一個 JPEG影像使用的Huffman表格定義16個Huffinan群植,A =-群組由該群組内符號的長度所絲;例如第—群組包含^ j 1 =的符號,第二群組包含長度為2位元的符號,依此 類推’取夕到第16個群組,其包含長度為16位元的符號。第 二,如前所述,Huffman碼為無字首碼。第四,在每個Huffman 群組内,碼值為連續,用這婦徵可允許有效率的方式來處 理Huffman編碼。
示例性Huffman碼 當戎JPEG標準允許每個影像有其本身唯一計算的 Huffman表格,由jpEG協會提供數個「典型」表格。這種典 型表格為由下表1中所述之陣列所指定的1)(:亮度表林。” -——--—I_ 表1 dcjuminance_bits[]= { 0,1, 5, 1, 1, 1,1, j, ι, 0> 0> 〇, 〇, 0> 〇 〇 } Q in __ 第一陣列dc—luminance一bits[]指示Huffman碼如何在相對 應表格中指定,其藉由指明在每個jpEG使用的丨6個Huffman 12 群組中出現多少符號。在此表格中,對應於長度為2及9位元 之間的符號,僅有2到9之群組具有登錄項。群組3,由長度 為3位元的符號構成,其具有5個符號;其餘者每一個為1位 元。群組1及10-16係定義成每一個具有零個登錄項。 第二陣列dc—luminance_val[]提供關聯於該等符號之數 值其順序為它們被指定的順序。在此表中,〇係關聯於第一 符號’ 1關聯於第二符號,依此類推。 ,在请參照第二圖,其提供一示例性1111厅111肪表格2〇〇。 如所不’Huffman表格200對應於由表1定義的DC亮度表格。 ,方攔包含由dcjuminance—bits[]陣列所指定的Huffman符 號,即符號 2(Π、203、205、207、209、211 ' 213、215、217、 η? j2!及223。右方攔包含由dC-lUminailCe—Val□陣列關聯 於及荨付號的數值,符號數值202、2〇4、206、208、210、212、 a、216 218、220、222 及 224。如前所述,Huffman 碼為 :子首碼,當以左方調整來描述時,如第二圖所述,其很容易 看出並無符號相同於其它符號的字首;例如符號2〇1為〇〇, 且無其它符號以〇〇開始。 JPEG檔案格式 德播ΐ在赫照*三圖’所㈣根據-題實關之1影 300。如所示’ jpEG影像檔案3〇〇包含兩個段落一標 推,及影像資料320。標頭310包括解碼包含在1PEG影 影像所需要的資訊,而影像資料320包括實際 旦4°例如’標頭310可包括一初始序列,識別见邱 ίί ^Ϊ Γ為—咖影像樓案,以及包含腿影像樓案 之Huffman表格資訊之段落,例如表丨所示的陣列。 f 示L影像資料320包含壓縮符號資料的位元流。此位 例中生摘錄為位卞流摘錄325,在所述的具體實施 J中位疋痛錄325由數個VLC符號構成而串連在一起,例 1380603 · 如符號33卜333及335。因為該等符號在長度上為可變盆 需要一 JPEG觀視器辨識每個完整符號,而不管長度。八 傳統方式 處理JPEG f彡像_巾的Huffman碼之常見的先前技蔽方 ^包含自触元流讀人數個位元,通常是3她元,並比較那 ς位7L與儲存在記憶财的表格。如果那些位元構成一完整符 说,該表格即會如此表示,並提供關聯於該符號的數值。如 那些位元並非-完整符號,該表格亦會如此表示,並包括一參 :¾到另-個表格。其它位元將自該位元流讀取,且第二表格以 相同可能的結果參照。此種重覆的迴圈循環從處理時間、 記憶體存取及記憶體使用的角度而言是沒有效率的,其 大多數不重要案例的多個表格。 基本表格及次要表格 以下的具體實施例描述對於jpEG影像更有效 Huffman解碼的方法。此方法的—雜表 ,使用來更有效率地利用記憶體。對於大多數不 =用基本及次要表格以記憶體使用的肖度㈣代表^ f 請//11四圖’所示為根據—具體實施例的一基本表格 。土本表格400由以上在表丨中所示之〇(:亮度「
表格資訊來取得。基本表格糊被分解成16個群组,H 度’以位4,臨界值,其在所述具體實 在 if 儲存在該群組中登錄項的符號值。如上 所述’僅有2到9的群組具有Dc亮度典型表格中的登 14 1380603 基本表格400令所述的臨界值已經「填入」零, 們,滿到長度為16位元。在—祕體實施例中,如以下的詳 對於鮮臨界值*言較錢是同等長度,例如血有可 月匕隶長的Huffman碼一樣長。 ’、 請參照第五圖’所示為根據—具體實施例的—次要表格 一。在所^述的具體實施例中,次要表格5⑻由以上表1中所 冗度「典型」表格資訊中取得。次要表格為對應 2,在JPEG位元流中的Huffinan符號之一符號值的列表。 體實施射’這些數值係依序儲存在記鐘中,使得 何特定的登錄項,其為—偏移值與—索⑽組合。 J ,如果次要表格500開始於記憶體位址灯此卜2
Address>,, ^^<Table 2 Address>^^-^#ii , f中valueJength對應於在次要表格中一 IS第:ΪΓ做為-索引值’其取得儲存在次 解碼JPEG影像的Huffman值 現在請參照第六圖’所示為根據一具體實施 影像檔案中Huffinan碼的方法之流程圖_ 定 ^係揭示在餘目_中,這些步驟為 ϊ單一掃猶#確定取得來自該位元流之此體 貫施例中,這些位元係放置在—位元流緩朗3在某-體 在所述的碰實施例巾,細_包含妓錢位元流緩 Μ〇υ〇〇3 衝=中弟付说的適當Huffinan群組。如前所述,Huffman竭 為,字,碼。因此,識別一特定Huffman符號所屬的該群組將 ί指出該符號為多少位元長度。在一種方法中,該位元流緩衝 时係相較於16個不同臨界值,其每一個關聯於在jpeg解碼 工使用的16個可能的Huffinan群組之一。此比較可平行且非 4快速地,生’其可決定該適當群組,然後直接是該符號本身。 ^現在請參照步驟630,一基本表格被存取,且取得符號資 在些具體實施例中,解碼Huffman符號使用兩個表格。 =一表格,或基本表格,其包含關於用於解碼之16個 群組的f訊。在這種具體實施例中,對於這些16個 兮群組使用—「基本三位^組」。該三位元組包含在 ί群組中登錄項的長度,例如位元數目;該群組的-臨界值, =用於在步驟_巾執行的比較;及—記隨偏移值,其指 登錄項可明始的—第二缝體表格之一部 ^。一表格匕含編碼在該位元流中多種Huffman符號之符號 參f步驟_,其取得—相對應符號值。在一些具 = 表格提供畴取該次要表格之適當偏移資 呼由其於提供一索引’其配合該偏移值,允 袖其在該:人要表格中的位置取得—特定符號值。 度二?二第;法圖之體實:_碼可變長 ^步驟’這_為示讎。 =τ_瞻執行;一定 群袓、步Γ 蹄訊係對於編碼_使㈣vlc 鮮、,且末取付。在_些具體實施财,此臨界值資訊由一基本表 16 1380603 格取得,例如以上參照第四圖所述。在一些具體實施例中,一 給定群組之臨界值資訊包含在該群組中一登錄項的最低值。再 者,於一些具體實施例中,一特定群組的臨界值可被「填入」 或「填塞」’使得所有臨界值為相等長度。 ' 請參照步驟720,一位元流被存取,且自該位元流取得一 些位元。對於JPEG位元流,最大可能的vlc符號長度為16 位元,因此,在步驟720期間,自該位元流取得16個位元, 並儲存在一位元流緩衝器中。在不同具體實施例中,使用不同 ^方法來取得位元。例如,在—具體實_巾,触元流初始
日寸破掃描來得到這16個位元,而在其它具體實施例中,該等 位元可由該位元流讀取。 次現在請參照步驟730 ’該位元流緩衝器係相較於該臨界值 炱訊,以決定目前符號屬於那一個VLC群組。在不同且體實 ’此步驟係以不同方式來執行。在—具體實施例中,例 =存在触元流_H帽存陳值即據於每個群組的 =值;如果該位元流緩衝器大於―特定群組的臨界值,該比 =回真」。加總真的結果之數目將提供該目前符號的群組
相較於些Ϊ體實施例巾,第—VLC群組之臨界值不需要 ^H緩衝器;在這種具體實施财,雜元流緩衝 器之母-個可能數值將等於或大於第一 VLC群組之臨界值。 ιΐίΐί照步驟740,該群組數目係用於取得群組資訊。 此H例中,該群組數目做為對該基本表格的一索 的位元數本表格包含關於在—特定群組巾—符號之長度 訊’制於雜鱗組巾最小登錄項的臨界 群組中登記峨移值,其中儲存有該 -此驟750,該目前符號係自該位元流擷取。在 17 1380603礞 , 自二3作業,而非—「掃描」作業,此步驟可由 ^該位就_器讀取由該基本表格所指出的位元數目來執 信,ίίΐϊ步驟760,其取得對應於該目前符號之符號 施射’轉雜健齡在—次要表格 ΐ,Hr貝施例中,該次要表格的—索引藉由使用該目 二!?的群組之臨界值、及該群組之偏移值來計算。這 種计异的一乾例在下表2中說明。
表2
Mgx^symboN (threshold » nBits) + __^ 示例性VLC解碼 請參照第八A圖至第八D圖,所示為根據一具體實施例 中-示例性VLC解碼程序。第人a圖至第八D _示為根據 流程圖700之方法對於一位元流825的作業。
如第八A圖所示,位元流825由數個串連在一起的數個 可變長度符號所構成。位元流825的前16位元被掃描到一緩 衝器845 _。在所述具體實施例中,因為已經使用一掃描作 業,巧元流§己憶體指標827並未移動。在另一具體實施例中, 例如當使用一讀取作業時,位元流記憶體指標827可移動到該 位元流之被存取部份的末端。 μ 然後緩衝器845的内容相較於臨界值的數目,例如在基本 表格400中所示之臨界值:臨界值432到439。每次比較中^衝 器845大於或等於該臨界值時即傳回丨(真)。請注意到在所述 具體實施例中’如前所述,其不需要比較該緩衝器與群組i之 臨界值;在此具體實施例中,緩衝器845每一個可能數值大於 群組1的臨界值,且因此此比較自動視為1。 這些實際結果之總和代表該目前符號的VLC群組。在第 18 1380603 八A圖所示之具體實施例中,緩衝器845大於臨界值432及 433,但小於臨界值434 ;因此,該目前符號係在vlc群組3 中。 該VLC群組係用於定址該基本表格,例如基本表格4〇〇, 並取得適當的基本三位元組;在所述的具體實施例中,該基本 三位元組由nbit值423、臨界值433及偏移值443所構 如第八B圖所示,該目前符號自位元流825讀取,並儲 存在付號暫存器855中。該基本三位元組,以及特別是此红 值^23,其代表目前符號(符號832)之長度為3位元。因此, 位元流825的前3個位元被讀入記憶體中。因為所述的且體實 1例包含一讀取作業,位元流指標827前進到該讀取作g結束 時的位置。在另一具體實施例中,符號831可自緩衝器845取 Ϊ私而非位元流825 °在這種具體實施例中,一清除^業用於 移動位元流指標827。 ,合於臨界值433及偏移值443的觀83i係用於定址次 ϊί ί 移值443代表在群組3中登錄項之次要表格 ,的開始位置;結合於臨界值433的符號831提供一索。 在所述的具體實施例中,符號831對應於群組3中第一 號值儲存在記憶體位置<12爾+卜。符號831的 士如第八C圖戶斤示,當解碼位元流825中下一個傳辨 日:二例1符號833,一類似程序如下:位元流825之前16位元^ 入到緩衝器845中’並比較於該臨界值,如 中所π。此比較指出目前符號為群組6的广心 後該等前6個位元被讀入符號暫存i扮Ϊ 3 及偏蔣佶4从似土本一位兀、,且’例如nbit值426、臨界值436 及偏移值446 ’對於次要表格5〇〇計算 I ® ·36 符號值8。 1异京弓丨’並取得相對應 1380603 JPEG解碼的系統 成μ $ Μ 知、第九圖,所不,根據—具體實施例之PEG解 ^ 當系統9〇0顯不為加入特定列舉的特徵及元件 ”應瞭解到其它具體實施例可良好翻於包含額外較 徵、元件或配置之翻。再者,要瞭解到系統 9〇〇可貝%成硬體,例如經由使用專用電子組件透過軟體, 例如程式化模組之集合,或是這些的組合。
系統900所示為加入儲存元件91〇。儲存元件9ι〇在不同 具體實施财可制不_式。例如在-具體實酬中,儲存 7C件91G為-離硬碟機。在所述的具體實關巾,儲存元件 910顯不成儲存jpEG檔案915。如所示,jpEG檔案915 加入標頭916及位元流918。 系統900亦顯示成包括記憶體92〇。在不同具體實施例 中,記憶體920可翻不同型式。在所述的具體實施例中,記 隐體920係用於儲存基本表格922與次要表格924。
系統900亦顯示成包括jpEG解碼引擎95〇。在所述的且 體實施例中,JPEG解碼引擎95G加人jpEG控制器模組95厂 Huffman表格產生器952、位元流緩衝器954、複數個臨界值 比較器956、符號緩衝器958與符號值緩衝器959。 根據所述的具體實施例,系統9〇〇的作業包含傳送jpEG 擋案915到JPEG解碼引擎950,其中其由jpEG控制器模組 951接收。標頭916被傳送到Huffinan表格產生器952,其使 用包含在標頭916中的資訊,例如編碼成jpEG檔案915之一 部份的Huffman表格資訊,以產生基本表格奶及次要表格 924。JPEG控制器模組951存取基本表格922,並取得其中所 述之每個Huffman群組的臨界值資訊。此臨界值資訊被g入 該複數個臨界值比較器956中。 位元流918的一部份,例如前16位元,其被載入到位元 20 流緩衝器954中。然後位元流緩衝器954之内容利用每個臨界 值比較器956比較;這些比較的結果將可識別該目前符號的 Huffman群組。一旦已經決定的適當Huffman群組,群組資訊 可自表格922取得。因此此群組資訊允許自位元流918擷 取目前符號;該符號係儲存在符號緩衝器958中。 該群組資訊與該符號的組合係用於存取次要表格924,並 擷取該目前符號之符號值,其然後可儲存在符號值緩衝器959 中。 本發明的具體實施例已經說明。當本發明已經於特定具體 實施例中說明時,其必須瞭解到本發明不應視為受到這些具體 實施例所限制,而是根據以下申請專利範圍所限制。 【圖式簡單說明】 附屬圖面係加入到本說明書中,並形成為其一部份,其例 不本發明之具體實施例,並連同該說明用於解釋本發明的原 理: ’、 第圖為可實施本發明之具體實施例的一示例性電腦夺 統的方塊圖。 μ 第二圖為根據一具體實施例的示例性Huffinan表格。 第二圖為根據一具體實施例之JPEG影像檔案。 第四圖為根據一具體實施例的基本表格。 第五圖為根據一具體實施例的次要表格。 第六圖為根據一具體實施例解碼在JPEG影像檔案中 Huffman竭的方法之流程圖。 >' 第七圖為根據一具體實施例解碼一可變長度 號的方法之流程圖。 第八A圖、第八B圖、第八C圖及第八0圖為根據一且 體實施例中對於一位元流進行的示例性VLC解碼程序。八 第九圖為根據一具體實施例中用於JPEG解碼之系統的方 1380603 塊圖。
【主要元件符號說明】 100 匯流排 500 次要表格 101 處理器 825 位元流 102 隨機存取記憶體(揮 827 位元流記憶體指標 發性) 845 緩衝器 103 唯讀記憶體(非揮發 855 符號暫存器 性) 900 系統 104 資料儲存裝置 910 儲存器 105 圖形子系統 915 JPEG檔案 106 文數字輸入 916 標頭 107 游標控制 918 位元流 108 輸入/輸出裝置 920 記憶體 110 顯示裝置 922 基本表格 111 視訊變線 924 次要表格 112 系統 950 JPEG解碼引擎 200 Huffman表格 951 JPEG控制器 300 JPEG影像檔案 952 表格產生器 310 標頭 954 位元流緩衝器 320 影像資料 956 臨界值比較器 325 位元流摘錄 958 符號緩衝器 400 基本表格 959 符號值緩衝器 22

Claims (1)

1〇1年8月6日修正替換頁 1〇1年8月6日修正替換頁 、申請專利範圍: 1. :在ίίϊ相專家群_)影像觀中解碼 本;自關聯於該JPEG影像檔案的一位元流取得一位元流樣 本與—基本表格中的—臨界值,以得到 - 咖,峨输帽取關聯於 使用該Huffman群組資邙ά i& 耐輸符號,·及野、且貝訊自該紅流擷取-目前 2該目前Huffman符號及該Huffinan群 ,要表格巾取得-符驗,其巾該基本祕包 個Huffman群組的複數資訊! ^複數 基本祕㈣林祕 2 中的Huffman表格資訊中所產生。 〜像枯案 如申請專利範圍第1項之方法, 存取該臨界值。 3. t申請專利範圍第1項之方法,其中該臟如群組資訊包 度,Sfl ’其代表在該HUffman群組中登錄項之長 符號該Ϊ界值’其朗在該耐_群組中最小的Huffman 4. 如申;項=記憶體中一位置取得該符號值。 圍第項之方法,其中該臨界值被填入焚,μ 以在長度上等於來自該位元流的該位元流樣本。真入零,错 年8月6日修正替換頁 5. 年8月6日修正替換頁 5. 6. 7.
8. 如申凊專利範圍第3項夕 對於該位it流執行’其中該取得包含: 及 彳▼描作業,以取得該位元流樣本; 载入戎位元流樣本到一 如申請專利細第5項$ J __益中。 對於該蚊流執懷f包含: 該目前Huff_概。'^取作業’以參照5玄長度資訊取得 如申請專利範圍第3項之大、土 . 對於該位元流執中該=包含: 及 嗔取作業,以取侍該位元流樣本; 如申到—記憶體緩衝器中。 東ϋ圍項之方法,其中該擷取包含: 長度資訊自該記憶體緩衝器取得該目前 9. 10.
11. 如申請專利範圍第1項之方法,另包含: >比較雜元流樣本與複數舰界值,該複數個 母一個關聯於複數個Huffinan群组之一。 值 如申請專利範圍第9項之方法’另包含: 自該基本表格取得該複數個臨界值。 一種解碼在解碼聯合照相專家群(JPEG)影像檔 Huffman碼之系統,其包含: 八 一控制器模組,其用於對該JPEG影像檔案執行作業; 一 Huffman表格產生器,其耦合至該控制器模組,用於 自包括在該JPEG影像檔案中的Huffman表格資訊產生一其 本表格及一次要表格; 土 一位元流緩衝器,其耦合至該控制器模組,用於儲存自 包括在該JPEG影像檔案中的影像資料所摘錄之資料、;及 24 1380603 別對===符=合=制器模組,用於識 =;=得_於該1^組= -符號Ϊ 得__目前Huff麵符號之 12. ===系統,其中該複數個― 13. =:=r項之系統,其中該複數個― 群組中每個登錄項之位元長度資訊; 符號;t界值,其對應於在該相對應Huffman群組中一最低 Μ μΓΪ紐,其龍於在财妓财一位置。 項之系統,其中該複數臨界值被載人 的較財,域齡在触元流緩衝器令 15. 第11項之系統,其中㈣基本表格中識別 ‘美太二~二並m要表格中獲取該符號值,其中該 Ϊίίί包括關聯於複數個歸咖群組的複數祕麵 ,,·貝訊,且忒次要表格包括複數個符號值。 .=ir=rEG)影像標案中解碼一變 ㈣16位元和一基本表格中的一臨界值,以識別 =於儲存在該位元流緩_中—目前HUff_符號的-Huffman群組’而得到對應於該Huff_群組的一册任_ 1380603 群組數值;
自这基本表格取得_於該群組的群組資訊; 之-4號2 : 1 表格取得該目前祕麵符號 組的複數資訊'、包括關聯於複數個祕_群 格和該次要表格是表 表格資訊中所產生。 心像秸案中的Huffman A如申ΐίΐίΐ: 16項之方法,其中該識別包含:界值L 土本表格取得關聯於該些歸雜群組之複數個臨 及 比較該複數個臨界值之每一 產生複數個結果;及 臨界值與該位元流緩衝器以 18. 參照該複數個結果識別該Huffman群組。 如申明專她圍第16項之方法,其中該群組資訊包含 2元長度,其關聯於在該Huffman群組中的登錄項; fe界值,其對應於在該Huffman群組中一最低登錄項
一忆憶體偏移值,其對應於在該次要表格中一位置。 ^如中請專利細第18項之方法,其中該取得包含參照該記憶 體偏移值、該臨界值及該目前Huffman符號來計算一記憶體位址。 26 1380603
101年8月6日修正替換頁
系統900 第九圖
TW097134621A 2007-09-17 2008-09-10 Decoding variable length codes in jpeg applications TWI380603B (en)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US11/901,605 US8849051B2 (en) 2007-09-17 2007-09-17 Decoding variable length codes in JPEG applications

Publications (2)

Publication Number Publication Date
TW200917672A TW200917672A (en) 2009-04-16
TWI380603B true TWI380603B (en) 2012-12-21

Family

ID=40454525

Family Applications (1)

Application Number Title Priority Date Filing Date
TW097134621A TWI380603B (en) 2007-09-17 2008-09-10 Decoding variable length codes in jpeg applications

Country Status (5)

Country Link
US (1) US8849051B2 (zh)
JP (1) JP4693072B2 (zh)
KR (1) KR100968675B1 (zh)
CN (1) CN101394564A (zh)
TW (1) TWI380603B (zh)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9307267B2 (en) 2008-12-11 2016-04-05 Nvidia Corporation Techniques for scalable dynamic data encoding and decoding
CN102545910B (zh) * 2010-12-30 2015-10-28 无锡华润矽科微电子有限公司 一种jpeg霍夫曼解码电路及其解码方法
KR101270633B1 (ko) 2011-04-18 2013-06-03 명지대학교 산학협력단 복수 호프만 테이블을 적용하여 고속 처리가 가능한 멀티미디어용 호프만 디코딩 방법 및 장치
US9166620B2 (en) * 2012-09-26 2015-10-20 Qualcomm Incorporated Method and apparatus for a memory based packet compression encoding
US9059731B2 (en) * 2013-10-21 2015-06-16 International Business Machines Corporation Boosting decompression in the presence of reoccurring Huffman trees
KR102666313B1 (ko) * 2022-01-28 2024-05-17 건국대학교 산학협력단 Jpeg 이미지의 부분 암호화를 통한 비식별화 방법 및 이를 수행하는 장치

Family Cites Families (117)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5163136A (en) * 1989-11-13 1992-11-10 Archive Corporation System for assembling playback data frames using indexed frame buffer group according to logical frame numbers in valid subcode or frame header
US5189671A (en) * 1991-12-20 1993-02-23 Raynet Corporation Apparatus and method for formatting variable length data packets for a transmission network
US5440344A (en) * 1992-04-28 1995-08-08 Mitsubishi Denki Kabushiki Kaisha Video encoder using adjacent pixel difference for quantizer control
US5289548A (en) * 1992-06-30 1994-02-22 Loral Aerospace Corp. Compression and reconstruction of radiological images
US7095783B1 (en) * 1992-06-30 2006-08-22 Discovision Associates Multistandard video decoder and decompression system for processing encoded bit streams including start codes and methods relating thereto
KR0134166B1 (ko) * 1992-11-24 1998-04-22 모리시타 요이찌 영상신호기록장치
JP3005385B2 (ja) 1993-03-22 2000-01-31 鐘紡株式会社 ハフマン復号化回路
PT732028E (pt) * 1993-11-30 2002-07-31 Gen Electric Indicador de palavra de dados num sistema para montagem de pacotes de dados de transporte
US6757437B1 (en) * 1994-09-21 2004-06-29 Ricoh Co., Ltd. Compression/decompression using reversible embedded wavelets
US5881176A (en) * 1994-09-21 1999-03-09 Ricoh Corporation Compression and decompression with wavelet style and binary style including quantization by device-dependent parser
US6047357A (en) * 1995-01-27 2000-04-04 Digital Equipment Corporation High speed method for maintaining cache coherency in a multi-level, set associative cache hierarchy
WO1996033558A1 (en) * 1995-04-18 1996-10-24 Advanced Micro Devices, Inc. Method and apparatus for hybrid vlc bitstream decoding
US5774206A (en) * 1995-05-10 1998-06-30 Cagent Technologies, Inc. Process for controlling an MPEG decoder
JPH09261647A (ja) 1996-03-21 1997-10-03 Matsushita Electric Ind Co Ltd 動画再生制御方法および動画再生制御装置
US5969750A (en) * 1996-09-04 1999-10-19 Winbcnd Electronics Corporation Moving picture camera with universal serial bus interface
US6041403A (en) * 1996-09-27 2000-03-21 Intel Corporation Method and apparatus for generating a microinstruction responsive to the specification of an operand, in addition to a microinstruction based on the opcode, of a macroinstruction
US5821886A (en) * 1996-10-18 1998-10-13 Samsung Electronics Company, Ltd. Variable length code detection in a signal processing system
JPH10243402A (ja) * 1997-02-27 1998-09-11 Toshiba Corp 画像処理装置及び画像処理方法
US6298370B1 (en) * 1997-04-04 2001-10-02 Texas Instruments Incorporated Computer operating process allocating tasks between first and second processors at run time based upon current processor load
JP4150083B2 (ja) * 1997-09-25 2008-09-17 ソニー株式会社 符号化ストリーム生成装置及び方法、ならびに編集システム及び方法
US6246347B1 (en) * 1997-10-27 2001-06-12 Philips Electronics North America Corporation Controller for a variable length decoder
US5990812A (en) * 1997-10-27 1999-11-23 Philips Electronics North America Corporation Universally programmable variable length decoder
KR100252866B1 (ko) * 1997-12-13 2000-04-15 김영환 반도체소자 및 이의 제조방법
CN1183778C (zh) * 1998-02-13 2005-01-05 松下电器产业株式会社 图象解码装置及记录媒体
US6008745A (en) * 1998-02-17 1999-12-28 Sun Microsystems, Inc. Variable length decoding using lookup tables
JP3014997B2 (ja) * 1998-02-26 2000-02-28 鐘紡株式会社 可変長符号復号装置
US6859496B1 (en) * 1998-05-29 2005-02-22 International Business Machines Corporation Adaptively encoding multiple streams of video data in parallel for multiplexing onto a constant bit rate channel
AU4723699A (en) * 1998-06-25 2000-01-10 Equator Technologies, Inc. Processing circuit and method for variable-length coding and decoding
JP2000049621A (ja) 1998-07-31 2000-02-18 Hitachi Ltd ハフマン復号化方法及びデータ処理装置
JP2000059234A (ja) * 1998-08-10 2000-02-25 Mitsubishi Electric Corp 可変長符号処理装置
US6456340B1 (en) * 1998-08-12 2002-09-24 Pixonics, Llc Apparatus and method for performing image transforms in a digital display system
JP3711762B2 (ja) * 1998-09-16 2005-11-02 富士ゼロックス株式会社 画像符号化装置および方法
US6434649B1 (en) * 1998-10-14 2002-08-13 Hitachi, Ltd. Data streamer
US6560674B1 (en) * 1998-10-14 2003-05-06 Hitachi, Ltd. Data cache system
US6654539B1 (en) * 1998-10-26 2003-11-25 Sony Corporation Trick playback of digital video data
EP1021048A3 (en) * 1999-01-14 2002-10-02 Kabushiki Kaisha Toshiba Digital video recording system and its recording medium
US7327791B1 (en) * 1999-02-22 2008-02-05 Mitsubishi Denki Kabushiki Kaisha Video decoding method performing selective error concealment and resynchronization
US6480489B1 (en) * 1999-03-01 2002-11-12 Sun Microsystems, Inc. Method and apparatus for data re-assembly with a high performance network interface
US6339658B1 (en) * 1999-03-09 2002-01-15 Rockwell Science Center, Llc Error resilient still image packetization method and packet structure
JP3493574B2 (ja) * 1999-03-11 2004-02-03 Necエレクトロニクス株式会社 逆量子化装置及び逆量子化方法
US20020063807A1 (en) * 1999-04-19 2002-05-30 Neal Margulis Method for Performing Image Transforms in a Digital Display System
US6161531A (en) * 1999-09-15 2000-12-19 Ford Motor Company Engine control system with adaptive cold-start air/fuel ratio control
EP1089473A1 (en) 1999-09-28 2001-04-04 TELEFONAKTIEBOLAGET L M ERICSSON (publ) Apparatus and method for time-aligning data frames of a plurality of channels in a telecommunication system
US6507614B1 (en) * 1999-10-19 2003-01-14 Sony Corporation Efficient de-quantization in a digital video decoding process using a dynamic quantization matrix for parallel computations
US20020135683A1 (en) * 1999-12-20 2002-09-26 Hideo Tamama Digital still camera system and method
US7495669B2 (en) * 2002-12-26 2009-02-24 Canon Kabushiki Kaisha Image processing apparatus and image processing method
US6850566B2 (en) * 2000-02-22 2005-02-01 Intervideo, Inc. Implementation of quantization for SIMD architecture
US6552673B2 (en) * 2000-02-25 2003-04-22 Texas Instruments Incorporated Efficient table access for reversible variable length code decoding using a hash function
JP2001285861A (ja) * 2000-03-29 2001-10-12 Mitsubishi Electric Corp 画像信号符号化装置
US7113546B1 (en) * 2000-05-02 2006-09-26 Ati Technologies, Inc. System for handling compressed video data and method thereof
US7119813B1 (en) * 2000-06-02 2006-10-10 Nintendo Co., Ltd. Variable bit field encoding
JP3662171B2 (ja) * 2000-06-05 2005-06-22 三菱電機株式会社 符号化装置及び符号化方法
US6560690B2 (en) * 2000-12-29 2003-05-06 Intel Corporation System and method for employing a global bit for page sharing in a linear-addressed cache
US6738522B1 (en) * 2001-02-01 2004-05-18 Advanced Micro Devices, Inc. Efficient SIMD quantization method
US6543023B2 (en) * 2001-02-05 2003-04-01 Agere Systems Inc. Parity-check coding for efficient processing of decoder error events in data storage, communication and other systems
US6587057B2 (en) * 2001-07-25 2003-07-01 Quicksilver Technology, Inc. High performance memory efficient variable-length coding decoder
US6981073B2 (en) * 2001-07-31 2005-12-27 Wis Technologies, Inc. Multiple channel data bus control for video processing
KR20030016859A (ko) 2001-08-22 2003-03-03 한국전자통신연구원 허프만 부호의 복호화 방법
US6963612B2 (en) * 2001-08-31 2005-11-08 Stmicroelectronic, Inc. System for detecting start codes in MPEG video streams and method of operating the same
US6696992B1 (en) * 2001-10-02 2004-02-24 Allan Chu Efficient data encoding and decoding processes
US6563440B1 (en) * 2001-10-19 2003-05-13 Nokia Corporation Apparatus and method for decoding Huffman codes using leading one/zero string length detection
US6650996B1 (en) * 2001-12-20 2003-11-18 Garmin Ltd. System and method for compressing data
US6847369B2 (en) * 2002-01-30 2005-01-25 Sun Microsystems, Inc. Optimized packing of loose data in a graphics queue
US7286543B2 (en) * 2002-02-27 2007-10-23 International Business Machines Corporation Memory system with apparatus and method to enable balanced bandwidth utilization
US6891976B2 (en) * 2002-03-12 2005-05-10 Intel Corporation Method to decode variable length codes with regular bit pattern prefixes
US7680043B2 (en) * 2002-03-20 2010-03-16 International Business Machines Corporation Network processor having fast flow queue disable process
US7065546B2 (en) * 2002-04-09 2006-06-20 Sony Electronics Inc. Method of performing quantization within a multimedia bitstream utilizing division-free instructions
US7158539B2 (en) * 2002-04-16 2007-01-02 Microsoft Corporation Error resilient windows media audio coding
TWI310137B (en) * 2002-04-19 2009-05-21 Microsoft Corp Methods and systems for preventing start code emulation at locations that include non-byte aligned and/or bit-shifted positions
US7436329B2 (en) * 2003-04-17 2008-10-14 Droplet Technology, Inc. Multiple technique entropy coding system and method
US6563441B1 (en) * 2002-05-10 2003-05-13 Seiko Epson Corporation Automatic generation of program logic to decode variable-length codes
JP3671025B2 (ja) * 2002-05-22 2005-07-13 株式会社リコー 光走査装置及び画像形成装置
KR100468742B1 (ko) * 2002-06-26 2005-01-29 삼성전자주식회사 이진 검색 기법을 이용한 jpeg 허프만 테이블 디코더및 그 방법
US7016547B1 (en) * 2002-06-28 2006-03-21 Microsoft Corporation Adaptive entropy encoding/decoding for screen capture content
CN100580661C (zh) * 2002-07-15 2010-01-13 西门子公司 结构化文档、尤其xml文档的编码/译码的方法和装置
KR100504471B1 (ko) * 2002-08-08 2005-08-03 엘지전자 주식회사 비디오 디코딩 시스템
US6906647B2 (en) * 2002-09-20 2005-06-14 Ntt Docomo, Inc. Method and apparatus for arithmetic coding, including probability estimation state table creation
US6825782B2 (en) * 2002-09-20 2004-11-30 Ntt Docomo, Inc. Method and apparatus for arithmetic coding and termination
JP4546249B2 (ja) * 2002-11-14 2010-09-15 オープンティブイ・インコーポレーテッド データストリーム内のイメージの配置
US7069407B1 (en) * 2002-12-20 2006-06-27 Cypress Semiconductor Corporation Method and apparatus for a multi-channel high speed framer
AU2003289131A1 (en) * 2003-01-17 2004-08-13 Matsushita Electric Industrial Co., Ltd. Moving picture encoding method and moving picture decoding method
US7627042B2 (en) * 2003-01-23 2009-12-01 Ittiam Systems (P) Ltd. System, method, and apparatus for error recovery in coded video signals
KR100539923B1 (ko) * 2003-02-10 2005-12-28 삼성전자주식회사 화상통화시 화자의 영상을 구분하여 차등적 부호화할 수있는 비디오 엔코더 및 이를 이용한 비디오신호의 압축방법
CN101668215A (zh) 2003-02-18 2010-03-10 诺基亚有限公司 图像解码方法
SG140441A1 (en) 2003-03-17 2008-03-28 St Microelectronics Asia Decoder and method of decoding using pseudo two pass decoding and one pass encoding
US7660352B2 (en) 2003-04-04 2010-02-09 Sony Corporation Apparatus and method of parallel processing an MPEG-4 data stream
KR100584579B1 (ko) * 2003-04-21 2006-05-30 삼성전자주식회사 광주사 장치
JP2004364211A (ja) * 2003-06-09 2004-12-24 Matsushita Electric Ind Co Ltd 動画像復号化装置
US7496234B2 (en) 2003-06-20 2009-02-24 Microsoft Corporation System and method for seamless multiplexing of embedded bitstreams
US7924921B2 (en) * 2003-09-07 2011-04-12 Microsoft Corporation Signaling coding and display options in entry point headers
US7724827B2 (en) * 2003-09-07 2010-05-25 Microsoft Corporation Multi-layer run level encoding and decoding
US7606313B2 (en) 2004-01-15 2009-10-20 Ittiam Systems (P) Ltd. System, method, and apparatus for error concealment in coded video signals
EP1578131A1 (en) * 2004-03-18 2005-09-21 STMicroelectronics S.r.l. Encoding/decoding methods and systems, computer program products therefor
EP1587244B1 (de) 2004-04-15 2008-03-19 Tektronix International Sales GmbH Verfahren zur Konfiguration einer Filtervorrichtung für einen in Frames organisierten Datenstrom, und Protokolltester
US7113115B2 (en) * 2004-06-30 2006-09-26 Intel Corporation Variable length code table look ups
US7074153B2 (en) * 2004-08-18 2006-07-11 General Motors Corporation Planetary transmissions having three gear sets and input clutches
US7132963B2 (en) * 2004-09-13 2006-11-07 Ati Technologies Inc. Methods and apparatus for processing variable length coded data
JP2006093958A (ja) * 2004-09-22 2006-04-06 Matsushita Electric Ind Co Ltd プログレッシブjpeg復号化システム
TWI245548B (en) * 2004-10-20 2005-12-11 Inst Information Industry Method and device for video decoding
US7933336B2 (en) * 2004-11-30 2011-04-26 Humax Co., Ltd. Image down-sampling transcoding method and device
US20060176960A1 (en) * 2005-02-07 2006-08-10 Paul Lu Method and system for decoding variable length code (VLC) in a microprocessor
JP2006270737A (ja) * 2005-03-25 2006-10-05 Fuji Xerox Co Ltd 復号化装置、分布推定方法、復号化方法及びこれらのプログラム
US7404645B2 (en) 2005-06-20 2008-07-29 Digital Display Innovations, Llc Image and light source modulation for a digital display system
US7817900B2 (en) * 2005-06-30 2010-10-19 Microsoft Corporation GPU timeline with render-ahead queue
US7432835B2 (en) 2005-07-05 2008-10-07 Matsushita Electric Industrial Co., Ltd. Variable length decoding method and device
US7119723B1 (en) * 2005-07-28 2006-10-10 Texas Instruments Incorporated Decoding variable length codes while using optimal resources
US7129862B1 (en) * 2005-07-29 2006-10-31 Texas Instruments Incorporated Decoding bit streams encoded according to variable length codes
US20090196356A1 (en) 2005-09-14 2009-08-06 Mitsunori Houki Multi-stream decoder apparatus
US7372378B2 (en) 2005-12-01 2008-05-13 Nvidia Corporation Efficient decoding of n-tuple variable bit length symbols
KR100736096B1 (ko) * 2005-12-12 2007-07-06 삼성전자주식회사 비디오 신호를 그룹별로 인코딩 및 디코딩하는 방법 및장치
US7372379B1 (en) 2006-03-28 2008-05-13 Nvidia Corporation Method and system for decoding N-tuple variable length code
US7324026B2 (en) * 2006-05-19 2008-01-29 Nvidia Corporation Optimization of decoder memory usage for VLC tables
US7881582B2 (en) * 2006-06-12 2011-02-01 International Business Machines Corporation Slowing display of digital video
US7975120B2 (en) 2006-12-27 2011-07-05 Freescale Semiconductor, Inc. Dynamic allocation of message buffers
CN101017574A (zh) 2007-02-16 2007-08-15 上海广电集成电路有限公司 一种适于jpeg码流的哈夫曼解码方法
US8477852B2 (en) 2007-06-20 2013-07-02 Nvidia Corporation Uniform video decoding and display
US8502709B2 (en) * 2007-09-17 2013-08-06 Nvidia Corporation Decoding variable length codes in media applications

Also Published As

Publication number Publication date
KR20090029173A (ko) 2009-03-20
TW200917672A (en) 2009-04-16
JP2009118464A (ja) 2009-05-28
JP4693072B2 (ja) 2011-06-01
US20090074314A1 (en) 2009-03-19
KR100968675B1 (ko) 2010-07-06
CN101394564A (zh) 2009-03-25
US8849051B2 (en) 2014-09-30

Similar Documents

Publication Publication Date Title
TWI380603B (en) Decoding variable length codes in jpeg applications
CN104205161B (zh) 用于块压缩图象的解压缩的系统、方法和计算机程序产品
JP5289333B2 (ja) データストリームを生成し、データストリーム内の位置を識別する方法
US8502709B2 (en) Decoding variable length codes in media applications
US10044370B1 (en) Lossless binary compression in a memory constrained environment
CN108563521B (zh) 应用于游戏客户端的信息分享方法、装置、处理器及终端
CN111246050A (zh) 用于视频数据处理的系统、装置和方法
CN104904231A (zh) 将缩略图信息嵌入视频流
WO2016045641A2 (zh) 数据块储存方法、数据查询方法和数据修改方法
US8484404B2 (en) Digital signal processing architecture supporting efficient coding of memory access information
CN114116635A (zh) 压缩数据流的并行解压缩
CN110232969A (zh) 医学影像上传至云服务器的方法、装置、终端和存储介质
CN108320145A (zh) 线下电子支付处理方法、装置及客户端
US8300704B2 (en) Picture processing via a shared decoded picture pool
CN109830285A (zh) 一种医学影像文件处理方法和装置
EP2787738B1 (en) Tile-based compression for graphic applications
US10103747B1 (en) Lossless binary compression in a memory constrained environment
US9413386B1 (en) System, apparatus, and method for decompressing data
JP2011193451A (ja) 圧縮された整数データを記憶・転送するためのシステム
CN105163128A (zh) 一种利用gpu并行加速图像转换的屏幕图像获取方法
US9761030B2 (en) Scene image generator
CN109816536B (zh) 清单去重方法、装置和计算机设备
CN110365858B (zh) 信息传输方法、装置、设备、系统及存储介质
US20150178880A1 (en) Composition data dispatcher
US8880789B2 (en) Optimal power usage in decoding a content stream stored in a secondary storage