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

? 歡迎來(lái)到蟲(chóng)蟲(chóng)下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲(chóng)蟲(chóng)下載站

?? c_mp3.txt

?? c語(yǔ)言
?? TXT
字號(hào):
/* Fast Inverse DCT implemented using Lee's algorithm */
/* Bjorn Wesen 1997 */

#include "mp3dec.h"

/*

  The DCT matrix for N values is defined as:

  D(i,j) = cos((2*j+1)*i*PI/(2*N))

  Lee's fast-DCT algorithm, as used here, needs an 8-value DCT
  and an 16-value DCT matrix.

*/

#ifdef USE_DATA
#include "fastsb_A8.h"
#include "fastsb_B8.h"
#include "fastsb_B16.h"
#else

static mpfloat A16[16][16], A8[8][8];       /* DCT matrix         */
static mpfloat G16[16][16], G8[8][8];       /* Output butterfly   */
static mpfloat H16[16][16], H8[8][8];       /* Scaling            */

static mpfloat B16[16][16], B8[8][8];       /* B = G * DCT * H    */

#if 0
static mpfloat A32[32][32];
#endif

void matrix_mul16(mpfloat in1[16][16],
    mpfloat in2[16][16],
    mpfloat out[16][16]);

void matrix_mul8(mpfloat in1[8][8],
   mpfloat in2[8][8],
   mpfloat out[8][8]);

void
fast_idct_init()
{
    int i,j;
    mpfloat t16[16][16], t8[8][8];

#if 0
    for(i = 0; i < 32; i++)
 for(j = 0; j < 32; j++)
     A32[i][j] = cos((2*j+1)*i*PI/64);
#endif

    /* create the 16 matrixes */

    for(i = 0; i < 16; i++) {
 for(j = 0; j < 16; j++) {
     A16[i][j] = cos((2*j+1)*i*PI/32);
     if(i == j j == (i + 1))
  G16[i][j] = 1.0f;
     else
  G16[i][j] = 0.0f;
     if(i == j)
  H16[i][j] = 1.0f/(2*cos((2*i+1)*PI/64));
     else
  H16[i][j] = 0.0;
 }
    }

    /* create the 8 matrixes */

    for(i = 0; i < 8; i++) {
 for(j = 0; j < 8; j++) {
     A8[i][j] = cos((2*j+1)*i*PI/16);
     if(i == j j == (i + 1))
  G8[i][j] = 1.0f;
     else
  G8[i][j] = 0.0f;
     if(i == j)
  H8[i][j] = 1.0f/(2*cos((2*i+1)*PI/32));
     else
  H8[i][j] = 0.0f;
 }
    }

    /* generate the B matrixes */

    matrix_mul16(A16, H16, t16);
    matrix_mul16(G16, t16, B16);

    matrix_mul8(A8, H8, t8);
    matrix_mul8(G8, t8, B8);

#ifdef MAKE_DATA
    make_data_file_2d("fastsb_A8.h", "A8", &A8[0][0], 8, 8);
    make_data_file_2d("fastsb_B8.h", "B8", &B8[0][0], 8, 8);
    make_data_file_2d("fastsb_B16.h", "B16", &B16[0][0], 16, 16);
#endif
}

#endif

/* This is a two-level implementation of Lee's fast-DCT algorithm */
/* 
   The 32 input values are split in two 16-value vectors using an
   even butterfly and an odd butterfly. The odd values are taken
   through Lee's odd path using a 16x16 DCT matrix (A16) and appropriate
   scaling (G16*A16*H16). The even values are further split into
   two 8-value vectors using even and odd butterflies into ee and eo.
   The ee values are fed through an 8x8 DCT matrix (A8) while the eo
   values are fed through the odd path using G8*A8*H8.

   This two-level configuration uses 384 muls and 432 adds, compared
   to the direct 32x32 DCT which uses 1024 muls and 992 adds.
*/

