青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

ts,ps,mpeg2 decoder and analysis

mepg 2, iptv, stream parse,mov,mxf,gxf,ac3,aac

  C++博客 :: 首頁 :: 新隨筆 :: 聯系 :: 聚合  :: 管理 ::
  21 隨筆 :: 0 文章 :: 54 評論 :: 0 Trackbacks
/Files/dvb-dvb/HuffmanCode.rar

這個是最新的huffman code (encoder and decoder) , 但是效率有待提升.
 一直占cpu 50% , 掃描兩遍文件,一遍建立huffman code,另一遍,用二進制替換,
        1,有兩個問題沒有解決
  1,動態建立huffman tree node value.僅僅掃描一遍,
  2,根據node的值去排序得到frequence時,這個值到底取1個byte,還是2個byte.

Huffman算法簡介

Huffman算法是一種基于統計的壓縮方法。它的本質就是對文本文件中的字符進行重新編碼,對于使用頻率越高的字符,其編碼也越短。但是任何2個字符的編碼,是不能出現向前包含的。也就是說字符A的編碼的前段,不可能為字符B的編碼。經過編碼后的文本文件,主要包含2個部分:Huffman碼表部分和壓縮內容部分。解壓縮的時候,先把Huffman碼表取出來,然后對壓縮內容部分各個字符進行逐一解碼,形成源文件。

由此可見,使用Huffman算法的關鍵是形成Huffman碼表。怎樣才能生成一個“使用頻率越高的字符,其編碼也越短”的碼表呢?這里就要用到 Huffman樹的數據結構。當把一棵Huffman樹生成后,碼表也就生成了。以下舉例說明,假定我們的原始文本為"abcbbcccc"

Huffman樹生成步驟:

1.掃描源文件,對字符頻率進行統計。

對于我們的樣例,統計結果是:a:1  b:3 c:5 (按頻率升序排列)

 

2.從上述隊列中取出頻率最低的2個節點,合并成一個頻率為2節點頻率之和的樹枝節點X,加入到原隊列中,加入后,繼續保持隊列按頻率升序排列.

3.重復步驟2,直到隊列中只有一個節點。

4.這樣,我們就形成了一棵Huffman樹。葉子節點為字符,從樹根節點到葉子節點的路徑即為該字符的Huffman編碼。從一個節點導航到其左孩子,該段路徑為0,導航到右孩子,該段路徑為1.所以,a字符的編碼就是00,b字符的編碼為01,c字符的編碼為1,符合"使用頻率越高的字符,編碼越短"的要求。理論論證過程見<算法導論>P233

5.Huffman碼表生成后,原文本"abcbbcccc"就變成了0001101011111的位串,按每個字符占用2個byte計算,大小由原來的18個字節(9*2),共144個bit,變成了13個bit,2個字節。達到了壓縮的目的。

解壓縮過程:

解壓縮也分成2部分進行,首先是根據壓縮文件中的Huffman碼表,在內存中生成一棵Huffman樹,然后,根據Huffman樹,對壓縮內容進行解壓縮。比如如果壓縮內容為位串0001101011111,那么從樹根節點起,因為第一個bit為0,先轉向左子樹,第二個bit為0,再轉向左子樹,到達葉子a,所以解碼出來的第一個字符就是a,每次解壓一個字符,都從根節點起,根據bit流,向左或向右轉,直到到達葉子節點,也就是解壓出來的字符。一直重復此過程,直到所有的字符都被解壓縮。 

壓縮文件格式

使用Huffman壓縮算法對文本文件壓縮后,就形成了一個壓縮文件,該壓縮文件包含2部分,一部分為Huffman碼表,也就是Huffman 樹,第二部分為根據碼表生成的內容位串。如何設計Huffman樹的存儲格式呢?本文采用從上到下,從左到右分層遍歷節點,順序存儲的方式。如下圖:

也就是說,對于前述的Huffman樹,其持久化形式為:0xfffe 0xfffe 0x0063  0x0061  0x0062,其中0xfffe代表樹枝節點,而0x0061,0x0062,0x0063分別為a,b,c的Unicode碼。因為所有的樹枝節點的值都是0xfffe,所有樹枝節點都有2個孩子,節點排列方式是按從上到下,從左到右分層排列,所以能根據此持久化字節數組,把Huffman樹在內存中重新生成。

另外為了升級版本,嵌入了magic number和version。

完整工程下載

本文涉及到的完整的eclipse工程,可以從這里下載。注:內含測試樣例《平凡的世界》文本文件,體積較大,請使用下載工具下載。另外,本程序中采用了泛型,請在至少在JDK1.5版本上編譯運行。

