#include <sent/stddefs.h>
#include <sent/htk_hmm.h>
#include <sent/htk_param.h>
#include <sent/hmm.h>
#include <sent/hmm_calc.h>
Go to the source code of this file.
Defines | |
| #define | SD(A) idx[A-1] |
| Index macro for heap sort. | |
| #define | SCOPY(D, S) D = S |
| Element copy macro for heap sort. | |
| #define | SVAL(A) (fs[idx[A-1]]) |
| Element evaluation macro for heap sort. | |
| #define | STVAL (fs[s]) |
| Element current value macro for heap sort. | |
Functions | |
| static void | build_gsset (HMMWork *wrk) |
| Register all state defs in GS HMM to GS_SET. | |
| static void | free_gsset (HMMWork *wrk) |
| Free gsset. | |
| static boolean | build_state2gs (HMMWork *wrk) |
| Build the correspondence from GS states to triphone states. | |
| static void | free_state2gs (HMMWork *wrk) |
| free state2gs. | |
| static void | sort_gsindex_upward (HMMWork *wrk) |
| Heap sort of gsindex to determine which model gets N best likelihoods. | |
| static void | do_gms (HMMWork *wrk) |
| Calculate all GS state scores and select the best ones. | |
| boolean | gms_init (HMMWork *wrk) |
| Initialize the GMS related functions and data. | |
| boolean | gms_prepare (HMMWork *wrk, int framenum) |
| Setup GMS parameters for next input. | |
| void | gms_free (HMMWork *wrk) |
| Free GMS related work areas. | |
| LOGPROB | gms_state (HMMWork *wrk) |
| Get HMM State probability of current state with Gaussiam Mixture Selection. | |
See the comments in the source for details about implementation.
Definition in file gms.c.
| static void build_gsset | ( | HMMWork * | wrk | ) | [static] |
| static void free_gsset | ( | HMMWork * | wrk | ) | [static] |
Free gsset.
| wrk | [i/o] HMM computation work area |
Definition at line 107 of file gms.c.
Referenced by gms_free().
| static boolean build_state2gs | ( | HMMWork * | wrk | ) | [static] |
Build the correspondence from GS states to triphone states.
| wrk | [i/o] HMM computation work area |
Definition at line 120 of file gms.c.
Referenced by gms_init().
| static void free_state2gs | ( | HMMWork * | wrk | ) | [static] |
free state2gs.
| wrk | [i/o] HMM computation work area |
Definition at line 176 of file gms.c.
Referenced by gms_free().
| static void sort_gsindex_upward | ( | HMMWork * | wrk | ) | [static] |
| static void do_gms | ( | HMMWork * | wrk | ) | [static] |
Calculate all GS state scores and select the best ones.
| wrk | [i/o] HMM computation work area |
Definition at line 250 of file gms.c.
Referenced by gms_state().
| boolean gms_init | ( | HMMWork * | wrk | ) |
Initialize the GMS related functions and data.
| wrk | [i/o] HMM computation work area |
Definition at line 283 of file gms.c.
Referenced by outprob_init().
| boolean gms_prepare | ( | HMMWork * | wrk, | |
| int | framenum | |||
| ) |
Setup GMS parameters for next input.
| wrk | [i/o] HMM computation work area | |
| framenum | [in] length of next input in frames |
Definition at line 330 of file gms.c.
Referenced by outprob_prepare().
| void gms_free | ( | HMMWork * | wrk | ) |
Free GMS related work areas.
| wrk | [i/o] HMM computation work area |
Definition at line 366 of file gms.c.
Referenced by outprob_free().
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.
| wrk | [i/o] HMM computation work area |
Definition at line 394 of file gms.c.
Referenced by outprob_init().
1.5.4