#ifndef USE_C3X_ASM
void
fast_idct(mpfloat *in, mpfloat *out)
{
    mpfloat even[16], odd[16], ee[8], eo[8];
    mpfloat s1, s2;
    mpfloat t[32];
    int i, j;

#if 0
    /* direct 32x32 idct */

    for(i = 0; i < 32; i++) {
 s1 = 0.0;
 for(j = 0; j < 32; j++)
     s1 += in[j] * A32[i][j];
 t[i] = s1;
    }
#endif

    /* input butterflies - level 1 */
    /* 32 adds */

    for(i = 0; i < 16; i++) {
 even[i] = in[i] + in[31-i];
 odd[i] = in[i] - in[31-i];
    }

    /* input butterflies - level 2 */
    /* 16 adds */

    for(i = 0; i < 8; i++) {
 ee[i] = even[i] + even[15-i];
 eo[i] = even[i] - even[15-i];
    }

    /* multiply the even_even vector (ee) with the ee matrix (A8) */
    /* multiply the even_odd vector (eo) with the eo matrix (B8) */
    /* 128 muls, 128 adds */

    for(i = 0; i < 8; i++) {
 s1 = 0.0;
 s2 = 0.0;
 for(j = 0; j < 8; j += 2) {
     s1 += A8[i][j] * ee[j] +
  A8[i][j+1] * ee[j+1];
     s2 += B8[i][j] * eo[j] +
  B8[i][j+1] * eo[j+1];
 }
 ISCALE(s1);
 t[i*4] = s1;
 ISCALE(s2);
 t[i*4+2] = s2;
    }

#if 0
    /* multiply the even vector (even) with the even matrix (A16) */
    /* JUST FOR TESTING if we only want to use a 1-level Lee */

    for(i = 0; i < 16; i++) {
 s1 = 0.0;
 for(j = 0; j < 16; j++) {
     s1 += A16[i][j] * even[j];
 }
 ISCALE(s1);
 t[i*2] = s1;
    }
#endif

    /* multiply the odd vector (odd) with the odd matrix (B16) */
    /* 256 muls, 256 adds */

    for(i = 0; i < 16; i++) {
 s1 = 0.0;
 for(j = 0; j < 16; j += 4) {
     s1 += B16[i][j] * odd[j] +
  B16[i][j+1] * odd[j+1] +
  B16[i][j+2] * odd[j+2] +
  B16[i][j+3] * odd[j+3];
 }
 ISCALE(s1);
 t[i*2+1] = s1;
    }

    /* the output vector t now is expanded to 64 values using the
       symmetric property of the cosinus function */

    for(i = 0; i < 16; i++) {
 out[i] = t[i+16];
 out[i+17] = -t[31-i];
 out[i+32] = -t[16-i];
 out[i+48] = -t[i];
    }
    out[16] = 0.0;
}
#endif

#ifndef USE_DATA
void matrix_mul16(mpfloat in1[16][16],
    mpfloat in2[16][16],
    mpfloat out[16][16])
{
    int i,j,z;

    for(i = 0; i < 16; i++) {
 for(j = 0; j < 16; j++) {
     out[i][j] = 0.0;
     for(z = 0; z < 16; z++)
  out[i][j] += in1[i][z] * in2[z][j];
     ISCALE(out[i][j]);
 }
    }
}

void matrix_mul8(mpfloat in1[8][8],
   mpfloat in2[8][8],
   mpfloat out[8][8])
{
    int i,j,z;

    for(i = 0; i < 8; i++) {
 for(j = 0; j < 8; j++) {
     out[i][j] = 0.0;
     for(z = 0; z < 8; z++)
  out[i][j] += in1[i][z] * in2[z][j];
     ISCALE(out[i][j]);
 }
    }
}
#endif

