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

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

?? idct.c

?? MPEG4的壓縮和解壓縮代碼
?? C
字號:
/************************************************************************
 *
 *  idct.c, inverse fast DCT for tmndecode (H.263 decoder)
 *  Copyright (C) 1995, 1996  Telenor R&D, Norway
 *
 *  Contacts:
 *  Robert Danielsen                  <Robert.Danielsen@nta.no>
 *
 *  Telenor Research and Development  http://www.nta.no/brukere/DVC/
 *  P.O.Box 83                        tel.:   +47 63 84 84 00
 *  N-2007 Kjeller, Norway            fax.:   +47 63 81 00 76
 *
 *  Copyright (C) 1997  University of BC, Canada
 *  Modified by: Michael Gallant <mikeg@ee.ubc.ca>
 *               Guy Cote <guyc@ee.ubc.ca>
 *               Berna Erol <bernae@ee.ubc.ca>
 *
 *  Contacts:
 *  Michael Gallant                   <mikeg@ee.ubc.ca>
 *
 *  UBC Image Processing Laboratory   http://www.ee.ubc.ca/image
 *  2356 Main Mall                    tel.: +1 604 822 4051
 *  Vancouver BC Canada V6T1Z4        fax.: +1 604 822 5949
 *
 ************************************************************************/

/* Disclaimer of Warranty
 * 
 * These software programs are available to the user without any license fee
 * or royalty on an "as is" basis. The University of British Columbia
 * disclaims any and all warranties, whether express, implied, or
 * statuary, including any implied warranties or merchantability or of
 * fitness for a particular purpose.  In no event shall the
 * copyright-holder be liable for any incidental, punitive, or
 * consequential damages of any kind whatsoever arising from the use of
 * these programs.
 * 
 * This disclaimer of warranty extends to the user of these programs and
 * user's customers, employees, agents, transferees, successors, and
 * assigns.
 * 
 * The University of British Columbia does not represent or warrant that the
 * programs furnished hereunder are free of infringement of any
 * third-party patents.
 * 
 * Commercial implementations of H.263, including shareware, are subject to
 * royalty fees to patent holders.  Many of these patents are general
 * enough such that they are unavoidable regardless of implementation
 * design.
 * 
 */



/* based on mpeg2decode, (C) 1994, MPEG Software Simulation Group and
 * mpeg2play, (C) 1994 Stefan Eckart <stefan@lis.e-technik.tu-muenchen.de>
 * 
 */


/**********************************************************/
/* inverse two dimensional DCT, Chen-Wang algorithm       */
/* (cf. IEEE ASSP-32, pp. 803-816, Aug. 1984)             */
/* 32-bit integer arithmetic (8 bit coefficients)         */
/* 11 mults, 29 adds per DCT                              */
/* sE, 18.8.91       */
/**********************************************************/
/* coefficients extended to 12 bit for IEEE1180-1990      */
/* compliance                           sE,  2.1.94       */
/**********************************************************/

/* this code assumes >> to be a two's-complement arithmetic */
/* right shift: (-2)>>1 == -1 , (-3)>>1 == -2               */


#include "mp4_vars.h"


void init_idct ();


#define W1 2841                 /* 2048*sqrt(2)*cos(1*pi/16) */
#define W2 2676                 /* 2048*sqrt(2)*cos(2*pi/16) */
#define W3 2408                 /* 2048*sqrt(2)*cos(3*pi/16) */
#define W5 1609                 /* 2048*sqrt(2)*cos(5*pi/16) */
#define W6 1108                 /* 2048*sqrt(2)*cos(6*pi/16) */
#define W7 565                  /* 2048*sqrt(2)*cos(7*pi/16) */


/* row (horizontal) IDCT
 * 
 * 7                       pi         1 dst[k] = sum c[l] * src[l] * cos( -- *
 * ( k + - ) * l ) l=0                      8          2
 * 
 * where: c[0]    = 128 c[1..7] = 128*sqrt(2) 
*/

