#include <sent/stddefs.h>
#include <sent/htk_hmm.h>
#include <sent/htk_param.h>
#include <sent/hmm.h>
#include <sent/gprune.h>
#include "globalvars.h"
Include dependency graph for gms.c:

Go to the source code of this file.
Defines | |
| #define | MAXHMMNAMELEN 40 | 
| Assumed maximum length of HMM name.  | |
| #define | SD(A) gsindex[A-1] | 
| Index macro for heap sort.  | |
| #define | SCOPY(D, S) D = S | 
| Element copy macro for heap sort.  | |
| #define | SVAL(A) (t_fs[gsindex[A-1]]) | 
| Element evaluation macro for heap sort.  | |
| #define | STVAL (t_fs[s]) | 
| Element current value macro for heap sort.  | |
Functions | |
| static void | build_gsset () | 
| static void | free_gsset () | 
| static boolean | build_state2gs () | 
| static void | free_state2gs () | 
| static void | sort_gsindex_upward (int neednum, int totalnum) | 
| static void | do_gms () | 
| boolean | gms_init (int nbest) | 
| boolean | gms_prepare (int framenum) | 
| void | gms_free () | 
| LOGPROB | gms_state () | 
Variables | |
| static int | my_nbest | 
| Number of states to be selected.  | |
| static int | allocframenum | 
| Allocated number of frame for storing fallback scores per frame.  | |
| static GS_SET * | gsset | 
| Set of GS states.  | |
| static int | gsset_num | 
| Num of above.  | |
| static int * | state2gs | 
| Mapping from triphone state id to gs id.  | |
| static boolean * | is_selected | 
| TRUE if the frame is already selected.  | |
| static LOGPROB ** | fallback_score = NULL | 
| [t][gssetid], LOG_ZERO if selected  | |
| static int * | gsindex | 
| Index buffer.  | |
| static LOGPROB * | t_fs | 
| Current fallback_score.  | |
Definition in file gms.c.
| static void build_gsset | ( | ) |  [static] | 
        
Register all state defs in GS HMM to GS_SET.
Definition at line 102 of file gms.c.
Referenced by gms_init().
| static void free_gsset | ( | ) |  [static] | 
        
| static boolean build_state2gs | ( | ) |  [static] | 
        
Build the correspondence from GS states to triphone states.
Definition at line 133 of file gms.c.
Referenced by gms_init().
| static void free_state2gs | ( | ) |  [static] | 
        
| static void sort_gsindex_upward | ( | int | neednum, | |
| int | totalnum | |||
| ) |  [static] | 
        
| static void do_gms | ( | ) |  [static] | 
        
Calculate all GS state scores and select the best ones.
Definition at line 249 of file gms.c.
Referenced by gms_state().
| boolean gms_init | ( | int | nbest | ) | 
Initialize the GMS related functions and data.
| nbest | [in] N-best state to compute the precise triphone. | 
Definition at line 282 of file gms.c.
Referenced by outprob_init().
| boolean gms_prepare | ( | int | framenum | ) | 
Setup GMS parameters for next input.
| framenum | [in] length of next input in frames | 
Definition at line 332 of file gms.c.
Referenced by outprob_prepare().
| void gms_free | ( | ) | 
| LOGPROB gms_state | ( | ) | 
Get HMM State probability of current state with Gaussiam Mixture Selection.
If the GMS HMM score of the corresponding basephone is below the N-best, the triphone score will not be computed, and the score of the GMS HMM will be returned instead as a fallback score. Else, the precise triphone will be computed and returned.
Definition at line 392 of file gms.c.
Referenced by outprob_init().
 1.5.0