?? 快捷鍵說(shuō)明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號(hào) Ctrl + =
減小字號(hào) Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国产福利视频一区二区三区| 日本一区二区视频在线| 亚洲午夜影视影院在线观看| 成人的网站免费观看| 国产精品视频一二| 国产91精品一区二区| 国产精品乱码久久久久久| 成人av网在线| 一区二区三区免费看视频| 欧美日韩一区 二区 三区 久久精品| 亚洲男人的天堂网| 欧美三区在线观看| 久久精品国产第一区二区三区| 久久这里只精品最新地址| 成人小视频在线| 亚洲伦理在线精品| 欧美视频一区二区在线观看| 亚洲综合色丁香婷婷六月图片| 欧美日韩中文字幕一区| 日韩一区欧美小说| 欧美日韩国产天堂| 精品一区二区免费| 91精品麻豆日日躁夜夜躁| 国产一区二区三区在线看麻豆| 久久久久国产精品人| 99视频热这里只有精品免费| 亚洲国产精品一区二区www在线| 欧美日韩国产高清一区| 经典三级一区二区| 亚洲精品少妇30p| 日韩一卡二卡三卡国产欧美| 老司机精品视频导航| 国产精品理论在线观看| 欧美在线免费观看亚洲| 国产精品一级黄| 午夜电影一区二区三区| 欧美r级电影在线观看| 国产激情偷乱视频一区二区三区| 亚洲欧美日本韩国| 欧美成人综合网站| 国产一区二区看久久| 午夜久久电影网| 久久精品视频一区| 欧美三级电影在线观看| 国产91丝袜在线播放0| 五月天激情小说综合| 欧美国产丝袜视频| 欧美肥胖老妇做爰| 91亚洲精品一区二区乱码| 久久99热这里只有精品| 亚洲高清视频中文字幕| 最新国产成人在线观看| 久久亚洲综合av| 欧美老肥妇做.爰bbww视频| 成人免费毛片aaaaa**| 日韩av一区二区三区四区| 亚洲女厕所小便bbb| 久久久国产精品午夜一区ai换脸| 色综合天天性综合| 美女mm1313爽爽久久久蜜臀| 樱花草国产18久久久久| 国产精品久久久久久久久免费樱桃 | 欧美成人伊人久久综合网| 色94色欧美sute亚洲线路一ni| 国产成人免费在线观看| 美女性感视频久久| 人人爽香蕉精品| 五月婷婷综合激情| 亚洲最新视频在线观看| 国产精品久久久久久久久图文区 | 日韩一区和二区| 色综合久久六月婷婷中文字幕| 国产91在线看| 国产福利精品导航| 国精产品一区一区三区mba视频| 免费成人在线播放| 图片区小说区国产精品视频 | 日精品一区二区三区| 亚洲视频免费在线观看| 国产精品每日更新| 国产精品欧美一区喷水| 亚洲天堂免费看| 亚洲少妇最新在线视频| 亚洲视频中文字幕| 亚洲自拍偷拍麻豆| 日韩成人伦理电影在线观看| 免费成人在线观看视频| 黄色资源网久久资源365| 国产主播一区二区三区| 国产高清成人在线| 99久久久免费精品国产一区二区| 91麻豆成人久久精品二区三区| 色94色欧美sute亚洲线路一久| 欧美日韩精品高清| 欧美一区二区在线观看| 精品国产青草久久久久福利| 久久久久久久综合日本| 国产精品私房写真福利视频| 一区二区三区欧美在线观看| 亚洲va欧美va人人爽午夜| 日本伊人色综合网| 国产精品一区二区三区网站| 99久久99久久免费精品蜜臀| 在线观看免费一区| 欧美一区二区在线免费播放| 久久久久国产成人精品亚洲午夜| 国产精品高潮呻吟| 亚洲欧美日韩国产手机在线| 亚洲一区二区在线免费看| 日本美女视频一区二区| 国产综合久久久久影院| www.久久精品| 91麻豆高清视频| 日韩一级片网址| 国产精品国产三级国产普通话99 | 99精品欧美一区| 88在线观看91蜜桃国自产| 亚洲精品一区二区三区99| 国产精品福利一区| 日韩成人一区二区| 成熟亚洲日本毛茸茸凸凹| 欧美三级日韩在线| 久久先锋资源网| 亚洲夂夂婷婷色拍ww47| 国精品**一区二区三区在线蜜桃| 色婷婷亚洲一区二区三区| 日韩视频在线永久播放| 日韩伦理电影网| 久久狠狠亚洲综合| 在线观看中文字幕不卡| 精品成人佐山爱一区二区| 亚洲精品久久7777| 国产乱国产乱300精品| 欧美日精品一区视频| 欧美韩日一区二区三区四区| 麻豆精品精品国产自在97香蕉| 成人丝袜18视频在线观看| 欧美一区二区三区影视| 一区二区三区欧美日| 成人的网站免费观看| 精品sm捆绑视频| 日韩成人一区二区三区在线观看| 99久久精品国产毛片| 国产欧美一二三区| 美女视频黄免费的久久| 欧美色综合网站| 中文字幕一区二| 国产成人精品影视| 久久一区二区三区四区| 麻豆一区二区三| 在线成人av网站| 一区二区免费视频| 99re这里只有精品首页| 国产日韩欧美精品综合| 精品在线视频一区| 欧美精品视频www在线观看| 亚洲欧美日韩电影| 91色在线porny| 国产精品久久99| 成人高清免费观看| 国产精品二三区| 99麻豆久久久国产精品免费优播| 国产婷婷精品av在线| 国产伦精品一区二区三区在线观看 | 裸体歌舞表演一区二区| 欧美一区中文字幕| 日本女人一区二区三区| 欧美日韩国产精选| 日韩精品91亚洲二区在线观看| 欧美视频一区二区三区四区| 亚洲精品中文字幕在线观看| 91免费小视频| 亚洲男女一区二区三区| 色哟哟一区二区三区| 一区二区三区日韩欧美精品| 91精品福利视频| 性感美女极品91精品| 欧美一区二区三区免费视频| 日韩成人精品在线观看| 精品国产一区二区三区不卡| 国产一二精品视频| 中文字幕欧美国产| 不卡视频在线看| 亚洲午夜免费视频| 欧美一级搡bbbb搡bbbb| 久久国产成人午夜av影院| www久久精品| 成人视屏免费看| 亚洲欧美日韩国产中文在线| 欧美日韩三级一区二区| 青青草伊人久久| 久久久久久久久久久电影| 成人aaaa免费全部观看| 悠悠色在线精品| 69堂精品视频| 成人小视频免费观看| 亚洲图片欧美色图| 精品国内片67194| jlzzjlzz国产精品久久| 亚洲一二三专区|