世界上最短的DVD解碼程式(附原始碼) (轉)

gugu99發表於2008-03-27
世界上最短的DVD解碼程式(附原始碼) (轉)[@more@]  前些天麻省理工學院的兩位學生編寫出世界上最短的解碼,而這個紀錄最近被一位名為Charles M Hannum的程式設計師打破,他所編寫的解碼程式只有442個位元組,而那個七行的解碼程式則為472個位元組。

  Hannum的C程式被叫作:efdtt,據稱它的速度相當快,能夠達到21.5MBps,在解碼時甚至不需要特別進行I/O,這樣的速度使得該程式在將資料轉換為動態影像時完全不會影響MPEG 2的解碼處理。

  相比兩個同樣小巧的解碼程式,前者支援即時解碼與回放,但據說它的輸出回放偶爾會不穩定。而Hannum的程式則支援平滑回放。

相關連結:
efdtt的

/* efdtt.c Author: Charles M. Hannum root@ihack.net> */
/* */
/* Usage is: cat title-key scrambled.vob | efdtt >clear.vob */

#define K(i)(x[i]^s[i+84])<<
unsigned char x[5],y,z,s[2048];main(n){for(read(0,x,5);read(0,s,n=2048);write(1
,s,n))if(s[y=s[13]%8+20]/16%4==1){int i=K(1)17^256+K(0)8,k=K(2)0,j=K(4)17^K(3)9
^k*2-k%8^8,a=0,b=0,c=26;for(s[y]-=16;--c;i/=2,j/=2)a=a*2^i&1,b=b*2^j&1;for(j=
127;++jy)a^=a>>14,a=a>>8^(y=a^a*8^a<<6)<<9,b=b>>8^(z=b^b/8^b>>4^b>>12)
<<17,i=s[j],i="7Wo~'G_216"[i&7]+2^"cr3w6v;*k+>/n."[i>>4]*2^i*257/8,s[j]=i^(i
&i*2&34)*6^z+c+~y;}}

-------------------------------------------------------------------------
狂笑一族
本站只收錄最搞笑的內容

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/10748419/viewspace-1001549/,如需轉載,請註明出處,否則將追究法律責任。

相關文章