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

📄 aud_vr_si.c

📁 最新MTK手机软件源码
💻 C
📖 第 1 页 / 共 3 页
字号:
    }
    else
    {
        return KAL_FALSE;
    }

}


/*****************************************************************************
 * FUNCTION
 *  aud_vrsi_save_addtags_result
 * DESCRIPTION
 *  
 * PARAMETERS
 *  void
 * RETURNS
 *  void
 *****************************************************************************/
void aud_vrsi_save_addtags_result(void)
{
    /*----------------------------------------------------------------*/
    /* Local Variables                                                */
    /*----------------------------------------------------------------*/
    kal_uint32 i, j, k;
    VRSI_AddTags_Result *addtags_result;

    /*----------------------------------------------------------------*/
    /* Code Body                                                      */
    /*----------------------------------------------------------------*/
    VRSI_ReadResult((void **)&addtags_result);

    k = 0;
    for (i = 0; i < addtags_result->numTag; i++)
    {
        for (j = k; j < vrsi_ctx.addtags_param.numTag; j++)
        {
            k++;
            if (aud_vrsi_compare(addtags_result->ppTagName[i], vrsi_ctx.addtags_param.ppTagName[j]))
            {
                vrsi_ctx.id_list[j] = addtags_result->pTagID[i];
                break;
            }
            else
            {
                vrsi_ctx.id_list[j] = 65535;
            }
        }
    }
    for (j = k; j < vrsi_ctx.addtags_param.numTag; j++)
    {
        vrsi_ctx.id_list[j] = 65535;
    }
}


/*****************************************************************************
 * FUNCTION
 *  aud_vrsi_start_cmd_rcg
 * DESCRIPTION
 *  
 * PARAMETERS
 *  void
 * RETURNS
 *  
 *****************************************************************************/
kal_int32 aud_vrsi_start_cmd_rcg(void)
{
    /*----------------------------------------------------------------*/
    /* Local Variables                                                */
    /*----------------------------------------------------------------*/

    /*----------------------------------------------------------------*/
    /* Code Body                                                      */
    /*----------------------------------------------------------------*/
    if (vrsi_ctx.state != MED_AUD_VRSI_STATE_READY)
    {
        ASSERT(KAL_FALSE);
    }

    if (VRSI_Recog(vrsi_ctx.grammar) == VRSI_FAIL)
    {
        vrsi_ctx.session_on = KAL_FALSE;
        return aud_vrsi_error();
    }
    vrsi_ctx.state = MED_AUD_VRSI_STATE_PROCESS;
    return MED_RES_OK;
}


/*****************************************************************************
 * FUNCTION
 *  aud_vrsi_start_cmd_trn
 * DESCRIPTION
 *  
 * PARAMETERS
 *  void
 * RETURNS
 *  
 *****************************************************************************/
kal_int32 aud_vrsi_start_cmd_trn(void)
{
    /*----------------------------------------------------------------*/
    /* Local Variables                                                */
    /*----------------------------------------------------------------*/

    /*----------------------------------------------------------------*/
    /* Code Body                                                      */
    /*----------------------------------------------------------------*/
    if (vrsi_ctx.state != MED_AUD_VRSI_STATE_READY)
    {
        ASSERT(KAL_FALSE);
    }

    if (VRSI_Train_Tag(vrsi_ctx.grammar, &vrsi_ctx.tag_param) == VRSI_FAIL)
    {
        vrsi_ctx.session_on = KAL_FALSE;
        return aud_vrsi_error();
    }
    vrsi_ctx.state = MED_AUD_VRSI_STATE_PROCESS;
    return MED_RES_OK;
}


/*****************************************************************************
 * FUNCTION
 *  aud_vrsi_start_digit_rcg
 * DESCRIPTION
 *  
 * PARAMETERS
 *  lang        [IN]        
 *  limit       [IN]        
 * RETURNS
 *  
 *****************************************************************************/
kal_int32 aud_vrsi_start_digit_rcg(kal_uint8 lang, kal_uint16 limit)
{
    /*----------------------------------------------------------------*/
    /* Local Variables                                                */
    /*----------------------------------------------------------------*/

    /*----------------------------------------------------------------*/
    /* Code Body                                                      */
    /*----------------------------------------------------------------*/
    if (vrsi_ctx.state != MED_AUD_VRSI_STATE_READY)
    {
        ASSERT(KAL_FALSE);
    }

    if (VRSI_Digit_Recog(lang, limit) == VRSI_FAIL)
    {
        vrsi_ctx.session_on = KAL_FALSE;
        return aud_vrsi_error();
    }
    vrsi_ctx.state = MED_AUD_VRSI_STATE_PROCESS;
    return MED_RES_OK;
}


/*****************************************************************************
 * FUNCTION
 *  aud_vrsi_start_digit_adapt
 * DESCRIPTION
 *  
 * PARAMETERS
 *  lang        [IN]        
 * RETURNS
 *  
 *****************************************************************************/
