コード例 #1
0
/* Flite_HTS_Engine_load: load files */
void Flite_HTS_Engine_load(Flite_HTS_Engine * f, FILE * fp_ms_dur,
                           FILE * fp_ts_dur, FILE * fp_ms_mcp, FILE * fp_ts_mcp,
                           FILE ** fp_ws_mcp, int num_ws_mcp, FILE * fp_ms_lf0,
                           FILE * fp_ts_lf0, FILE ** fp_ws_lf0, int num_ws_lf0,
                           FILE * fp_ms_gvm, FILE * fp_ts_gvm, FILE * fp_ms_gvl,
                           FILE * fp_ts_gvl, FILE * fp_gv_switch)
{
    HTS_Engine_load_duration_from_fp(&f->engine, &fp_ms_dur, &fp_ts_dur, 1);
    HTS_Engine_load_parameter_from_fp(&f->engine, &fp_ms_mcp, &fp_ts_mcp,
                                      fp_ws_mcp, 0, FALSE, num_ws_mcp, 1);
    HTS_Engine_load_parameter_from_fp(&f->engine, &fp_ms_lf0, &fp_ts_lf0,
                                      fp_ws_lf0, 1, TRUE, num_ws_lf0, 1);
    if (fp_ms_gvm != NULL) {
        if (fp_ts_gvm != NULL)
            HTS_Engine_load_gv_from_fp(&f->engine, &fp_ms_gvm, &fp_ts_gvm, 0, 1);
        else
            HTS_Engine_load_gv_from_fp(&f->engine, &fp_ms_gvm, NULL, 0, 1);
    }
    if (fp_ms_gvl != NULL) {
        if (fp_ts_gvl != NULL)
            HTS_Engine_load_gv_from_fp(&f->engine, &fp_ms_gvl, &fp_ts_gvl, 1, 1);
        else
            HTS_Engine_load_gv_from_fp(&f->engine, &fp_ms_gvl, NULL, 1, 1);
    }
    if (fp_gv_switch != NULL)
        HTS_Engine_load_gv_switch_from_fp(&f->engine, fp_gv_switch);
}
コード例 #2
0
/* HTS_Engine_load_duratin_from_fn: load duration pdfs, trees and number of state from file names */
void HTS_Engine_load_duration_from_fn(HTS_Engine * engine, char **pdf_fn,
                                      char **tree_fn, int interpolation_size)
{
    int i;
    FILE **pdf_fp, **tree_fp;

    pdf_fp = (FILE **) HTS_calloc(interpolation_size, sizeof(FILE *));
    tree_fp = (FILE **) HTS_calloc(interpolation_size, sizeof(FILE *));
    for (i = 0; i < interpolation_size; i++) {
        pdf_fp[i] = HTS_get_fp(pdf_fn[i], "rb");
        tree_fp[i] = HTS_get_fp(tree_fn[i], "r");
    }
    HTS_Engine_load_duration_from_fp(engine, pdf_fp, tree_fp,
                                     interpolation_size);
    for (i = 0; i < interpolation_size; i++) {
        fclose(pdf_fp[i]);
        fclose(tree_fp[i]);
    }
    HTS_free(pdf_fp);
    HTS_free(tree_fp);
}