亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? idct_kc.i

?? H.264完整的C語言代碼和DCT的代碼
?? I
字號:
#line 1 "D:\\working\\im_apps\\h264\\idct_kc.cpp"
#line 1 "D:/working/tools/isim/isimexe/blank_headers\\idb_kernelc.hpp"








#line 2 "D:\\working\\im_apps\\h264\\idct_kc.cpp"
#line 1 "D:\\working\\im_apps\\h264\\mpeg.hpp"




#line 1 "D:/working/tools/isim/isimexe/blank_headers\\idb_types.hpp"













#line 6 "D:\\working\\im_apps\\h264\\mpeg.hpp"
#line 1 "D:/working/tools/isim/isimexe/blank_headers\\idb_deftypes.hpp"




#line 7 "D:\\working\\im_apps\\h264\\mpeg.hpp"

#decl idxGen(ostream<uint>   indices,
              uc<int>&        uc_size,
              uc<int>&        uc_params);
;


#decl icolor(istream<ubyte4> datain,
              ostream<half2> Yout,
              ostream<half2> CrCbout);
;


#decl pcolor(istream<ubyte4> datain,
              ostream<ubyte4> Yout,
              ostream<half2> CrCbout);
;


#decl dct(istream<half2> datain,
           istream<uhalf2> consts,
           ostream<half2> out,
           uc<uhalf2>& uc_quantizer_scale);
;


#decl idct(istream<half2> datain,
            istream<uhalf2> consts,
            ostream<half2> out,
            uc<half2>& uc_quantizer_scale);
;


#decl rle(istream<half2> Yin,
           istream<half2> CrCbin,
           istream<int> indices,
           cistream<half2> motion,
           costream<half2> out,
           uc<uint>& pframe,
           uc<uint>& quant_scale);
;


#decl difference(istream<ubyte4> curryblks,
                  istream<half2> currcblks,
                  istream<ubyte4> refyblks,
                  istream<half2> refcblks,
                  ostream<half2> diffyblks,
                  ostream<half2> diffcblks);
;


#decl correlate(istream<half2> diffyblks,
                 istream<half2> diffcblks,
                 istream<ubyte4> refyblks,
                 istream<half2> refcblks,
                 ostream<ubyte4> newrefyblks,
                 ostream<half2> newrefcblks,
                 uc<uint>& uc_pframe);
;


#decl MV2idx(cistream<half2> motion,      
              ostream<uint>   yindices,    
              ostream<uint>   crcbindices, 
              uc<int>&        uc_offsets,  
              uc<int>&        uc_mblks,    
              uc<int>&        uc_mb_width);
;


#decl blocksearch(istream<ubyte4> row0,
                   istream<ubyte4> row1,
                   istream<ubyte4> row2,
                   istream<ubyte4> mblocks,
                   costream<half2> motions,
                   uc<int>& location);
;


#decl mb_encode(istream<byte4> datain,
                 istream<half2> consts,
                 ostream<half2> color_out,
                 ostream<half2> dct_out,
                 costream<int> out);
;



#line 1 "D:/working/tools/isim/isimexe/blank_headers\\idb_undeftypes.hpp"




#line 97 "D:\\working\\im_apps\\h264\\mpeg.hpp"

#line 99 "D:\\working\\im_apps\\h264\\mpeg.hpp"
#line 3 "D:\\working\\im_apps\\h264\\idct_kc.cpp"
#line 1 "D:/working/tools/isim/isimexe/blank_headers\\idb_kernelc2.hpp"






#line 4 "D:\\working\\im_apps\\h264\\idct_kc.cpp"

;













