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

📄 fea_ana.5t

📁 speech signal process tools
💻 5T
字号:
.\" Copyright (c) 1987 Entropic Speech, Inc.; All rights reserved.\" @(#)fea_ana.5t	1.11 08 May 1997 ESI.TH FEA_ANA 5\-ESPS 08 May 1997.ds ]W "\fI\s+4\ze\h'0.05'e\s-4\v'-0.4m'\fP\(*p\v'0.4m'\ Entropic Speech, Inc..de us\\$1\l'|0\(ul'...SH NAMEESPS ANA Feature File Subtype \- (.fana).SH SYNOPSIS.nf.ft B#include <esps/esps.h>#include <esps/fea.h>#include <esps/anafea.h>.fi.SH DESCRIPTION.PPThe FEA_ANA file is a subtype of the FEA file.  If \fIhd\fR is a pointer to the header of such a file, then \fIhd\->hd.fea\->fea_type\fR== FEA_ANA.  Such files are created by calling .I init_anafea_hd(3\-ESPSu) after .I new_header(3\-ESPSu).  .PPFEA_ANA files store spectral parameters, power, and voicing information.The file type is intended for speech processing applications..PPThe header for a FEA_ANA file consists of the following generic headeritems (note that \fIfilt_nsiz\fP and \fIfilt_dsiz\fP are only definedif \fIfilters\fP == YES):.PP.TScenter, box, tab(;);c | c | c | cl | l | l | l.Name;Size;Type;Enums=maxraw;1;long;maxlpc;1;long;maxpulses;1;long;order_vcd;1;long;order_unvcd;1;long;src_sf;1;float;filters;1;coded;NO,YESspec_rep;1;coded;\fIspec_reps\fPfilt_nsiz;1;short;filt_dsiz;1;short;start;1;long;nan;1;long;frmlen;1;long;.TE.PPThe generic header items have the following meanings:.IP maxrawMaximum number of raw powers per record..IP maxlpcMaximum number of lpc error powers per record..IP maxpulsesMaximum number of pitch pulses per record..IP order_vcdModel order (number of autoregressive coefficients) for voiced framesand transition frames..IP order_unvcdModel order (number of autoregressive coefficients) for unvoiced, silence,none, and unknown frame types..IP src_sfSampling frequency of the header reference file \fIvariable.refer\fP.  .IP spec_repSpecifies the type of spectral parameters stored in the\fIspec_param\fP field of each record.  Values are defined in \fIanafea.h\fP with corresponding strings defined in the table\fIfspec_reps\fR in the FEA_ANA support module \fIanafeasupp.c\fP.  Currently supported values are RC, LAR, LSF, and AUTO.  .IP filtersIf this coded type is YES, then a filter is stored within every record;if it is NO, then filters are not stored..IP "filt_nsiz, filt_dsiz"if \fIfilters\fP == YES, these are defined (otherwise they aren't).If defined, they are the respective lengths of the numerator anddenominator polynomials for the filters stored within each record;.IP "start, nan"Starting point and intended number of points analyzed.Values are set to zero if they are not meaningful.If the file is tagged (see description of \fIcommon.tag\fR in ESPS(5\-ESPS)),\fIstart\fR and \fInan\fR refer to the file named by \fIvariable.refer\fR.Otherwise, they refer to a relevant source file (\fIvariable.refer\fR is alsolikely to be a source file).If the file has many source files, then \fIstart\fR and \fInan\fR usually referto all the source files.Often, \fIstart\fR and \fInan\fR will be determined by a command-line rangeoption or by values in the ESPS Parameter or Common file.In cases where an entire file is to be analyzed and the file is processed bymeans of standard input, \fInan\fR will be set to LONG_MAX (2147483648 on68000 class machines);if a disk file is used, then \fInan\fR can be set to the actual number ofpoints in the file since \fIcommon.ndrec\fR is filled in by\fIread_header\fR(3\-ESPSu) \- see ESPS(5\-ESPS)..sp .5Note that \fInan\fR is the\fBintended\fRnumber of points analyzed.Whether or not standard input is used, \fInan\fR will not reflect the actualnumber of points analyzed if an input file is exhausted before the intendedrange is covered.This is because the header is written before the data.To require \fInan\fR always to be the actual number of points analyzedwould require that programs use a temporary file and therefore that theywrite the data twice.If it is crucial to record in \fInan\fR the actual number of pointsprocessed, this can be accomplished by using such a temporary file..IP frmlenFor programs that use a fixed frame size, the size is stored in \fIfrmlen\fR..PPThe header of a FEA_ANA file also contains definitions for the record fieldsas given by the following table:.PP.TScenter, box, tab(;);c | c | c | c | c | c l | l | l | l | l | l.Name;Size;Rank;Dimen;Type;Enums=frame_len;1;0;NULL;long;NULLnum_pulses;1;0;NULL;long;NULLframe_type;1;0;NULL;coded;\fIframe_types\fPvoiced_fraction;1;0;NULL;float;NULLraw_power;\fImaxraw\fP;1;NULL;float;NULLlpc_power;\fImaxlpc\fP;1;NULL;float;NULLp_pulse_len;\fImaxpulses\fP;1;NULL;float;NULLspec_param;MAX(\fIorder_vcd, order_unvcd\fP);1;NULL;float;NULLfilt_zeros;\fIfilt_nsiz\fP;1;NULL;float;NULLfilt_poles;\fIfilt_dsiz\fP;1;NULL;float;NULL.TE.PPIn the above table, \fIframe_types\fR is an array of of the possiblevalues the field \fIframe_type\fP can take.  These are defined in theFEA_ANA library support module \fIanafeasupp.c\fP.  See FEA(5\-ESPS)for additional information on the meaning of the table columns..PPIn most cases, programs that deal with FEA_ANA files will use the supportroutines provided in the ESPS library and will not have to make directuse of the information in the above tables.   The library routine.I init_anafea_hd(3\-ESPSu) creates the record fields and the generic header items..PPPrograms that deal with FEA_ANA files do so in terms of structures oftype (struct anafea) \- pointers to structures of this type are returned by .I allo_anafea_rec(3\-ESPSu), and the FEA_ANA read and write routines (\fIget_anafea_rec\fR(3-ESPSu)and \fIput_anafea_rec\fP(3-ESPSu) have parameters of type (struct anafea).Here is the definition of the anafea struct (given in \fI<esps/anafea.h>\fR):.nf.ta .5i 1i 1.75i    struct anafea  {        long		*tag;	        long		*frame_len;        long		*num_pulses;        short		*frame_type;        float		*voiced_fraction;        float		*raw_power;	        float		*lpc_power;	        float		*p_pulse_len;	        float		*spec_param;        float		*filt_zeros;        float		*filt_poles;	        struct	    fea_data    *fea_rec;    };.fi.PPThe record fields have the following meanings:.IP tagposition tag in reference file \fIvariable.refer\fP, valid onlyif \fIcommon.tag\fP == YES.  This field is not represented in the table above, since it arises from general supportof ESPS files (see ESPS(5\-ESPS)).  .IP frame_lennumber of samples represented by the frame.IP num_pulsesnumber of pitch pulses in frame \- only this number of \fIp_pulse_len[]\fP values are meaningful..IP frame_typeclassification of frame; numerical values are defined in\fIanafea.h\fP with corresponding strings defined in\fIanafeasupp.c\fP.  Common supported values are VOICED, UNVOICED,SILENCE, TRANSITION.  .IP voiced_fractionFraction of excitation energy that is voiced \- not all programssupport this field.  .IP "raw_power, lpc_power"These are respectively the raw and lpc error powers.  Starting with\fIraw_power[0]\fR, \fIraw_power\fR values are valid only until the first negativevalue, and starting with \fIlpc_power[0]\fR, \fIlpc_power\fR values are valid onlyuntil the first negative value, unless all are valid in which casenone of them are negative.  Typically, for a voiced frame thereshould be either one \fIraw_power\fR value (for the whole frame) or one foreach pulse.  For an unvoiced frame, typically there should be one \fIraw_power\fR value for the frame.  The situation for \fIlpc_power\fR is similar, except that one might have only one \fIlpc_power\fR for the frame even if there are \fIraw_power\fR values for every pitch pulse, and one might not have any \fIlpc_power\fR values at all.  .IP p_pulse_lenThese are the pitch pulse lengths; only the first \fInum_pulses\fP are significant, starting with \fIp_pulse_len[0]\fP.  .IP spec_paramThe spectral parameters, whose representation is determined by the generic header item \fIspec_rep\fP.  For VOICED or TRANSITION frames, \fIorder_vcd\fP values aremeaningful.  Otherwise, \fIorder_unvcd\fP values are meaningful.  If \fIspec_rep\fP == AUTO, the values stored in \fIspec_param\fP are the normalized autocorrelations R(i)/R(0), where R(i) is the autocorrelation function with sample delay i.  .IP "filt_zeros, filt_poles"Respectively the numerator and denominator polynomials of a record-specificfilter; the respective lengths are \fIfilt_nsiz\fP and \fIfilt_dsiz\fP.  Space for these polynomials is allocated only if the generic headeritem \fIfilters\fP is YES; otherwise these pointers are set to NULL..IP fea_recThis is a pointer to the FEA file record in which all the FEA_ANA information is stored.  Programs should not use this value directly..PPThe sign convention for spectral parameters is such that the firstreflection coefficient is R(1)/R(0) where R(1) and R(0) are autocorrelationfunctions with sample delays of 1 and 0 respectively..SH SEE ALSO.PPinit_anafea_hd(3\-ESPSu), allo_anafea_rec(3\-ESPSu), get_anafea_rec(3\-ESPSu),put_anafea_rec(3\-ESPSu), get_genhd(3\-ESPSu), spectrans(1\-ESPS), transpec(1\-ESPS),refcof(1\-ESPS), FEA(5\-ESPS), ESPS(5\-ESPS).SH RECORD ELEMENT FILE STRUCTURE.PPIn order to use this (or any other) FEA file type with a generic ESPSprogram (one that operates on any file type) it is necessary to know theway that record elements are positioned in the file.   For a FEA filethat information is obtained by running the program\fIfea_element\fR(1\-ESPS) on the file in question..SH FILES.PP.nf/usr/include/esps/fea.h/usr/include/esps/anafea.h.SH AUTHORManual page by John Shore

⌨️ 快捷键说明

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