kal_int32 aud_vrsi_start_digit_adapt(kal_uint8 lang)
{
    /*----------------------------------------------------------------*/
    /* Local Variables                                                */
    /*----------------------------------------------------------------*/

    /*----------------------------------------------------------------*/
    /* Code Body                                                      */
    /*----------------------------------------------------------------*/
    if (vrsi_ctx.state != MED_AUD_VRSI_STATE_READY)
    {
        ASSERT(KAL_FALSE);
    }

    if (VRSI_Digit_Adapt(lang) == VRSI_FAIL)
    {
        vrsi_ctx.session_on = KAL_FALSE;
        return aud_vrsi_error();
    }
    vrsi_ctx.state = MED_AUD_VRSI_STATE_PROCESS;
    return MED_RES_OK;
}

/* play */


/*****************************************************************************
 * FUNCTION
 *  aud_vrsi_play_tag
 * DESCRIPTION
 *  
 * PARAMETERS
 *  tag_id      [IN]        
 * RETURNS
 *  
 *****************************************************************************/
kal_int32 aud_vrsi_play_tag(kal_uint16 tag_id)
{
    /*----------------------------------------------------------------*/
    /* Local Variables                                                */
    /*----------------------------------------------------------------*/

    /*----------------------------------------------------------------*/
    /* Code Body                                                      */
    /*----------------------------------------------------------------*/
    if (vrsi_ctx.state != MED_AUD_VRSI_STATE_READY)
    {
        ASSERT(KAL_FALSE);
    }

    if (VRSI_Play_Tag(vrsi_ctx.grammar, tag_id, MEDIA_VMP_AS_RINGTONE) == VRSI_FAIL)
    {
        vrsi_ctx.session_on = KAL_FALSE;
        return aud_vrsi_error();
    }
    vrsi_ctx.state = MED_AUD_VRSI_STATE_PROCESS;
    return MED_RES_OK;
}


/*****************************************************************************
 * FUNCTION
 *  aud_vrsi_play_tts
 * DESCRIPTION
 *  
 * PARAMETERS
 *  lang        [IN]        
 * RETURNS
 *  
 *****************************************************************************/
kal_int32 aud_vrsi_play_tts(kal_uint8 lang)
{
    /*----------------------------------------------------------------*/
    /* Local Variables                                                */
    /*----------------------------------------------------------------*/

    /*----------------------------------------------------------------*/
    /* Code Body                                                      */
    /*----------------------------------------------------------------*/
    if (vrsi_ctx.state != MED_AUD_VRSI_STATE_READY)
    {
        ASSERT(KAL_FALSE);
    }

    if (VRSI_TTS_Play(lang, (kal_uint16*) vrsi_ctx.pmp_text) == VRSI_FAIL)
    {
        vrsi_ctx.session_on = KAL_FALSE;
        return aud_vrsi_error();
    }
    vrsi_ctx.state = MED_AUD_VRSI_STATE_PROCESS;
    return MED_RES_OK;
}

/* database management */


/*****************************************************************************
 * FUNCTION
 *  aud_vrsi_get_tagnum
 * DESCRIPTION
 *  
 * PARAMETERS
 *  tagNum      [?]     
 * RETURNS
 *  
 *****************************************************************************/
kal_int32 aud_vrsi_get_tagnum(kal_int32 *tagNum)
{
    /*----------------------------------------------------------------*/
    /* Local Variables                                                */
    /*----------------------------------------------------------------*/

    /*----------------------------------------------------------------*/
    /* Code Body                                                      */
    /*----------------------------------------------------------------*/
    if (vrsi_ctx.state != MED_AUD_VRSI_STATE_READY)
    {
        ASSERT(KAL_FALSE);
    }

    if (VRSI_Gram_GetTagNum(vrsi_ctx.grammar, tagNum) == VRSI_FAIL)
    {
        *tagNum = 0;
        return aud_vrsi_error();
    }
    return MED_RES_VRSI_OK;
}


/*****************************************************************************
 * FUNCTION
 *  aud_vrsi_get_tag_info
 * DESCRIPTION
 *  
 * PARAMETERS
 *  tagNum          [IN]        
 *  pTagID          [IN]        
 *  ppTagName       [IN]        
 *  pTagLong        [?]         
 * RETURNS
 *  
 *****************************************************************************/
kal_int32 aud_vrsi_get_tag_info(
            kal_int32 tagNum,
            const kal_uint16 *pTagID,
            kal_uint16 **ppTagName,
            kal_int32 *pTagLong)
{
    /*----------------------------------------------------------------*/
    /* Local Variables                                                */
    /*----------------------------------------------------------------*/

    /*----------------------------------------------------------------*/
    /* Code Body                                                      */
    /*----------------------------------------------------------------*/
    if (vrsi_ctx.state != MED_AUD_VRSI_STATE_READY)
    {
        ASSERT(KAL_FALSE);
    }

    if (VRSI_ReadTags(vrsi_ctx.grammar, tagNum, pTagID, ppTagName, pTagLong) == VRSI_FAIL)
    {
        return aud_vrsi_error();
    }

    return MED_RES_VRSI_OK;
}


/*****************************************************************************
 * FUNCTION
 *  aud_vrsi_del_tags
 * DESCRIPTION
 *  
 * PARAMETERS
 *  tagNum      [IN]        
 *  pTagID      [IN]        
 * RETURNS
 *  
 *****************************************************************************/

⌨️ 快捷键说明

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