ms_mgau.h File Reference

(Sphinx 3.0 specific) A module that wraps up the code of gauden and senone because they are closely related. More...

`#include <sphinxbase/cmd_ln.h>`
`#include <sphinxbase/logmath.h>`
`#include <sphinxbase/feat.h>`
`#include "acmod.h"`
`#include "bin_mdef.h"`
`#include "ms_gauden.h"`
`#include "ms_senone.h"`

Go to the source code of this file.

## Data Structures

struct | ms_mgau_model_t

## Macros

#define | ms_mgau_gauden(msg) (msg->g)
#define | ms_mgau_senone(msg) (msg->s)
#define | ms_mgau_topn(msg) (msg->topn)

## Functions

ps_mgau_t * | ms_mgau_init (acmod_t *acmod, logmath_t *lmath, bin_mdef_t *mdef)
void | ms_mgau_free (ps_mgau_t *g)
int32 | ms_cont_mgau_frame_eval (ps_mgau_t *msg, int16 *senscr, uint8 *senone_active, int32 n_senone_active, mfcc_t **feat, int32 frame, int32 compallsen)
int32 | ms_mgau_mllr_transform (ps_mgau_t *s, ps_mllr_t *mllr)

## Detailed Description

(Sphinx 3.0 specific) A module that wraps up the code of gauden and senone because they are closely related.

At the time at Sphinx 3.1 to 3.2, Ravi has decided to rewrite only single-stream part of the code into cont_mgau.[ch]. This marks the beginning of historical problem of having two sets of Gaussian distribution computation routine, one for single-stream and one of multi-stream.

In Sphinx 3.5, when we figure out that it is possible to allow both 3.0 family of tools and 3.x family of tools to coexist. This becomes one problem we found that very hard to reconcile. That is why we currently allow two versions of the code in the code base. This is likely to change in the future.

Definition in file ms_mgau.h.