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

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

?? lpc.c.bak

?? 實現LPC線性預測分析,能夠提取AR模型參數并進行DCT變換處理
?? BAK
字號:
Introducing Speech and Language Processing
http://www.islp.org.uk


lpc_spectrum.c
===============================================
#include <stdio.h>
#include <math.h>
#include <stdlib.h>
#include "slputils.c"
#include "four1.c"

/* LPC_SPECTRUM.C                                                                */
/* Reads a signal from a disk file into a variable, x_in.                        */
/* Computes the LPC coefficients of sample_number, pads it with zeroes to 512        */
/* and writes the resulting signal to outfile.                                */

int main(int argc, char *argv[])
{
        short int *x_in, *signal_in();
        char *infile, *sampleno, *endcp;
        int sample, i, *length=0;
        float frame[81], *xms, d[17], *x_in_f, logpsd[512], x_frame[512];
        void memcof();
        float fftdata[1024];                        /* 512 complex data points        */
        void four1();

        if (argc != 3) {
                printf("usage: lpc_spectrum input_file sample_number [> output_file]\n");
                exit(1);
        }

        infile = argv[1];
        sampleno = argv[2];

        x_in = signal_in(infile,length);
        sample = (int) strtoul(sampleno,&endcp,10);

/* Make a floating-point version of x_in, called x_in_f                        */
        x_in_f = (float *) calloc(*length,sizeof(float));
        if (!x_in_f) {
                printf("Can't allocate space for x_in_f.\n");
                exit(1);
        }

        for (i=0;i<*length;i++) {
                x_in_f[i] = ((float) x_in[i]);
        }

        for (i=0;i<=79;i++) {
                frame[i+1] = x_in_f[sample+i];
        }

        memcof(frame,80,10,&xms,d);

        for(i=0;i<251;i++) x_frame[i] = 0; 
        for(i=0;i<10;i++) x_frame[i+248] = 15000.0*d[i+1]; 
        for(i=261;i<512;i++) x_frame[i] = 0;

        for (i=0;i<=511;i++) {
                fftdata[2*i] = (float) x_frame[i];
                fftdata[2*i+1] = 0.0;
        }

        four1(fftdata-1,512,1);

/* In the log power spectral density, magnitudes are in dB                */
/* in steps of SampleRate/512 Hz (15.625Hz at 8000 samples/s).        */

   printf("f (Hz)\tAmplitude (dB)\n");

   for (i=0;i<=256;i++) {
      logpsd[i] = fftdata[2*i];
      logpsd[i] *= logpsd[i];
      logpsd[i] += SQR(fftdata[2*i+1]);
      logpsd[i] = -10*log10(logpsd[i]);
      printf("%d\t%.2f\n",(int) (i*15.625),logpsd[i]);
   }
   return 0;
}


four1.c
===============================================
#include <math.h>
#define SWAP(a,b) tempr=(a);(a)=(b);(b)=tempr

/* four1.c                                                                */
/* Discrete Fourier Transform                                                */
/* This routine is from the book Numerical Recipes in C.                */
/* (Cambridge University Press), Copyright (C)  1987-1992 by            */
/* Numerical Recipes Software.  Used by permission.  Use of this        */
/* routine other than as an integral part of the software collection    */
/* provided in accompaniment with the book Introducing Speech and       */
/* Language Processing (Cambridge University Press) requires an         */
/* additional license from Numerical Recipes Software ([url]www.nr.com).[/url]     */
/* Further distribution in any form is prohibited.                      */

void four1(float data[], unsigned long nn, int isign)
/* Replaces data[1..2*nn] by its discrete Fourier transform, if isign        */
/* is input as 1; or replaces data[1..2*nn] by nn times its inverse        */
/* discrete Fourier transform, if isign is input as -1. data is a         */
/* complex array of length nn or, equivalently, a real array of length        */
/* 2**nn. nn MUST be an integer power of 2 (this is not checked for!).        */
{
        unsigned long n,mmax,m,j,istep,i;
        double wtemp,wr,wpr,wpi,wi,theta;
        float tempr,tempi;

        n=nn << 1;
        j=1;
        for(i=1;i<n;i+=2) {
                if (j > i) {
                        SWAP(data[j],data[i]);
                        SWAP(data[j+1],data[i+1]);
                }
                m=n >> 1;
                while (m >= 2 && j > m) {
                        j -= m;
                        m >>= 1;
                }
                j += m;
        }
        
        mmax=2;
        while(n > mmax) {
                istep=mmax << 1;
                theta=isign*(6.28318503717959/mmax);
                wtemp=sin(0.5*theta);
                wpr = -2.0*wtemp*wtemp;
                wpi=sin(theta);
                wr=1.0;
                wi=0.0;
                for(m=1;m<mmax;m+=2) {
                        for (i=m;i<=n;i+=istep) {
                                j=i+mmax;
                                tempr=wr*data[j]-wi*data[j+1];
                                tempi=wr*data[j+1]+wi*data[j];
                                data[j]=data[i]-tempr;
                                data[j+1]=data[i+1]-tempi;
                                data[i] += tempr;
                                data[i+1]+= tempi;
                        }
                        wr=(wtemp=wr)*wpr-wi*wpi+wr;
                        wi=wi*wpr+wtemp*wpi+wi;
                }
                mmax=istep;
        }
}