static void idctrow (short *blk)
{
  int x0, x1, x2, x3, x4, x5, x6, x7, x8;

  /* shortcut */
  if (!((x1 = blk[4] << 11) | (x2 = blk[6]) | (x3 = blk[2]) |
        (x4 = blk[1]) | (x5 = blk[7]) | (x6 = blk[5]) | (x7 = blk[3])))
  {
    blk[0] = blk[1] = blk[2] = blk[3] = blk[4] = blk[5] = blk[6] = blk[7] = blk[0] << 3;
    return;
  }
  x0 = (blk[0] << 11) + 128;    /* for proper rounding in the fourth stage */

  /* first stage */
  x8 = W7 * (x4 + x5);
  x4 = x8 + (W1 - W7) * x4;
  x5 = x8 - (W1 + W7) * x5;
  x8 = W3 * (x6 + x7);
  x6 = x8 - (W3 - W5) * x6;
  x7 = x8 - (W3 + W5) * x7;

  /* second stage */
  x8 = x0 + x1;
  x0 -= x1;
  x1 = W6 * (x3 + x2);
  x2 = x1 - (W2 + W6) * x2;
  x3 = x1 + (W2 - W6) * x3;
  x1 = x4 + x6;
  x4 -= x6;
  x6 = x5 + x7;
  x5 -= x7;

  /* third stage */
  x7 = x8 + x3;
  x8 -= x3;
  x3 = x0 + x2;
  x0 -= x2;
  x2 = (181 * (x4 + x5) + 128) >> 8;
  x4 = (181 * (x4 - x5) + 128) >> 8;

  /* fourth stage */
  blk[0] = (x7 + x1) >> 8;
  blk[1] = (x3 + x2) >> 8;
  blk[2] = (x0 + x4) >> 8;
  blk[3] = (x8 + x6) >> 8;
  blk[4] = (x8 - x6) >> 8;
  blk[5] = (x0 - x4) >> 8;
  blk[6] = (x3 - x2) >> 8;
  blk[7] = (x7 - x1) >> 8;
}

/* column (vertical) IDCT
 * 
 * 7                         pi         1 dst[8*k] = sum c[l] * src[8*l] *
 * cos( -- * ( k + - ) * l ) l=0                        8          2
 * 
 * where: c[0]    = 1/1024 c[1..7] = (1/1024)*sqrt(2) 
*/

static void idctcol (short *blk)
{
  int x0, x1, x2, x3, x4, x5, x6, x7, x8;

  /* shortcut */
  if (!((x1 = (blk[8 * 4] << 8)) | (x2 = blk[8 * 6]) | (x3 = blk[8 * 2]) |
        (x4 = blk[8 * 1]) | (x5 = blk[8 * 7]) | (x6 = blk[8 * 5]) | (x7 = blk[8 * 3])))
  {
    blk[8 * 0] = blk[8 * 1] = blk[8 * 2] = blk[8 * 3] = blk[8 * 4] = blk[8 * 5] = blk[8 * 6] = blk[8 * 7] =
      mp4_state->clp[(blk[8 * 0] + 32) >> 6];
    return;
  }
  x0 = (blk[8 * 0] << 8) + 8192;

  /* first stage */
  x8 = W7 * (x4 + x5) + 4;
  x4 = (x8 + (W1 - W7) * x4) >> 3;
  x5 = (x8 - (W1 + W7) * x5) >> 3;
  x8 = W3 * (x6 + x7) + 4;
  x6 = (x8 - (W3 - W5) * x6) >> 3;
  x7 = (x8 - (W3 + W5) * x7) >> 3;

  /* second stage */
  x8 = x0 + x1;
  x0 -= x1;
  x1 = W6 * (x3 + x2) + 4;
  x2 = (x1 - (W2 + W6) * x2) >> 3;
  x3 = (x1 + (W2 - W6) * x3) >> 3;
  x1 = x4 + x6;
  x4 -= x6;
  x6 = x5 + x7;
  x5 -= x7;

  /* third stage */
  x7 = x8 + x3;
  x8 -= x3;
  x3 = x0 + x2;
  x0 -= x2;
  x2 = (181 * (x4 + x5) + 128) >> 8;
  x4 = (181 * (x4 - x5) + 128) >> 8;

  /* fourth stage */
  blk[8 * 0] = mp4_state->clp[(x7 + x1) >> 14];
  blk[8 * 1] = mp4_state->clp[(x3 + x2) >> 14];
  blk[8 * 2] = mp4_state->clp[(x0 + x4) >> 14];
  blk[8 * 3] = mp4_state->clp[(x8 + x6) >> 14];
  blk[8 * 4] = mp4_state->clp[(x8 - x6) >> 14];
  blk[8 * 5] = mp4_state->clp[(x0 - x4) >> 14];
  blk[8 * 6] = mp4_state->clp[(x3 - x2) >> 14];
  blk[8 * 7] = mp4_state->clp[(x7 - x1) >> 14];
}