代碼簡要說明

1.HuffmanTextEncoder類完成壓縮功能,可直接運行,壓縮測試用文本文件。

2.HuffmanTextDecoder類完成解壓縮功能,可直接運行,解壓縮 壓縮后的文本文件。

3.BitReader,工具類,實現對BufferedInputStream的按位讀取。

4.BitWriter,工具類,實現按位寫入的功能。該類來自網絡。

5.MinHeap<T> ,模板工具類,實現了一個最小堆。生成Huffman樹時使用。

壓縮效果

使用本程序對《平凡的世界》做壓縮測試,壓縮前為文本文件,大小為1.7M,壓縮后為二進制文件,大小接近1M(988,817byte),而 zip壓縮后體積為920,997byte,比zip差,壓縮文件存儲格式待改善。另外,因為從Huffman壓縮算法的原理可知,該算法對字符重復率高的文本最有效,比如長篇小說或者英文小說。

以上內容為轉載:   http://chencwf.googlepages.com/huffman
 
以下為自己的內容:

 DETAIL:  35:v:2f,p: 42.
    INFO:   Sort After.size = 0
    DETAIL:   0:v:fffe,p:228,xx=    0,yy=    0.
    DETAIL:   1:v:fffe,p: 92,xx=    1,yy=    0.0
    DETAIL:   2:v:fffe,p: 42,xx=    2,yy=    0.00
    DETAIL:   3:v:fffe,p: 19,xx=    3,yy=    0.000
    DETAIL:   4:v:fffe,p:  9,xx=    4,yy=    0.0000
    DETAIL:   5:v:fffe,p:  4,xx=    5,yy=    0.00000
    DETAIL:   6:v:fffe,p:  2,xx=    6,yy=    0.000000
    DETAIL:   7:v:  53,p:  1,xx=    7,yy=    0.0000000
    DETAIL:   8:v:  47,p:  1,xx=    7,yy=    1.0000001
    DETAIL:   9:v:fffe,p:  2,xx=    6,yy=    1.000001
    DETAIL:  10:v:  3d,p:  1,xx=    7,yy=    2.0000010
    DETAIL:  11:v:  3b,p:  1,xx=    7,yy=    3.0000011
    DETAIL:  12:v:  6c,p:  5,xx=    5,yy=    1.00001
    DETAIL:  13:v:  65,p: 10,xx=    4,yy=    1.0001
    DETAIL:  14:v:fffe,p: 23,xx=    3,yy=    1.001
    DETAIL:  15:v:  74,p: 11,xx=    4,yy=    2.0010
    DETAIL:  16:v:   d,p: 12,xx=    4,yy=    3.0011
    DETAIL:  17:v:fffe,p: 50,xx=    2,yy=    1.01
    DETAIL:  18:v:fffe,p: 24,xx=    3,yy=    2.010
    DETAIL:  19:v:fffe,p: 12,xx=    4,yy=    4.0100
    DETAIL:  20:v:fffe,p:  6,xx=    5,yy=    4.01000
    DETAIL:  21:v:  66,p:  3,xx=    6,yy=    4.010000
    DETAIL:  22:v:  67,p:  3,xx=    6,yy=    5.010001
    DETAIL:  23:v:  63,p:  6,xx=    5,yy=    5.01001
    DETAIL:  24:v:   a,p: 12,xx=    4,yy=    5.0101
    DETAIL:  25:v:  20,p: 26,xx=    3,yy=    3.011
    DETAIL:  26:v:fffe,p:136,xx=    1,yy=    1.1
    DETAIL:  27:v:fffe,p: 58,xx=    2,yy=    2.10
    DETAIL:  28:v:fffe,p: 26,xx=    3,yy=    4.100
    DETAIL:  29:v:fffe,p: 12,xx=    4,yy=    6.1000
    DETAIL:  30:v:fffe,p:  6,xx=    5,yy=    6.10000
    DETAIL:  31:v:fffe,p:  3,xx=    6,yy=    6.100000
    DETAIL:  32:v:  7b,p:  1,xx=    7,yy=    6.1000000
    DETAIL:  33:v:  70,p:  2,xx=    7,yy=    7.1000001
    DETAIL:  34:v:  78,p:  3,xx=    6,yy=    7.100001
    DETAIL:  35:v:fffe,p:  6,xx=    5,yy=    7.10001
    DETAIL:  36:v:  61,p:  3,xx=    6,yy=    8.100010
    DETAIL:  37:v:  4c,p:  3,xx=    6,yy=    9.100011
    DETAIL:  38:v:fffe,p: 14,xx=    4,yy=    7.1001
    DETAIL:  39:v:  64,p:  7,xx=    5,yy=    8.10010
    DETAIL:  40:v:   9,p:  7,xx=    5,yy=    9.10011
    DETAIL:  41:v:fffe,p: 32,xx=    3,yy=    5.101
    DETAIL:  42:v:fffe,p: 16,xx=    4,yy=    8.1010
    DETAIL:  43:v:fffe,p:  8,xx=    5,yy=   10.10100
    DETAIL:  44:v:fffe,p:  4,xx=    6,yy=   10.101000
    DETAIL:  45:v:fffe,p:  2,xx=    7,yy=   10.1010000
    DETAIL:  46:v:  6d,p:  1,xx=    8,yy=   10.10100000
    DETAIL:  47:v:  7d,p:  1,xx=    8,yy=   11.10100001
    DETAIL:  48:v:  77,p:  2,xx=    7,yy=   11.1010001
    DETAIL:  49:v:fffe,p:  4,xx=    6,yy=   11.101001
    DETAIL:  50:v:  41,p:  2,xx=    7,yy=   12.1010010
    DETAIL:  51:v:  29,p:  2,xx=    7,yy=   13.1010011
    DETAIL:  52:v:fffe,p:  8,xx=    5,yy=   11.10101
    DETAIL:  53:v:fffe,p:  4,xx=    6,yy=   12.101010
    DETAIL:  54:v:  28,p:  2,xx=    7,yy=   14.1010100
    DETAIL:  55:v:  6f,p:  2,xx=    7,yy=   15.1010101
    DETAIL:  56:v:  73,p:  4,xx=    6,yy=   13.101011
    DETAIL:  57:v:fffe,p: 16,xx=    4,yy=    9.1011
    DETAIL:  58:v:fffe,p:  8,xx=    5,yy=   12.10110
    DETAIL:  59:v:  75,p:  4,xx=    6,yy=   14.101100
    DETAIL:  60:v:  23,p:  4,xx=    6,yy=   15.101101
    DETAIL:  61:v:  22,p:  8,xx=    5,yy=   13.10111