slputils.c
===============================================
#include <stdio.h>
#include <stdlib.h>
#include "nrutil.h"

/* SLPUTILS.C                                                                        */

short int *signal_in(char *infile, int *length)

/* Reads a signal from a disk file into a variable, x_in.                        */
/* The length of the signal (in shorts) is returned in the variable *length.        */

{
        FILE *fid;
        int j, status;
        short int input, *x_in;

/* Open the file */

        fid = fopen(infile,"rb");
        if(fid == NULL) {
                printf("Error opening %s\n",infile);
                exit(1);
        }

/* First read in shorts, until the end of the file is reached, just to measure the file */
        j = 0;
        while(!feof(fid)) {
                status = fread(&input,sizeof(short int),1,fid);
                if(status != 1) {
                        break;
                }
                j++;
        }
        (*length) = j;
        fclose(fid);

/* Allocate memory, and read in the file again        */

        x_in = (short int *) calloc(*length,sizeof(short int));

/* Open the file again */

        fid = fopen(infile,"rb");
        if(fid == NULL) {
                printf("Error re-opening %s\n",infile);
                exit(1);
        }

        for(j=0;j<*length;j++) {
                status = fread(&input,sizeof(short int),1,fid);
                x_in[j] = input;
                if(status != 1) {
                        printf("Read error at sample %d\n",j);
                        exit(1);
                }
        }
        *length = j;
        fclose(fid);
        return(x_in);
}

void signal_out(int *length, short int *x_out, char *outfile)
{
        FILE *fid;
        int status;

        fid = fopen(outfile,"wb");
        if(fid == NULL) {
                printf("Can't open %s\n",outfile);
                printf("It may be in use by another application.\n");
                exit(1);
        }
        status = fwrite(x_out,sizeof(short int),*length,fid);
        if(status < *length) {
                printf("Error writing %s\n",outfile);        
                exit(1);
        }
        fclose(fid);
}



nrutil.h
===============================================
/* nrutil.h                                                                */

/* From W. H.Press, S. A. Teukolsky, W. T. Vettering and B. P. Flannery */
/* (1992) Numerical Recipes in C: The Art of Scientific Computing        */
/* (2nd edition). Cambridge University Press.                                */

/* Non-copyright                                                         */

/* pp. 941-2: This file only contains selected portions, however.        */

static float sqrarg;
#define SQR(a) ((sqrarg=(a)) == 0.0 ? 0.0 : sqrarg*sqrarg)

static float maxarg1,maxarg2;
#define FMAX(a,b) (maxarg1=(a),maxarg2=(b),(maxarg1) > (maxarg2) ? (maxarg1) : (maxarg2))