/* 
		two dimensional inverse discrete cosine transform 
		this is a reference implementation - no speed optimized
*/
void idct (short *block)
{
  int i;

  for (i = 0; i < 8; i++)
    idctrow (block + 8 * i);

  for (i = 0; i < 8; i++)
    idctcol (block + i);
}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
成人午夜精品一区二区三区| 欧美videofree性高清杂交| 欧美精品色一区二区三区| 欧美激情一区二区三区在线| 午夜免费久久看| 91麻豆精品秘密| 国产丝袜在线精品| 久久国产精品99精品国产| 欧美这里有精品| 亚洲免费观看高清| 成人免费视频国产在线观看| 日韩欧美电影在线| 丝袜亚洲精品中文字幕一区| 色噜噜狠狠色综合中国| 中文字幕一区二区在线观看| 处破女av一区二区| 久久久国产一区二区三区四区小说 | 性久久久久久久久久久久| 懂色一区二区三区免费观看 | 国产亚洲综合在线| 日本女优在线视频一区二区| 欧美性猛交一区二区三区精品| 国产精品久久久久久久久动漫 | 国产一区美女在线| 精品国产乱码久久久久久老虎 | 欧美成人r级一区二区三区| 丝袜美腿高跟呻吟高潮一区| 欧美日韩国产天堂| 亚洲高清久久久| 欧美日免费三级在线| 亚洲成人一区二区在线观看| 欧美性三三影院| 午夜国产不卡在线观看视频| 欧美日韩久久久| 日韩激情视频网站| 2021久久国产精品不只是精品| 激情文学综合插| 日韩一级片在线播放| 看片的网站亚洲| 久久在线观看免费| 成人午夜在线视频| 亚洲女与黑人做爰| 欧美日韩国产成人在线免费| 日本不卡一二三| 精品国产露脸精彩对白| 国产69精品久久久久毛片 | 免费观看在线色综合| 欧美mv日韩mv国产| 成人深夜在线观看| 亚洲自拍另类综合| 日韩欧美在线综合网| 国产伦精品一区二区三区免费| 国产喂奶挤奶一区二区三区| av午夜一区麻豆| 亚洲第一福利一区| 精品国产乱码久久久久久图片 | 综合自拍亚洲综合图不卡区| 在线观看视频欧美| 狠狠色丁香婷婷综合| 国产精品国产三级国产aⅴ中文| 在线亚洲人成电影网站色www| 偷拍日韩校园综合在线| 久久久不卡网国产精品一区| 91官网在线观看| 精品一区二区日韩| 一区二区在线观看免费视频播放| 欧美精品1区2区3区| 国产69精品久久久久777| 亚洲电影一区二区三区| 久久一二三国产| 欧美男女性生活在线直播观看| 国产一区二区三区av电影| 亚洲精品伦理在线| 国产欧美日产一区| 欧美一区二区三区免费观看视频| 成人美女视频在线看| 蜜臀av国产精品久久久久| 国产精品理伦片| 精品粉嫩超白一线天av| 欧美日韩三级在线| 成人福利在线看| 狠狠色丁香婷婷综合| 午夜精品久久久久久久| 国产精品电影一区二区| 精品欧美一区二区三区精品久久| 一本到高清视频免费精品| 久久国产婷婷国产香蕉| 亚洲福利一区二区| 亚洲男女一区二区三区| 国产精品私房写真福利视频| 日韩亚洲欧美在线观看| 欧美日韩国产高清一区| 在线观看日产精品| 99视频在线精品| 粉嫩久久99精品久久久久久夜| 免费日本视频一区| 天堂久久一区二区三区| 亚洲一区在线播放| 一区二区三区国产精品| 成人免费视频在线观看| 中文字幕av一区二区三区高 | 亚洲图片一区二区| 亚洲精品视频在线| 综合久久久久综合| 国产精品热久久久久夜色精品三区| 精品精品欲导航| 日韩欧美视频在线| 91麻豆精品国产自产在线| 欧美精品九九99久久| 欧美日本一区二区在线观看| 欧美色涩在线第一页| 欧美日韩国产美| 欧美日本在线视频| 日韩精品一区国产麻豆| 久久这里都是精品| 国产欧美一区视频| 中文字幕一区二区三区四区不卡| 国产欧美一区二区精品秋霞影院 | 国产suv精品一区二区6| 国产电影精品久久禁18| 成人高清视频在线| 色一区在线观看| 欧美日韩在线综合| 欧美一区二区性放荡片| 欧美xxxxxxxx| 中文字幕第一页久久| 亚洲日本在线视频观看| 亚洲午夜影视影院在线观看| 五月天网站亚洲| 国产一区二区三区在线观看免费视频| 国产精品亚洲综合一区在线观看| 成人黄色在线视频| 色就色 综合激情| 欧美一区二区三区免费观看视频| 欧美videossexotv100| 欧美国产1区2区| 亚洲综合一区在线| 美女任你摸久久| 99久久99久久精品国产片果冻 | 亚洲国产日韩a在线播放| 免费欧美日韩国产三级电影| 久久不见久久见免费视频1| 久久久久久久久久久黄色| 亚洲天堂2014| 亚洲国产裸拍裸体视频在线观看乱了 | 欧美sm极限捆绑bd| 久久精品国产精品亚洲精品| 亚洲婷婷国产精品电影人久久| 国产精品女人毛片| 国产亚洲欧美日韩俺去了| 欧美精品一区二区三区蜜桃视频| 欧美日韩高清影院| 欧美理论片在线| 4438x亚洲最大成人网| 欧美精品自拍偷拍| 777a∨成人精品桃花网| 欧美精品1区2区3区| 日韩一区二区在线播放| 精品久久久久一区二区国产| 26uuu欧美| 国产精品久久久久一区二区三区共 | 石原莉奈一区二区三区在线观看| 五月天网站亚洲| 久久99精品国产麻豆婷婷洗澡| 开心九九激情九九欧美日韩精美视频电影 | 一区二区成人在线观看| 亚洲福利视频导航| 免费美女久久99| 国产成人高清视频| 99久久99久久精品免费看蜜桃| 在线观看免费成人| 91精品国产综合久久香蕉麻豆| 欧美一级黄色片| 国产精品污网站| 亚洲电影一级片| 国产麻豆9l精品三级站| 91麻豆.com| 日韩午夜在线播放| 国产目拍亚洲精品99久久精品| 亚洲欧美日韩精品久久久久| 首页国产欧美久久| 国产精品12区| 欧美伊人久久久久久午夜久久久久| 日韩欧美国产wwwww| 亚洲视频一区二区在线观看| 亚洲一二三四久久| 国产一区二区成人久久免费影院 | 亚洲成人自拍一区| 国产另类ts人妖一区二区| 91女人视频在线观看| 日韩免费高清电影| 亚洲精品成人少妇| 国产福利一区二区三区在线视频| 欧美在线不卡视频| 日本一区二区不卡视频| 久久精品99国产精品| 91福利国产精品| 中文字幕第一区综合| 美女一区二区久久| 欧美三区免费完整视频在线观看|