asdfasdfasdf
posted on 2009-11-14 12:24 TS,MPEG2,dvbc專家 閱讀(1735) 評論(0)  編輯 收藏 引用

只有注冊用戶登錄后才能發表評論。
網站導航: 博客園   IT新聞   BlogJava   博問   Chat2DB   管理


ts,ps,mpeg2 decoder and analysis,ts分析.
青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            国产精品成人av性教育| 国产视频一区免费看| 亚洲国产三级在线| 欧美激情第1页| 欧美成人精品在线| 亚洲神马久久| 亚洲欧美国产日韩天堂区| 国产亚洲精品久| 欧美黄色aaaa| 欧美日韩一区二区三区在线观看免| 中文网丁香综合网| 亚洲中字在线| 亚洲第一区在线观看| 亚洲国产日韩在线| 国产精品福利在线| 久久久久一本一区二区青青蜜月| 久久综合九色综合久99| 一区二区三区视频在线| 午夜宅男久久久| 亚洲精品国产精品乱码不99按摩| 99国产精品久久久| 黄色国产精品| 一本久道久久综合狠狠爱| 国产欧美日韩一区二区三区| 欧美成人一区二区在线| 欧美日韩在线视频一区二区| 久久久www成人免费精品| 欧美不卡视频| 久久久97精品| 欧美日韩免费观看一区二区三区 | 亚洲欧美中文日韩v在线观看| 亚洲欧美日本日韩| 亚洲裸体视频| 久久精品国产清自在天天线| 制服诱惑一区二区| 免费高清在线一区| 欧美一区二区三区视频免费| 欧美激情综合网| 久久午夜视频| 国产拍揄自揄精品视频麻豆| 亚洲片国产一区一级在线观看| 国产亚洲午夜| 亚洲免费影视| 亚洲一区二区在线| 欧美国产日韩一区二区| 毛片一区二区三区| 国产精品一区免费观看| 99re国产精品| 亚洲精品之草原avav久久| 久久久久网站| 久久精品综合网| 国产欧美精品一区aⅴ影院| 亚洲美女少妇无套啪啪呻吟| 亚洲国产色一区| 久久人91精品久久久久久不卡| 久久福利视频导航| 国产啪精品视频| 亚洲一区精品在线| 亚洲综合欧美| 国产精品久久久久久久久| 亚洲美女电影在线| 一区二区三区国产盗摄| 欧美高清在线观看| 亚洲欧洲免费视频| 99热这里只有成人精品国产| 欧美福利电影在线观看| 亚洲国产精品一区二区三区| 亚洲区在线播放| 欧美激情久久久| 亚洲精品久久久蜜桃| 亚洲免费精品| 欧美午夜不卡视频| 亚洲夜间福利| 久久av在线看| 在线播放亚洲一区| 免费在线视频一区| 亚洲品质自拍| 亚洲欧美日韩在线| 国产无一区二区| 久久久久成人精品免费播放动漫| 久久这里有精品15一区二区三区| 一色屋精品视频在线观看网站| 久久伊人精品天天| 91久久精品一区| 亚洲男人的天堂在线观看| 国产精品久久久久免费a∨大胸| 亚洲一区二区网站| 久久免费视频在线观看| 亚洲国产精品一区制服丝袜| 欧美精品www| 亚洲一区二区三区精品在线观看| 久久成人18免费网站| 亚洲国产精品第一区二区| 欧美精品18| 午夜精品一区二区三区四区 | 亚洲伊人第一页| 国产日韩欧美夫妻视频在线观看| 久久久最新网址| 一本色道久久综合亚洲精品按摩 | 亚洲国产婷婷香蕉久久久久久| 欧美激情区在线播放| 亚洲婷婷综合久久一本伊一区| 久久久久久噜噜噜久久久精品| 1204国产成人精品视频| 欧美日韩一本到| 久久噜噜亚洲综合| 一区二区三区四区五区在线| 久久综合给合| 亚洲欧美一区二区三区极速播放| 黄色在线一区| 国产精品普通话对白| 欧美成人久久| 久久精品视频免费播放| 一本色道久久综合精品竹菊| 欧美aaaaaaaa牛牛影院| 性8sex亚洲区入口| 日韩午夜在线视频| 在线国产日韩| 国产欧美精品一区二区色综合| 欧美另类在线播放| 久久亚洲色图| 香蕉国产精品偷在线观看不卡| 亚洲人成网站777色婷婷| 毛片av中文字幕一区二区| 香蕉久久夜色精品| 亚洲性夜色噜噜噜7777| 亚洲乱码国产乱码精品精 | 欧美国产综合| 久久人人97超碰精品888| 欧美一区亚洲| 午夜欧美大片免费观看| 亚洲一区国产| 亚洲一区二区三区欧美| 日韩亚洲欧美精品| 亚洲精品在线免费| 91久久夜色精品国产九色| 欧美成在线观看| 麻豆精品一区二区av白丝在线| 久久精品国产2020观看福利| 亚欧成人精品| 欧美亚洲在线| 久久国产精品72免费观看| 欧美在线free| 久久免费视频在线| 久久久久久久久久码影片| 久久久久国产精品麻豆ai换脸| 久久爱www.| 久久久国产91| 麻豆国产精品一区二区三区 | 日韩视频免费观看高清在线视频| 亚洲欧洲精品一区二区| 亚洲经典在线| 99av国产精品欲麻豆| 日韩写真视频在线观看| 一本一本久久a久久精品综合麻豆| 99re成人精品视频| 亚洲欧美日韩国产中文在线| 亚洲欧美综合另类中字| 欧美专区在线| 欧美成人黑人xx视频免费观看| 欧美国产第二页| 日韩视频在线一区| 亚洲字幕一区二区| 久久久久se| 欧美极品一区| 国产欧美日韩一区二区三区在线 | 欧美日韩精品在线观看| 欧美午夜三级| 国产综合视频| 亚洲狼人综合| 欧美综合国产精品久久丁香| 欧美成人日本| 一道本一区二区| 久久久久.com| 欧美亚日韩国产aⅴ精品中极品| 国产美女精品免费电影| 亚洲国产精品成人一区二区 | 黑人巨大精品欧美一区二区| 亚洲国产精品久久久久秋霞蜜臀| 在线视频亚洲欧美| 久久精品亚洲精品国产欧美kt∨| 欧美成ee人免费视频| 一区二区激情小说| 久久久不卡网国产精品一区| 欧美日韩一区在线观看| 黄色欧美日韩| 亚洲欧美中文日韩在线| 欧美成人嫩草网站| 午夜精品婷婷| 欧美日韩网址| 亚洲区欧美区| 久久久久久**毛片大全| 一本不卡影院| 欧美大片一区| 在线观看久久av| 久久aⅴ国产欧美74aaa| 99v久久综合狠狠综合久久| 久久香蕉国产线看观看av| 国产精品日韩| 亚洲午夜电影|