segSpData.h

Go to the documentation of this file.
00001 /**************************************************************************//***************************************************************************/
00011 #if 0
00012 #define HTK_HEAD_SIZE 12
00013 #define TIMIT_RATE    16000
00014 #define NANO          10000000
00015 #endif
00016 #define NO_BREAK      0  
00017 #define POS_BREAK     1  
00018 #define FORCE_BREAK   2  
00020 /*----------------------------------------------------------------------------------------------*/
00021 /* Specification of structures for utterance list processing                                    */
00022 /* The contents of an 'uttList' specify how many separate utterances there are in a speech file */
00023 /* Each separate utterance is specified as a 'uttListItem'.  An 'uttListItem' specifies the     */
00024 /* start time 'startT', end time 'endT', the number of individual phone-level labels which make */
00025 /* up the utterance 'numLabs', and the list of these phone-level labels 'lab'.                  */
00026 /*----------------------------------------------------------------------------------------------*/
00027 
00029 typedef struct segUttListItem {
00030   short  numLabs; 
00031   long   startT;  
00032   long   endT;    
00033   char **lab;     
00034 } SEG_UTT_LIST_ITEM;
00035 
00037 typedef struct segUttList {
00038   short  numUtts;            
00039   SEG_UTT_LIST_ITEM *uttLI;  
00040 } SEG_UTT_LIST;
00041 
00043 typedef struct segAnnData {
00044   short  start;  
00045   short  end;    
00046   char  *label;  
00047 } SEG_ANN_DATA;
00048 
00049 int segCheckMasterList(SEG_UTT_LIST *uL, int detail);
00050 int segTime2FrameNum(SEG_UTT_LIST *uL, int winSize, int numVecs);
00051 int segFreeBreakPoints(int uttVecs, int **breakPt);
00052 int segFreeMasterList(int totLabs, SEG_UTT_LIST *masterList);
00053 /*int segReadAVector(float *aVec, int vecSize, FILE *spFile);*/
00054 int segReadSpData(double ***spData, FILE *curSpFile, int numVecs, int vecSize);
00055 int segFreeSpData(int numVecs, double ***spData);
00056 int segCheckSpData(int sT, int eT, int vecSize, double **spData);
00057 int segJoinLabels(int *startT, int *endT, char ***labList, FILE *curLabFile, int nLabs);
00058 int segGetBreakPoints(int **breakPt, int startT, int endT, FILE *curLabFile,
00059                       int emb, int winSize, int nLabs, int verbose);
00060 int segCountLabels(FILE *labFile, int numVecs, int winSize);
00061 int segWriteMLFData(SEG_ANN_DATA*, int, int, FILE*, char*);
00062 

Generated on Sun Aug 5 02:40:36 2007 for SEGRec Version 1.0 by  doxygen 1.5.1