kernel idct(istream<half2> datain,
            istream<uhalf2> consts,
            ostream<half2> out,
            uc<half2>& uc_quantizer_scale)
{
  
  half2 B1 = 0x2d412d41;        
  half2 B2 = 0x539f539f;        
  half2 B4 = 0x22a322a3;        
  half2 B5 = 0x187e187e;        

  
  expand<half2> K(8);
  K[0] = 0x5a825a82;        
  K[1] = 0x7d8a7d8a;        
  K[2] = 0x76427642;        
  K[3] = 0x6a6e6a6e;        
  K[4] = 0x5a825a82;        
  K[5] = 0x471d471d;        
  K[6] = 0x30fc30fc;        
  K[7] = 0x18f918f9;        


  half2 quant_scale = commclperm(0x8, 0, uc_quantizer_scale);
  expand<half2> quant(8);

  
  
  half2 utmp;
  consts >> utmp;
  quant[0] = lo(quant_scale*utmp);
  consts >> utmp;
  quant[1] = lo(quant_scale*utmp);
  consts >> utmp;
  quant[2] = lo(quant_scale*utmp);
  consts >> utmp;
  quant[3] = lo(quant_scale*utmp);
  consts >> utmp;
  quant[4] = lo(quant_scale*utmp);
  consts >> utmp;
  quant[5] = lo(quant_scale*utmp);
  consts >> utmp;
  quant[6] = lo(quant_scale*utmp);
  consts >> utmp;
  quant[7] = lo(quant_scale*utmp);

  
  
  
  
  

  
  uc<int> perm_a = 0x07654321;
  uc<int> perm_b = 0x10765432;
  uc<int> perm_c = 0x21076543;
  uc<int> perm_d = 0x32107654;
  uc<int> perm_e = 0x43210765;
  uc<int> perm_f = 0x54321076;
  uc<int> perm_g = 0x65432107;  

  
  int idx0 = cid();
  int idx1 = (idx0 - 1) & 7;
  int idx2 = (idx1 - 1) & 7;
  int idx3 = (idx2 - 1) & 7;
  int idx4 = (idx3 - 1) & 7;
  int idx5 = (idx4 - 1) & 7;
  int idx6 = (idx5 - 1) & 7;
  int idx7 = (idx6 - 1) & 7;


  expand<half2> in(8), y(8), q(8), s(8);
  half2 a4, a5, a6, a7, b2, b3, b5, b7, c, d, e2, e4, e5, e6, f0, f1, f2;
  half2 g, h, i, j0, j1, j2, j3, j4;

  loop_stream(datain) pipeline(1) {
    datain >> in[0];
    datain >> in[1];
    datain >> in[2];
    datain >> in[3];
    datain >> in[4];
    datain >> in[5];
    datain >> in[6];
    datain >> in[7];

    
    half2 L = 0xc000c000;
    half2 H = 0x3ff83ff8;
    q[0] = select(itocc(lo(in[0] * quant[0]) > H), H, select(itocc(lo(in[0] * quant[0]) < L), L, lo(in[0] * quant[0])));
    q[1] = select(itocc(lo(in[1] * quant[1]) > H), H, select(itocc(lo(in[1] * quant[1]) < L), L, lo(in[1] * quant[1])));
    q[2] = select(itocc(lo(in[2] * quant[2]) > H), H, select(itocc(lo(in[2] * quant[2]) < L), L, lo(in[2] * quant[2])));
    q[3] = select(itocc(lo(in[3] * quant[3]) > H), H, select(itocc(lo(in[3] * quant[3]) < L), L, lo(in[3] * quant[3])));
    q[4] = select(itocc(lo(in[4] * quant[4]) > H), H, select(itocc(lo(in[4] * quant[4]) < L), L, lo(in[4] * quant[4])));
    q[5] = select(itocc(lo(in[5] * quant[5]) > H), H, select(itocc(lo(in[5] * quant[5]) < L), L, lo(in[5] * quant[5])));
    q[6] = select(itocc(lo(in[6] * quant[6]) > H), H, select(itocc(lo(in[6] * quant[6]) < L), L, lo(in[6] * quant[6])));
    q[7] = select(itocc(lo(in[7] * quant[7]) > H), H, select(itocc(lo(in[7] * quant[7]) < L), L, lo(in[7] * quant[7])));

    y[0] = hi(mulrnd(K[0], shifta(q[0], -3)));
    y[1] = hi(mulrnd(K[1], shifta(q[1], -3)));
    y[2] = hi(mulrnd(K[2], shifta(q[2], -3)));
    y[3] = hi(mulrnd(K[3], shifta(q[3], -3)));
    y[4] = hi(mulrnd(K[4], shifta(q[4], -3)));
    y[5] = hi(mulrnd(K[5], shifta(q[5], -3)));
    y[6] = hi(mulrnd(K[6], shifta(q[6], -3)));
    y[7] = hi(mulrnd(K[7], shifta(q[7], -3)));

    a4 = y[5] - y[3];
    a5 = y[1] + y[7];
    a6 = y[1] - y[7];
    a7 = y[5] + y[3];

    b2 = y[2] - y[6];
    b3 = y[2] + y[6];
    b5 = a5 - a7;
    b7 = a5 + a7;

    c = a4 - a6;
    d = hi(mulrnd(B5, shift(c, 3)));

    e2 = hi(mulrnd(B1, shift(b2, 3)));
    e4 = d - hi(mulrnd(B2, shift(a4, 3)));
    e5 = hi(mulrnd(B1, shift(b5, 3)));
    e6 = hi(mulrnd(B4, shift(a6, 3))) - d;

    f0 = y[0] + y[4];
    f1 = y[0] - y[4];
    f2 = e2 - b3;

    g = e6 - b7;
    h = e5 - g;
    i = e4 + h;

    j0 = f0 + b3;
    j1 = f1 + f2;
    j2 = f1 - f2;
    j3 = f0 - b3;
    j4 = 0-i;

    s[0] = j0 + b7;
    s[1] = j1 + g;
    s[2] = j2 + h;
    s[3] = j3 + j4;
    s[4] = j3 - j4;
    s[5] = j2 - h;
    s[6] = j1 - g;
    s[7] = j0 - b7;

    array<half2> buf1(8);  
    array<half2> buf2(8);  

    
    buf1[0] = s[0];
    buf1[1] = s[1];
    buf1[2] = s[2];
    buf1[3] = s[3];
    buf1[4] = s[4];
    buf1[5] = s[5];
    buf1[6] = s[6];
    buf1[7] = s[7];
  
    
  
    buf2[idx0] = buf1[idx0];
    buf2[idx7] = commucperm(perm_a, buf1[idx1]);
    buf2[idx6] = commucperm(perm_b, buf1[idx2]);
    buf2[idx5] = commucperm(perm_c, buf1[idx3]);
    buf2[idx4] = commucperm(perm_d, buf1[idx4]);
    buf2[idx3] = commucperm(perm_e, buf1[idx5]);
    buf2[idx2] = commucperm(perm_f, buf1[idx6]);
    buf2[idx1] = commucperm(perm_g, buf1[idx7]);

    y[0] = hi(mulrnd(K[0], buf2[0]));
    y[1] = hi(mulrnd(K[1], buf2[1]));
    y[2] = hi(mulrnd(K[2], buf2[2]));
    y[3] = hi(mulrnd(K[3], buf2[3]));
    y[4] = hi(mulrnd(K[4], buf2[4]));
    y[5] = hi(mulrnd(K[5], buf2[5]));
    y[6] = hi(mulrnd(K[6], buf2[6]));
    y[7] = hi(mulrnd(K[7], buf2[7]));

    a4 = y[5] - y[3];
    a5 = y[1] + y[7];
    a6 = y[1] - y[7];
    a7 = y[5] + y[3];

    b2 = y[2] - y[6];
    b3 = y[2] + y[6];
    b5 = a5 - a7;
    b7 = a5 + a7;

    c = a4 - a6;
    d = hi(mulrnd(B5, shift(c, 3)));

    e2 = hi(mulrnd(B1, shift(b2, 3)));
    e4 = d - hi(mulrnd(B2, shift(a4, 3)));
    e5 = hi(mulrnd(B1, shift(b5, 3)));
    e6 = hi(mulrnd(B4, shift(a6, 3))) - d;

    f0 = y[0] + y[4];
    f1 = y[0] - y[4];
    f2 = e2 - b3;

    g = e6 - b7;
    h = e5 - g;
    i = e4 + h;

    j0 = f0 + b3;
    j1 = f1 + f2;
    j2 = f1 - f2;
    j3 = f0 - b3;
    j4 = 0-i;

    s[0] = j0 + b7;
    s[1] = j1 + g;
    s[2] = j2 + h;
    s[3] = j3 + j4;
    s[4] = j3 - j4;
    s[5] = j2 - h;
    s[6] = j1 - g;
    s[7] = j0 - b7;

    s[0] = select(itocc(s[0] > 0x00ff00ff), 0x00ff00ff, select(itocc(s[0] < 0xff00ff00), 0xff00ff00, s[0]));
    s[1] = select(itocc(s[1] > 0x00ff00ff), 0x00ff00ff, select(itocc(s[1] < 0xff00ff00), 0xff00ff00, s[1]));
    s[2] = select(itocc(s[2] > 0x00ff00ff), 0x00ff00ff, select(itocc(s[2] < 0xff00ff00), 0xff00ff00, s[2]));
    s[3] = select(itocc(s[3] > 0x00ff00ff), 0x00ff00ff, select(itocc(s[3] < 0xff00ff00), 0xff00ff00, s[3]));
    s[4] = select(itocc(s[4] > 0x00ff00ff), 0x00ff00ff, select(itocc(s[4] < 0xff00ff00), 0xff00ff00, s[4]));
    s[5] = select(itocc(s[5] > 0x00ff00ff), 0x00ff00ff, select(itocc(s[5] < 0xff00ff00), 0xff00ff00, s[5]));
    s[6] = select(itocc(s[6] > 0x00ff00ff), 0x00ff00ff, select(itocc(s[6] < 0xff00ff00), 0xff00ff00, s[6]));
    s[7] = select(itocc(s[7] > 0x00ff00ff), 0x00ff00ff, select(itocc(s[7] < 0xff00ff00), 0xff00ff00, s[7]));

    out << s[0];
    out << s[1];
    out << s[2];
    out << s[3];
    out << s[4];
    out << s[5];
    out << s[6];
    out << s[7];
  }
}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
成人久久久精品乱码一区二区三区| 色综合一区二区| 91国在线观看| 中日韩av电影| 高清不卡在线观看| 欧美精品亚洲一区二区在线播放| 亚洲国产精品激情在线观看| 久久超碰97中文字幕| 欧美丝袜丝交足nylons| 亚洲与欧洲av电影| 91精品福利视频| 亚洲一区二区三区四区在线| 91国产视频在线观看| 一区二区三区在线不卡| 日本国产一区二区| 日韩电影免费一区| 精品盗摄一区二区三区| 国产在线精品一区二区三区不卡| 欧美精品一区二区在线播放| 国产大片一区二区| 综合在线观看色| 欧美日韩一区在线| 天天av天天翘天天综合网| 欧美一区二区三区思思人| 久久草av在线| 亚洲摸摸操操av| 日韩免费高清视频| 91亚洲精品久久久蜜桃网站 | 亚洲人成网站影音先锋播放| 91社区在线播放| 亚洲精品一卡二卡| 粉嫩在线一区二区三区视频| 中文字幕一区日韩精品欧美| 欧美午夜免费电影| 高清久久久久久| 日韩av电影天堂| 亚洲国产精品传媒在线观看| 在线欧美一区二区| 国产suv精品一区二区三区| 亚洲欧美国产77777| 日韩欧美一级二级| 色综合久久久久| 看国产成人h片视频| 亚洲视频一二三| 久久久五月婷婷| 欧美视频在线一区| 色综合中文字幕国产 | 欧美午夜片在线看| 91在线视频官网| 国产在线不卡一卡二卡三卡四卡| 亚洲免费毛片网站| 中文字幕av资源一区| 久久久久久久久97黄色工厂| 欧洲精品中文字幕| 欧美亚洲高清一区| 欧美午夜片在线观看| 欧美色综合影院| av一区二区三区四区| 国产.欧美.日韩| 成a人片亚洲日本久久| 成人av电影免费在线播放| 91在线视频官网| 婷婷久久综合九色国产成人| 一色屋精品亚洲香蕉网站| 国产欧美精品日韩区二区麻豆天美| 日韩免费看网站| 国产精品视频麻豆| 亚洲免费在线看| 蜜桃视频在线观看一区二区| 麻豆精品一区二区综合av| 麻豆精品精品国产自在97香蕉| 麻豆久久久久久| 99re亚洲国产精品| 91久久精品日日躁夜夜躁欧美| 精品视频免费在线| 久久你懂得1024| 中文字幕中文乱码欧美一区二区| 国产欧美一区二区精品性色 | 五月天网站亚洲| 国产主播一区二区| 色婷婷精品久久二区二区蜜臂av | 国产一区二区在线影院| 成人91在线观看| 91精品久久久久久久久99蜜臂| 精品国产免费久久| 亚洲精品videosex极品| 理论片日本一区| 色综合视频在线观看| 日韩美女视频在线| 亚洲成年人影院| 色综合久久久久网| 国产女人水真多18毛片18精品视频| 一二三区精品视频| www.一区二区| 日韩一区二区麻豆国产| 亚洲午夜精品17c| 五月激情综合婷婷| 成人性色生活片免费看爆迷你毛片| 欧美日韩一卡二卡三卡| 国产精品每日更新在线播放网址| 久色婷婷小香蕉久久| 欧美日韩精品综合在线| 亚洲一区日韩精品中文字幕| 97久久超碰国产精品| 国产精品全国免费观看高清| 国产成人鲁色资源国产91色综| 日韩精品一区二区三区视频在线观看 | 欧美性色aⅴ视频一区日韩精品| 国产精品国产三级国产普通话99 | 欧美一区二区三区小说| 亚洲一本大道在线| 欧美精品一卡二卡| 麻豆国产一区二区| 精品少妇一区二区三区视频免付费 | 欧美日韩亚洲综合| 亚洲一区在线电影| 欧美日韩一区在线观看| 亚洲午夜精品在线| 日韩女优制服丝袜电影| 成人小视频在线| 亚洲一区在线观看免费 | 中文在线免费一区三区高中清不卡| 午夜不卡av免费| 久久久久久免费毛片精品| www.综合网.com| 一区二区三区四区不卡在线| 成人激情免费视频| 一区二区三区久久| 久久蜜桃av一区精品变态类天堂| 国产精品99久久久久| 亚洲综合久久久| 久久蜜臀中文字幕| 欧美久久一二区| a在线欧美一区| 精品一区二区三区视频在线观看| wwww国产精品欧美| 欧美日韩久久久久久| 91欧美激情一区二区三区成人| 丝袜诱惑亚洲看片| 亚洲最新视频在线播放| 国产婷婷精品av在线| 色综合亚洲欧洲| 国产精品一区二区x88av| 亚洲二区视频在线| 亚洲一区在线播放| 17c精品麻豆一区二区免费| 欧美一卡二卡在线观看| 91久久免费观看| 欧洲精品视频在线观看| 一本一本久久a久久精品综合麻豆| 六月丁香综合在线视频| 免费欧美日韩国产三级电影| 亚洲va欧美va国产va天堂影院| 亚洲欧美电影一区二区| 国产精品美女一区二区三区| 久久久久久毛片| 中文字幕乱码一区二区免费| 日韩免费观看高清完整版| 欧美变态凌虐bdsm| 欧美精品一区二区三区久久久 | 欧美精品久久天天躁| 欧美男男青年gay1069videost| 9191成人精品久久| 日韩精品一区二区三区四区视频 | 99久久久精品免费观看国产蜜| 老司机免费视频一区二区三区| 一区二区三区在线免费视频| 亚洲婷婷综合久久一本伊一区| 国产精品每日更新在线播放网址| 亚洲欧美怡红院| 天堂精品中文字幕在线| 国产精品一品二品| 91亚洲精品一区二区乱码| 欧美精品久久一区| 国产精品素人一区二区| 亚洲bt欧美bt精品777| 久久精品国产在热久久| av成人老司机| 日韩欧美在线123| 国产精品理论片在线观看| 日本在线不卡视频| 99精品欧美一区二区三区小说| 欧美久久一二三四区| 亚洲免费观看在线视频| 极品少妇xxxx偷拍精品少妇| 91丨porny丨蝌蚪视频| wwwwww.欧美系列| 久久99九九99精品| 欧美在线视频日韩| 亚洲欧洲日韩av| 国产精品综合一区二区| 91精品1区2区| 亚洲免费大片在线观看| 国产.欧美.日韩| 欧美电影一区二区三区| 中文字幕乱码日本亚洲一区二区| 韩国欧美国产一区| 欧美精品一区二区在线播放| 激情文学综合丁香| 91精品国产色综合久久不卡蜜臀 |