⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 recog.h

📁 julius version 4.12.about sound recognition.
💻 H
📖 第 1 页 / 共 3 页
字号:
  boolean global_modified;  /**   * LM User function entry point   *    */  LMFunc lmfunc;  /**   * pointer to next   *    */  struct __process_lm__ *next;} PROCESS_LM;/** * instance for a decoding, i.e. set of LM, AM and parameters *  */typedef struct __recogprocess__ {  /**   * TRUE is this instance is alive, or FALSE when temporary disabled.   *    */  boolean live;  /**   * 1 if this instance should be made alive in the next recognition,   * -1 if should become dead in the next recognition,   * or 0 to leave unchanged.   *    */  short active;  /**   * search configuration data   *    */  JCONF_SEARCH *config;  /**   * acoustic model instance to use   *    */  PROCESS_AM *am;  /**   * language model instance to use   *    */  PROCESS_LM *lm;  /**   * Language model type: one of LM_UNDEF, LM_NGRAM, LM_DFA   *    */  int lmtype;  /**   * Variation type of language model: one of LM_NGRAM, LM_DFA_GRAMMAR,   * LM_DFA_WORD   *    */  int lmvar;  /**   * Whether handle phone context dependency (local copy from jconf)   */  boolean ccd_flag;  /**   * Word-conjunction HMM as tree lexicon   */  WCHMM_INFO *wchmm;  /**   * Actual beam width of 1st pass (will be set on startup)   */  int trellis_beam_width;  /**   * Word trellis index generated at the 1st pass   */  BACKTRELLIS *backtrellis;  /**   * Work area for the first pass   */  FSBeam pass1;  /**   * Work area for second pass   *    */  StackDecode pass2;  /**   * Word sequence of best hypothesis on 1st pass   */  WORD_ID pass1_wseq[MAXSEQNUM];  /**   * Number of words in @a pass1_wseq   */  int pass1_wnum;  /**   * Score of @a pass1_wseq   */  LOGPROB pass1_score;  /**   * Last maximum word hypothesis on the begin point for short-pause segmentation   */  WORD_ID sp_break_last_word;  /**   * Last (not transparent) context word for LM for short-pause segmentation   */  WORD_ID sp_break_last_nword;  /**   * Allow override of last context word from result of 2nd pass for short-pause segmentation   */  boolean sp_break_last_nword_allow_override;  /**   * Search start word on 2nd pass for short-pause segmentation   */  WORD_ID sp_break_2_begin_word;  /**   * Search end word on 2nd pass for short-pause segmentation   */  WORD_ID sp_break_2_end_word;  /**   * Input length in frames   */  int peseqlen;           /**   * GraphOut: total number of words in the generated graph   */  int graph_totalwordnum;  /**   * Recognition results   *    */  Output result;  /**   * graphout: will be set from value from jconf->graph.enabled   *    */  boolean graphout;  /**   * Temporal matrix work area to hold the order relations between words   * for confusion network construction.   *    */  char *order_matrix;  /**   * Number of words to be expressed in the order matrix for confusion network   * construction.   *    */  int order_matrix_count;#ifdef DETERMINE  int determine_count;  LOGPROB determine_maxnodescore;  boolean determined;  LOGPROB determine_last_wid;  boolean have_determine;#endif  /**   * TRUE if has something to output at CALLBACK_RESULT_PASS1_INTERIM.   *    */  boolean have_interim;  /**   * User-defined data hook.  JuliusLib does not concern about its content.   *    */  void *hook;  /**   * Pointer to next instance   *    */  struct __recogprocess__ *next;} RecogProcess;/** * Top level instance for the whole recognition process *  */typedef struct __Recog__ {  /*******************************************/  /**   * User-specified configuration parameters   *    */  Jconf *jconf;  /*******************************************/  /**   * A/D-in buffers   *    */  ADIn *adin;  /**   * Work area for the realtime processing of first pass   */  RealBeam real;  /**   * Linked list of MFCC calculation/reading instances   *    */  MFCCCalc *mfcclist;  /**   * Linked list of acoustic model instances   *    */  PROCESS_AM *amlist;  /**   * Linked list of language model instances   *    */  PROCESS_LM *lmlist;  /**   * Linked list of recognition process instances   *    */  RecogProcess *process_list;  /**   * TRUE when engine is processing a segment (for short-pause segmentation)   *    */  boolean process_segment;  /*******************************************/  /* inputs */  /**   * Input speech data   */  SP16 *speech;  /**   * Allocate length of speech    *    */  int speechalloclen;  /**   * Input length in samples   */  int speechlen;                  /**   * Input length in frames   */  int peseqlen;           /*******************************************/  /**   * GMM definitions   *    */  HTK_HMM_INFO *gmm;  /**   * Pointer to MFCC instance for GMM   *    */  MFCCCalc *gmmmfcc;  /**   * Work area for GMM calculation   *    */  GMMCalc *gc;  /*******************************************/  /* misc. */  /**   * Status flag indicating whether the recognition is alive or not.  If   * TRUE, the process is currently activated, either monitoring an   * audio input or recognizing the current input.  If FALSE, the recognition   * is now disabled until some activation command has been arrived from   * client.  While disabled, all the inputs are ignored.   *   * If set to FALSE in the program, Julius/Julian will stop after   * the current recognition ends, and enter the disabled status.   *    */  boolean process_active;  /**   * If set to TRUE, Julius/Julian stops recognition immediately, terminating   * the currenct recognition process, and enter into disabled status.   *    */  boolean process_want_terminate;  /**   * If set to TRUE, Julius/Julian stops recognition softly.  If it is   * performing recognition of the 1st pass, it immediately segments the   * current input, process the 2nd pass, and output the result.  Then it   * enters the disabled status.   *    */  boolean process_want_reload;  /**   * When to refresh the global lexicon if received while recognition for   * DFA   *    */  short gram_switch_input_method;  /**   * TRUE if audio stream is now open and engine is either listening   * audio stream or recognizing a speech.  FALSE on startup or when   * in pause specified by a module command.   *    */  boolean process_online;  /**   * Function pointer to parameter vector computation for realtime 1st pass.   * default: RealTimeMFCC() in realtime-1stpass.c   *    */  boolean (*calc_vector)(MFCCCalc *, SP16 *, int);  /**   * TRUE when recognition triggered and some recognition started,   * FALSE if engine terminated with no input.   *    */  boolean triggered;  /**   * Callback entry point   *    */  void (*callback_function[SIZEOF_CALLBACK_ID][MAX_CALLBACK_HOOK])();  /**   * Callback user data   *    */  void *callback_user_data[SIZEOF_CALLBACK_ID][MAX_CALLBACK_HOOK];  /**   * Numbers of callbacks registered   *    */  int callback_function_num[SIZEOF_CALLBACK_ID];  /**   * Callback function code list   *    */  int callback_list_code[MAX_CALLBACK_HOOK*SIZEOF_CALLBACK_ID];  /**   * Callback function location list   *    */  int callback_list_loc[MAX_CALLBACK_HOOK*SIZEOF_CALLBACK_ID];  /**   * Number of callbacks   *    */  int callback_num;  /*******************************************/  /**   * User-defined data hook.  JuliusLib does not concern about its content.   *    */  void *hook;} Recog;#endif /* __J_RECOG_H__ */

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -