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

📄 dec_lmch_0.cc

📁 这是处理语音信号的程序
💻 CC
字号:
// file: dec_lmch_0.cc// // isip include files//#include "decoder.h"#include "decoder_constants.h" // method: switch_lm_cc//// arguments://  Trace* trace: (input) the input trace to project//  Lex_node* strlex: (input) the current lexical node//  int_4* phn: (input) the ci phone symbols that make up the cd model//  // return: a logical_1 indicating status//// this method switches the LM to the appropriate network given by the// word node in the lexical node, creates the next model trace// parameters and handles path projection at word-boundary//logical_1 Decoder::switch_lm_cc(Trace* trace_a, Lex_node* strlex_a) {  // find new word node to use for LM switching  //  void_p* newhist = get_newhist_cc(strlex_a);  // if the LM needs to be switched  //  if (newhist != (void_p)NULL) {    // dummy trace variables    //    Trace* tr = (Trace*)NULL;    float_4 score = (float_4)0;        // flags    //    logical_1 slx_type = LXN_WORDGRAPH;    logical_1 elx_type = LXN_WORDGRAPH;    logical_1 his_type = HISTORY_WORDGRAPH;        // identify the current LM type    //    logical_1 lextype = strlex_a->get_type_cc();         // if this is ngram, need to switch to network LM    //    if (lextype == LXN_NGRAM) {            // set lex node types      //      slx_type = LXN_WORDGRAPH;      elx_type = LXN_NGRAM;      his_type = HISTORY_WORDGRAPH;          } // end if lex type is ngram         // otherwise for word graph type, need to switch to ngram LM    //    else if (lextype == LXN_WORDGRAPH) {            // set lex node types      //      slx_type = LXN_NGRAM;      elx_type = LXN_WORDGRAPH;      his_type = HISTORY_NGRAM;          } // end else lex type is word graph         // get the current lex node    //    Lex_node* lxn = trace_a->get_inst_cc()->get_lex_node_cc();        // temporarily set the type of the current lex node    //    lxn->set_type_cc(slx_type);        // create a new trace    //    tr = manager_d->new_trace_cc();    tr->project_trace_cc(trace_a);    score = trace_a->get_score_cc();    tr->set_level_cc(DEC_WORD_LEVEL);        // set the trace history    //    History* history = manager_d->new_hist_cc();    history->init_cc(newhist, DEC_WORD_LEVEL, trace_a->get_phone_ind_cc(),		     (int_4)0, frame_d, score);    history->set_type_cc(his_type);    history_list_d->insert_cc((void_p)history);        // insert history parameters in trace    //    History* hist = trace_a->get_hist_cc();    tr->set_max_hist_cc(num_hist_d);    tr->set_hist_cc(history);    tr->add_path_cc(hist, score);        // project path with this trace    //    next_models_cc(tr);        // remove this trace    //    manager_d->delete_cc(tr);        // reset the lex node type    //    lxn->set_type_cc(elx_type);      } // end if this is the first LM transition for this phone    // exit gracefully  //  return ISIP_TRUE;}

⌨️ 快捷键说明

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