⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 intro.doc

📁 speech signal process tools
💻 DOC
📖 第 1 页 / 共 3 页
字号:
       INTRODUCTION TO ESPS                                           page 13       The psps (1-ESPS) listing for a file processed as above will show  the       item symbolically, i.e.:           . . .           filt_type: BAND_PASS           . . .       Also, programs that read a file with such a generic  item  defined  in       the  header  can refer to the contents symbolically, as in the follow-       ing:           struct header *hd;           short filter_class;           . . .           filter_class = *(short *) get_genhd("filt_type", hd);           . . .           switch (fitler_class) {                   case LOW_PASS:                       . . .                       break;                   case HIGH_PASS:                       . . .                       break;                   case BAND_PASS:                       . . .                       break;                   case MISC:                       . . .                       break;                   default:                       ERROR_EXIT("invalid filter type encountered");           }       Note that one can also add generic header items to existing  files  by       means of the user-level program addgen (1-ESPS).       7 .2 .  ESPS Record Structures       The ESPS header is followed by a set  of  fixed-length  data  records.       When  any  record  is read into memory (through use of an ESPS library       routine), it is stored as a C structure  that  is  documented  in  the       relevant Section 5 manual page of the ESPS Manual.  As is the case for       file headers, programmers need not be concerned with the actual format       of  ESPS data records.  For example, suppose that the variable scbkrec       is pointer to a SCBK file record (each record contains a scalar quant-       ization  codebook  plus  related  design information).  Then the final       distortion value for that codebook and the population of the ith code-       word are referred to as           scbkrec->final_dist       Version 3.6                      ERL                           1/22/93       INTRODUCTION TO ESPS                                           page 14       and           scbkrec->final_pop[i]       respectively (see SCBK (5-ESPS)).       This symbolic form of reference for ESPS data records also applies  to       FEA  files.  For  example,  if  anarec  is a pointer to a FEA_ANA file       record, the ith filter pole in that record is referred to as           anarec->filt_poles[i]       (see FEA_ANA (5-ESPS). As mentioned earlier, users  can  define  their       own FEA file sub-types and extend existing subtypes. New fields in FEA       file records are defined through use of  add_fea_fld  (3-ESPS),  which       creates  a new field with a given name size, numerical type, etc.  The       new fields are accessed by means of  of  get_fea_ptr  (3-ESPS),  which       returns a pointer to a field with a given name from a given record.       7 .3 .  The ESPS Library       To support the writing of  new  user-level  ESPS  programs,  the  ESPS       library  contains  various  routines  for processing ESPS headers, for       processing ESPS data records, and for performing various  signal  pro-       cessing  functions.   At  present,  there are over 110 routines in the       library.       A full ESPS lint library is included so  that  ESPS  programs  can  be       fully  checked  with  the  standard UNIX lint(1) utility for C program       checking.  As a further aid to programmers, echeck (3-ESPS)  looks  up       entries  in  the  ESPS  lint  library  and  prints  the proper calling       sequence.  For emacs users, a mock-lisp file provides for  echeck  use       from  within  emacs.   The  scripts  emake (1-ESPS), ecc (1-ESPS), and       elint (1-ESPS) facilitate compiling and checking programs  under  ESPS       (for details, see.[5])       Here are a few examples of functions in the ESPS library:       7 .3 .1 .  Signal Processing Support Library Functions        analyze  compute prediction error filter and reflection coefficients        block-filterfilter a data array        convolv  convolution of polynomials or auto-correlations        covar    compute reflection coefficients with covariance method        fdbk_laticfeedback filtering with lattice form        feedbk_filfeedback filtering with transversal form        gauss    compute Gaussian random numbers        get_auto compute auto-correlation coefficients        get_burg compute reflection coefficients with Burg or modified                 Burg method        get_fft  compute fast Fourier transform        hamm_dec decode (8,4) Hamming code        hamm_enc encode with (8,4) Hamming code       Version 3.6                      ERL                           1/22/93       INTRODUCTION TO ESPS                                           page 15        interp_filtperform interpolation filtering        is_dist_tdcompute Itakura-Saito distortion        pc_to_lsfconvert prediction coefficients to line spectrum frequencies        rand_intnrsample without replacement from uniformly                 distributed integers        refl_to_filtconvert reflection coefficients to filter coefficients        remove_dcremove DC, using exponential weighting        vqdesign design a full-search vector quantization codebook       7 .3 .2 .  File Support Library Functions        add_comment  adds a string to the comment field of an ESPS header        add_fea_fld  add a new field to data record in a FEA file        add_genhd    adds a generic header item to a ESPS header        add_source_fileadd the header of a source file to an ESPS header        copy_header  copies an ESPS header to a new header        genhd_list   returns a list of defined generic header items        get_cmd_line returns pointer to string containing program's command line        get_fea_fld  returns pointer to named field in a FEA record        get_genhd    returns pointer to named generic header item        get_spec_rec get next spectral record from ESPS SPEC file        get_sym      get a parameter value after read_params called        new_header   create new ESPS file header        print_fea_recprints a FEA file record        put_fea_rec  writes a FEA file record        put_sym      put value in ESPS common file        range_switch parse the argument to a command-line range switch        read_header  read an ESPS file header        read_params  read the parameters in ESPS parameter or common file        skiprec      skip records in ESPS file        write_header write an ESPS file header       8 .  EXAMPLE USER-LEVEL ESPS PROGRAMS       This section lists some user-level ESPS programs of general  interest.       Note  that the entire ESPS Manual is stored on-line.  The manual pages       can be viewed with the eman (1-ESPS) command, which is an ESPS version       of  the  UNIX  man  command. Eman includes the -k option to search the       manual for programs whose one-line descriptions include a  given  key-       word.       8 .1 .  Conversion and Related Support Programs        addfea   adds a FEA file field from ASCII data        addfeahd adds a FEA file header to binary data        addgen   adds generic header item to ESPS file header        atofilt  convert ASCII file to FILT file        atosps   converts ASCII output to ESPS file (see spstoa)        bhd      behead an ESPS file        eitem    prints item from ESPS file header        ils_sps  converts ILS sampled data file to ESPS SD file       Version 3.6                      ERL                           1/22/93       INTRODUCTION TO ESPS                                           page 16        pplain   print values from ESPS files in "plain" ASCII format        spstoa   convert ESPS file to machine-independent ASCII format        testsd   make SD file with sine wave, pulses, Gaussian noise, or from ASCII data       8 .2 .  Signal I/O and Processing        addsd    adds SD files with scaling        ana      perform speech analysis from SD file        me_spec  compute spectra (FEA_SPEC file) from FEA_ANA file        distort  compute distortion measures between ESPS files        classify classify records in FEA files        fea_statscompute statistics from FEA files        fft      produces FEA_SPEC file by doing fft on SD file        filter   performs digital filtering on SD file        lloydcbk design a scalar quantizer using Lloyd's algorithm        notch_filtdesign a notch filter        play     play portions of SD files        playtest step through an "A-B" listening test with control options        randplay create play scripts for randomized "A-B" listening comparisons        record   digitize data using Masscomp EF-12M        refcof   compute reflection coefficients from sampled data (FEA_ANA output)        rem_dc   remove DC component from SD file        sdcomp   listening program for detailed comparison of two sampled data files        spectranstransform FEA_ANA from one spectral representation to another        stats    computes statistics from ESPS files        synt     synthesize speech from ANA file        testsd   make SD file with sine wave, pulses, Gaussian noise, or from ASCII data        vqdes    design a vector quantization codebook from a FEA file        vq       encode FEA file with a vector quantization codebook        wmse_filtdesign FIR filter using weighted mean square error criterion        iir_filt design recursive filter       8 .3 .  File Manipulation and Plotting        aplot    plot an array of ASCII data        comment  displays or adds comments in the header of an ESPS file        copysd   copy selected portions of SD files to a new file        fea_edit edit a FEA file in ASCII form        genplot  plot elements from any ESPS file in precise, multiline format        histogramsort data into bins for plotting histograms                 (screen, Imagen, or Tektronix)        mlplot   plot SD file in precise, multiline format                 (screen, Imagen, or Tektronix)        plotsd   plot sampled data (screen, Imagen, or Tektronix)        plotspec plot spectra from FEA_SPEC file (screen, Imagen, or Tektronix)        psps     print ESPS file headers and records        range    select a range from a graphics plot        select   select FEA records that satisfy queries        scatplot make a scatter plot       Version 3.6                      ERL                           1/22/93       INTRODUCTION TO ESPS                                           page 17       9 .  FUTURE CHANGES       Everything discussed in the foregoing is  available  in  ESPS  Version       3.3.   In  this section, we mention some of the things that will added       in later versions.       Current ESPS FEA files are restricted to  fixed  length  records,  one       record  type  per file, with record fields containing only the machine       primitive data types (integer,  float,  double,  character).   All  of       these restrictions should be relaxed.       We will provide support for engineering units, so  that  plotting  and       printing  programs  can  display  data in terms of externally relevant       units (volts, pressure, etc.).       We will provide some additional facilities to  support  ESPS  program-       ming.   For  example,  there  will be a program for the semi-automatic       generation of new FEA file sub-types, and there will be a program  for       the automatic generation of C skeletons for user-level programs.       The ESPS parameter file format  might  be  simplified  so  that  users       didn't  have  to  specify  types (they don't on command lines).  Also,       ESPS user-level programs will be modified to take all parameters  from       the  parameter  file  (with  possible  command-line overrides) so that       every program can be run interactively  using  eparam  (1-ESPS)  (some       programs in Version 3.3 require command line arguments for some or all       parameters).       Another significant enhancement  will  be  provided  by  an  interface       between  ESPS  and a UNIX relational data base system.  This interface       will create data base records from ESPS file headers so that the  data       base system can be used to manage sets of ESPS files.       10 .  REFERENCES       1.   Entropic Signal Processing System Version 3.0 User's Manual.       2.   "Data Files in the Entropic Processing System," , ETM-S-86-13.       3.   "Parameter and Common  Files  in  ESPS,"  ,  ETM-S-86-12:jtb  1.2            11/12/86.       4.   "Guidelines for Implementing ESPS Feature File Subtypes," ,  ETM-            S-86-25.       5.   "Entropic Signal Processing  System  Programming  Guidelines,"  ,            ETM-S-86-14 .       6.   "ESPS APPLICATIONS NOTE: Filtering Sampled Data," .       7.   "ESPS APPLICATIONS NOTE:  File  Headers  and  Record  Keeping  in            ESPS," .       Version 3.6                      ERL                           1/22/93       INTRODUCTION TO ESPS                                           page 18       Version 3.6                      ERL                           1/22/93

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -