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

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

?? idct.c

?? 小波變換算法
?? C
字號:

#include "dct.h"

void idct(DCTDATA * coef_block, RAWDATA * output_buf);
void idct_init(void);

/*
 * Perform dequantization and inverse DCT on one block of coefficients.
 */

static double dct_table[DCTSIZE2];

void idct(DCTDATA * coef_block, RAWDATA * output_buf)
{
double tmp0, tmp1, tmp2, tmp3, tmp4, tmp5, tmp6, tmp7;
double tmp10, tmp11, tmp12, tmp13;
double z5, z10, z11, z12, z13;
DCTDATA * inptr;
RAWDATA * outptr;
double * quantptr;
double * wsptr;
int ctr;
double workspace[DCTSIZE2]; /* buffers data between passes */

  /* Pass 1: process columns from input, store into work array. */

  quantptr = dct_table;
  inptr = coef_block;
  wsptr = workspace;

  for (ctr = DCTSIZE; ctr > 0; ctr--) {
    /* Even part */

    tmp0 = inptr[DCTSIZE*0] *( quantptr[DCTSIZE*0]);
    tmp1 = inptr[DCTSIZE*2] *( quantptr[DCTSIZE*2]);
    tmp2 = inptr[DCTSIZE*4] *( quantptr[DCTSIZE*4]);
    tmp3 = inptr[DCTSIZE*6] *( quantptr[DCTSIZE*6]);

    tmp10 = tmp0 + tmp2;	/* phase 3 */
    tmp11 = tmp0 - tmp2;

    tmp13 = tmp1 + tmp3;	/* phases 5-3 */
    tmp12 = (tmp1 - tmp3) * ((double) 1.414213562) - tmp13; /* 2*c4 */

    tmp0 = tmp10 + tmp13;	/* phase 2 */
    tmp3 = tmp10 - tmp13;
    tmp1 = tmp11 + tmp12;
    tmp2 = tmp11 - tmp12;
    
    /* Odd part */

    tmp4 = inptr[DCTSIZE*1]*( quantptr[DCTSIZE*1]);
    tmp5 = inptr[DCTSIZE*3]*( quantptr[DCTSIZE*3]);
    tmp6 = inptr[DCTSIZE*5]*( quantptr[DCTSIZE*5]);
    tmp7 = inptr[DCTSIZE*7]*( quantptr[DCTSIZE*7]);

    z13 = tmp6 + tmp5;		/* phase 6 */
    z10 = tmp6 - tmp5;
    z11 = tmp4 + tmp7;
    z12 = tmp4 - tmp7;

    tmp7 = z11 + z13;		/* phase 5 */
    tmp11 = (z11 - z13) * ((double) 1.414213562); /* 2*c4 */

    z5 = (z10 + z12) * ((double) 1.847759065); /* 2*c2 */
    tmp10 = ((double) 1.082392200) * z12 - z5; /* 2*(c2-c6) */
    tmp12 = ((double) -2.613125930) * z10 + z5; /* -2*(c2+c6) */

    tmp6 = tmp12 - tmp7;	/* phase 2 */
    tmp5 = tmp11 - tmp6;
    tmp4 = tmp10 + tmp5;

    wsptr[DCTSIZE*0] = tmp0 + tmp7;
    wsptr[DCTSIZE*7] = tmp0 - tmp7;
    wsptr[DCTSIZE*1] = tmp1 + tmp6;
    wsptr[DCTSIZE*6] = tmp1 - tmp6;
    wsptr[DCTSIZE*2] = tmp2 + tmp5;
    wsptr[DCTSIZE*5] = tmp2 - tmp5;
    wsptr[DCTSIZE*4] = tmp3 + tmp4;
    wsptr[DCTSIZE*3] = tmp3 - tmp4;

    inptr++;			/* advance pointers to next column */
    quantptr++;
    wsptr++;
  }
  
  /* Pass 2: process rows from work array, store into output array. */
  /* Note that we must descale the results by a factor of 8 == 2**3. */

  wsptr = workspace;
  outptr = output_buf;
  for (ctr = 0; ctr < DCTSIZE; ctr++) {
    
    /* Even part */

    tmp10 = wsptr[0] + wsptr[4];
    tmp11 = wsptr[0] - wsptr[4];

    tmp13 = wsptr[2] + wsptr[6];
    tmp12 = (wsptr[2] - wsptr[6]) * ((double) 1.414213562) - tmp13;

    tmp0 = tmp10 + tmp13;
    tmp3 = tmp10 - tmp13;
    tmp1 = tmp11 + tmp12;
    tmp2 = tmp11 - tmp12;

    /* Odd part */

    z13 = wsptr[5] + wsptr[3];
    z10 = wsptr[5] - wsptr[3];
    z11 = wsptr[1] + wsptr[7];
    z12 = wsptr[1] - wsptr[7];

    tmp7 = z11 + z13;
    tmp11 = (z11 - z13) * ((double) 1.414213562);

    z5 = (z10 + z12) * ((double) 1.847759065); /* 2*c2 */
    tmp10 = ((double) 1.082392200) * z12 - z5; /* 2*(c2-c6) */
    tmp12 = ((double) -2.613125930) * z10 + z5; /* -2*(c2+c6) */

    tmp6 = tmp12 - tmp7;
    tmp5 = tmp11 - tmp6;
    tmp4 = tmp10 + tmp5;

    /* Final output stage: scale down by a factor of 8 and range-limit */

#define DESCALE(x)	(((x) + 4)>>3)

    outptr[0] = ((int) DESCALE((int) (tmp0 + tmp7)) );
    outptr[7] = ((int) DESCALE((int) (tmp0 - tmp7)) );
    outptr[1] = ((int) DESCALE((int) (tmp1 + tmp6)) );
    outptr[6] = ((int) DESCALE((int) (tmp1 - tmp6)) );
    outptr[2] = ((int) DESCALE((int) (tmp2 + tmp5)) );
    outptr[5] = ((int) DESCALE((int) (tmp2 - tmp5)) );
    outptr[4] = ((int) DESCALE((int) (tmp3 + tmp4)) );
    outptr[3] = ((int) DESCALE((int) (tmp3 - tmp4)) );
    
	outptr += DCTSIZE;
    wsptr += DCTSIZE;		/* advance pointer to next row */
	}
}