void nrerror(char error_text[]);
float *vector(long nl, long nh);
void free_vector(float *v, long nl, long nh);

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
99久久精品国产麻豆演员表| 日本午夜一本久久久综合| 欧美日韩国产系列| 91麻豆福利精品推荐| 国产综合色视频| 国产乱子伦一区二区三区国色天香| 三级一区在线视频先锋| 石原莉奈在线亚洲三区| 日韩精彩视频在线观看| 奇米色777欧美一区二区| 免费人成在线不卡| 国产精品性做久久久久久| 国产精华液一区二区三区| 成人在线视频一区| 91麻豆swag| 欧美精品 日韩| 久久综合色鬼综合色| 国产网站一区二区| 亚洲视频一区在线观看| 午夜亚洲福利老司机| 美女mm1313爽爽久久久蜜臀| 韩国欧美一区二区| 91一区二区在线| 欧美一区二区性放荡片| 久久五月婷婷丁香社区| 亚洲欧美一区二区三区极速播放| 一区二区三区久久| 久久99国内精品| 91在线一区二区| 日韩免费福利电影在线观看| 久久欧美一区二区| 亚洲小少妇裸体bbw| 狠狠网亚洲精品| 91免费精品国自产拍在线不卡| 欧美另类高清zo欧美| 亚洲亚洲精品在线观看| 热久久免费视频| heyzo一本久久综合| 91精品国产乱| 亚洲精品菠萝久久久久久久| 婷婷丁香激情综合| 99re热视频精品| www国产成人免费观看视频 深夜成人网| 国产精品久久久久久久久晋中 | 国产农村妇女毛片精品久久麻豆| 亚洲色图20p| 紧缚奴在线一区二区三区| 一本到一区二区三区| 久久精品一二三| 日韩**一区毛片| 在线亚洲一区二区| 中日韩免费视频中文字幕| 日韩黄色一级片| 91国产成人在线| 中文字幕欧美区| 国产一区二区伦理片| 欧美精品亚洲一区二区在线播放| 一区精品在线播放| 国产成人一区二区精品非洲| 日韩欧美成人激情| 天天av天天翘天天综合网色鬼国产| 成人av小说网| 中文成人综合网| 国产成人自拍在线| 久久综合久久综合久久| 麻豆成人综合网| 91精品国产91热久久久做人人| 亚洲国产精品欧美一二99| 91免费看视频| 亚洲精品一二三四区| caoporm超碰国产精品| 久久久91精品国产一区二区精品| 久久av资源站| 精品日韩在线观看| 久草这里只有精品视频| 精品日韩一区二区三区免费视频| 日韩一区欧美二区| 日韩无一区二区| 久久66热偷产精品| 国产日产欧美一区二区视频| 欧美偷拍一区二区| 亚洲欧美日韩精品久久久久| 成人国产精品免费观看视频| 欧美经典三级视频一区二区三区| 国产91富婆露脸刺激对白| 中文字幕欧美区| www.亚洲人| 玉米视频成人免费看| 欧美色精品在线视频| 日韩高清在线一区| 久久伊99综合婷婷久久伊| 国产美女精品在线| 亚洲日本在线看| 欧美三级韩国三级日本三斤| 午夜视频一区在线观看| 日韩精品一区二区三区在线| 国产精品99久久久久久似苏梦涵 | www.在线成人| 亚洲综合激情另类小说区| 欧美精品乱码久久久久久按摩| 日韩精品一二三四| 国产精品午夜春色av| 91官网在线观看| 美女在线视频一区| 精品一区在线看| 国产日韩三级在线| 欧美亚洲日本国产| 国产精选一区二区三区| 亚洲天堂精品视频| 欧美一区二区三区四区视频| 国产麻豆一精品一av一免费| 中文字幕在线观看一区二区| 欧美日韩国产片| 丁香婷婷综合色啪| 五月婷婷久久丁香| 国产精品美女www爽爽爽| 欧美系列一区二区| 国产91清纯白嫩初高中在线观看| 亚洲精品国产视频| 久久精子c满五个校花| 欧美色综合天天久久综合精品| 国产乱码精品一区二区三区五月婷| 亚洲卡通欧美制服中文| 久久亚洲免费视频| 欧美一级免费观看| 欧美在线观看视频一区二区 | 国产a区久久久| 日韩电影在线观看电影| 亚洲欧美激情插| 国产欧美精品在线观看| 欧美www视频| 欧美精品久久久久久久久老牛影院| 不卡大黄网站免费看| 黄色小说综合网站| 毛片不卡一区二区| 亚洲成人午夜影院| 亚洲精品中文字幕乱码三区| 日本一区二区三区四区| 精品国产免费视频| 日韩欧美国产电影| 欧美高清www午色夜在线视频| 91免费国产视频网站| 成人永久免费视频| 国产精品一区二区你懂的| 狠狠狠色丁香婷婷综合久久五月| 五月天激情综合| 香蕉av福利精品导航| 亚洲一区在线播放| 一区二区视频在线| 亚洲综合成人在线视频| 一区二区三区中文字幕| 亚洲精品高清视频在线观看| 综合网在线视频| 一区二区三区加勒比av| 亚洲乱码国产乱码精品精小说| 亚洲三级理论片| 国产精品国产a| 亚洲日本va午夜在线影院| 亚洲婷婷综合久久一本伊一区| 国产精品国产自产拍在线| 国产精品美女久久久久久久网站| 亚洲国产经典视频| 日韩毛片视频在线看| 国产精品色哟哟网站| 亚洲欧洲av色图| 亚洲图片欧美色图| 日韩激情视频网站| 国内精品久久久久影院色| 国产mv日韩mv欧美| 色哟哟一区二区在线观看| 欧洲一区在线观看| 91精品国产综合久久精品图片| 欧美精品乱码久久久久久| 欧美不卡激情三级在线观看| 久久久精品影视| 中文字幕精品—区二区四季| 亚洲三级在线免费观看| 亚洲成人激情综合网| 秋霞av亚洲一区二区三| 国产成人在线视频网址| 91国偷自产一区二区开放时间| 欧美精品 日韩| 国产精品无遮挡| 天堂成人国产精品一区| 国产精品中文有码| 欧美午夜精品久久久久久孕妇 | 国产成人精品www牛牛影视| 一本大道av伊人久久综合| 91精品国产综合久久福利| 久久久久久久国产精品影院| 亚洲精选在线视频| 蜜桃av噜噜一区| 在线一区二区三区| 久久久久九九视频| 天天操天天综合网| www.av亚洲| 久久免费美女视频| 天天av天天翘天天综合网色鬼国产| 国产成人午夜视频| 国产精品成人一区二区艾草|