42 #ifndef __PS_ALIGNMENT_H__ 43 #define __PS_ALIGNMENT_H__ 48 #include <sphinxbase/prim_type.h> 54 #define PS_ALIGNMENT_NONE ((uint16)0xffff) 75 ps_alignment_entry_t *seq;
76 uint16 n_ent, n_alloc;
82 ps_alignment_vector_t word;
83 ps_alignment_vector_t sseq;
84 ps_alignment_vector_t state;
90 ps_alignment_vector_t *vec;
109 int32 wid,
int duration);
ps_alignment_iter_t * ps_alignment_iter_goto(ps_alignment_iter_t *itor, int pos)
Move alignment iterator to given index.
ps_alignment_iter_t * ps_alignment_iter_down(ps_alignment_iter_t *itor)
Get a new iterator starting at the first child of the current node.
Building triphones for a dictionary.
ps_alignment_iter_t * ps_alignment_iter_prev(ps_alignment_iter_t *itor)
Move an alignment iterator back.
ps_alignment_iter_t * ps_alignment_phones(ps_alignment_t *al)
Iterate over the alignment starting at the first phone.
ps_alignment_iter_t * ps_alignment_words(ps_alignment_t *al)
Iterate over the alignment starting at the first word.
int ps_alignment_propagate(ps_alignment_t *al)
Propagate timing information up from state sequence.
int ps_alignment_add_word(ps_alignment_t *al, int32 wid, int duration)
Append a word.
int ps_alignment_n_words(ps_alignment_t *al)
Number of words.
int ps_alignment_n_states(ps_alignment_t *al)
Number of states.
int ps_alignment_iter_free(ps_alignment_iter_t *itor)
Release an iterator before completing all iterations.
Implementation of HMM base structure.
ps_alignment_iter_t * ps_alignment_states(ps_alignment_t *al)
Iterate over the alignment starting at the first state.
ps_alignment_iter_t * ps_alignment_iter_up(ps_alignment_iter_t *itor)
Get a new iterator starting at the parent of the current node.
ps_alignment_t * ps_alignment_init(dict2pid_t *d2p)
Create a new, empty alignment.
ps_alignment_iter_t * ps_alignment_iter_next(ps_alignment_iter_t *itor)
Move an alignment iterator forward.
int ps_alignment_free(ps_alignment_t *al)
Release an alignment.
ps_alignment_entry_t * ps_alignment_iter_get(ps_alignment_iter_t *itor)
Get the alignment entry pointed to by an iterator.
int ps_alignment_n_phones(ps_alignment_t *al)
Number of phones.
int ps_alignment_populate(ps_alignment_t *al)
Populate lower layers using available word information.
int ps_alignment_populate_ci(ps_alignment_t *al)
Populate lower layers using context-independent phones.
Building composite triphone (as well as word internal triphones) with the dictionary.