void idct_init(void)
{
int i;
int row, col;
static const double aanscalefactor[DCTSIZE] = {
	1.0, 1.387039845, 1.306562965, 1.175875602,
	1.0, 0.785694958, 0.541196100, 0.275899379
};

	/* For float AA&N IDCT method, multipliers are equal to quantization
	 * coefficients scaled by scalefactor[row]*scalefactor[col], where
	 *   scalefactor[0] = 1
	 *   scalefactor[k] = cos(k*PI/16) * sqrt(2)    for k=1..7
	 */

	i = 0;
	for (row = 0; row < DCTSIZE; row++) {
	  for (col = 0; col < DCTSIZE; col++) {
	    dct_table[i] = ((double) aanscalefactor[row] * aanscalefactor[col]);
	    i++;
	  }
	}
}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
蜜乳av一区二区| 色综合av在线| 一本高清dvd不卡在线观看| 在线综合视频播放| 1区2区3区欧美| 久久黄色级2电影| 欧美日韩免费不卡视频一区二区三区| 国产午夜三级一区二区三| 午夜精品福利在线| 91亚洲午夜精品久久久久久| 国产亚洲一区二区在线观看| 日韩国产高清影视| 欧美自拍丝袜亚洲| 最新中文字幕一区二区三区| 国产又黄又大久久| 日韩免费观看高清完整版在线观看| 亚洲精品一卡二卡| jizzjizzjizz欧美| 亚洲国产精品ⅴa在线观看| 蜜臀精品一区二区三区在线观看 | 亚洲美女少妇撒尿| 国产精品一区二区三区乱码| 日韩你懂的在线播放| 丝袜脚交一区二区| 欧美日韩第一区日日骚| 一级中文字幕一区二区| 色噜噜狠狠成人中文综合| 国产精品人妖ts系列视频| 国产乱码精品一品二品| 精品国产伦一区二区三区观看方式 | 欧美日韩国产bt| 亚洲一区av在线| 欧美亚洲一区三区| 亚洲一区av在线| 欧美性三三影院| 亚洲va在线va天堂| 在线亚洲高清视频| 午夜精品在线看| 欧美精品v日韩精品v韩国精品v| 亚洲国产精品麻豆| 7777精品久久久大香线蕉| 亚洲成av人片一区二区梦乃| 欧美精品第一页| 久久不见久久见免费视频1| 2020国产精品| 成人av午夜影院| 亚洲精品中文在线影院| 欧美日韩一区在线观看| 免费在线看一区| 久久亚洲一级片| av在线不卡免费看| 亚洲一区在线观看视频| 欧美一区二区三区电影| 国产在线看一区| 国产精品麻豆一区二区| 日本韩国一区二区三区视频| 日精品一区二区| 久久久久国产精品麻豆ai换脸 | 欧美日韩亚洲综合一区 | 日韩欧美一二区| 国产成人精品三级麻豆| 最新热久久免费视频| 91精品国产综合久久精品 | 国产精品午夜在线观看| 99re66热这里只有精品3直播| 亚洲第一精品在线| 精品国产sm最大网站| 91丨九色丨尤物| 日本不卡免费在线视频| 国产精品美女久久久久av爽李琼| 欧美无乱码久久久免费午夜一区| 激情图区综合网| 亚洲精品伦理在线| 亚洲精品一区二区在线观看| 色欲综合视频天天天| 国产一区二区影院| 一区二区三区欧美激情| 久久久久国产精品人| 欧美人xxxx| 99国产欧美另类久久久精品 | eeuss鲁片一区二区三区| 亚洲chinese男男1069| 中文字幕av一区二区三区免费看| 91麻豆精品国产91久久久更新时间 | 一本一道久久a久久精品| 蜜臀va亚洲va欧美va天堂| 一区二区三区影院| 国产日韩精品一区二区三区| 欧美日韩国产综合草草| www.日韩精品| 国产福利一区二区三区视频在线| 午夜久久久影院| 一区二区在线观看免费视频播放| 久久久精品免费观看| 日韩午夜电影av| 欧美三级一区二区| 91理论电影在线观看| 国产精品亚洲午夜一区二区三区 | 色综合婷婷久久| 国产精品自拍毛片| 国内精品国产三级国产a久久| 丝袜亚洲另类欧美| 夜夜精品浪潮av一区二区三区| 欧美激情一区二区三区不卡 | 国产一区在线观看视频| 日韩电影一区二区三区四区| 亚洲成人av中文| 亚洲综合区在线| 亚洲综合小说图片| 亚洲一区av在线| 亚洲电影第三页| 亚洲综合视频在线观看| 一区二区三区加勒比av| 一个色在线综合| 亚洲一级不卡视频| 午夜电影一区二区三区| 午夜日韩在线电影| 日本免费在线视频不卡一不卡二| 五月综合激情网| 青青草视频一区| 蜜臀av在线播放一区二区三区| 蜜臀av性久久久久蜜臀aⅴ四虎| heyzo一本久久综合| 成人永久免费视频| 成人av一区二区三区| 一本色道久久综合狠狠躁的推荐| 一道本成人在线| 欧美日韩一区二区三区视频| 欧美精品v日韩精品v韩国精品v| 日韩视频在线一区二区| 精品人在线二区三区| 久久精品欧美日韩精品| 综合在线观看色| 午夜精品福利一区二区三区蜜桃| 日本在线不卡一区| 国产成人午夜高潮毛片| 91在线云播放| 欧美一区二区三区视频在线| 精品国偷自产国产一区| 国产精品久久久久婷婷| 亚洲最新视频在线观看| 蜜臀99久久精品久久久久久软件 | 中文字幕成人网| 一区二区三区四区乱视频| 日韩在线一区二区| 懂色av中文一区二区三区| 色国产精品一区在线观看| 欧美一级黄色录像| 亚洲天天做日日做天天谢日日欢 | 亚洲人成精品久久久久久| 亚洲18色成人| 国产成人精品1024| 欧美日韩亚洲综合在线 欧美亚洲特黄一级| 日韩一级在线观看| 综合久久久久久| 毛片基地黄久久久久久天堂| 99re8在线精品视频免费播放| 欧美肥妇毛茸茸| 亚洲欧洲精品天堂一级| 免费成人你懂的| 色视频欧美一区二区三区| 日韩亚洲欧美高清| 亚洲男人的天堂一区二区| 老司机午夜精品| 欧美在线三级电影| 中文字幕av一区二区三区| 亚洲福利一区二区三区| 成人小视频在线观看| 4438亚洲最大| 亚洲精品国产一区二区精华液| 久久国产生活片100| 欧美视频一区在线| 亚洲欧洲成人av每日更新| 精品无人码麻豆乱码1区2区| 在线观看日韩av先锋影音电影院| www国产成人免费观看视频 深夜成人网| 亚洲综合在线五月| 成人亚洲精品久久久久软件| 精品噜噜噜噜久久久久久久久试看| 一区二区三区蜜桃网| av高清久久久| 国产欧美日韩另类一区| 黄页网站大全一区二区| 欧美日韩国产bt| 香蕉成人伊视频在线观看| 99久久精品国产一区二区三区| 欧美精品一区二区三区蜜臀| 日本免费新一区视频| 欧美日韩精品一区视频| 亚洲一级电影视频| 欧美三级乱人伦电影| 夜夜操天天操亚洲| 色噜噜久久综合| 亚洲欧美色图小说| 91蝌蚪porny九色| 亚洲天堂成人在线观看| 99国产精品久久久| 日韩伦理电影网| 色综合中文综合网| 欧美欧美欧美欧美首页|