Esempio n. 1
0
status_t AudioMTKStreamManager::UpdateACFHCF(int value)
{
    AUDIO_ACF_CUSTOM_PARAM_STRUCT sACFHCFParam;
    for (int i = 0; i < mStreamOutVector.size() ; i++)
    {
        AudioMTKStreamOut  *pTempOut = (AudioMTKStreamOut *)mStreamOutVector.valueAt(i);
        if (value == 0)
        {
            ALOGD("setParameters Update ACF Parames");
            GetAudioCompFltCustParamFromNV(AUDIO_COMP_FLT_AUDIO, &sACFHCFParam);
            pTempOut->StreamOutCompFltPreviewParameter(AUDIO_COMP_FLT_AUDIO, (void *)&sACFHCFParam, sizeof(AUDIO_ACF_CUSTOM_PARAM_STRUCT));

            if ((pTempOut->GetStreamRunning()) && (pTempOut->GetStreamOutCompFltStatus(AUDIO_COMP_FLT_AUDIO)))
            {
                pTempOut->SetStreamOutCompFltStatus(AUDIO_COMP_FLT_AUDIO, false);
                pTempOut->SetStreamOutCompFltStatus(AUDIO_COMP_FLT_AUDIO, true);
            }
        }
        else if (value == 1)
        {
            ALOGD("setParameters Update HCF Parames");
            GetAudioCompFltCustParamFromNV(AUDIO_COMP_FLT_HEADPHONE, &sACFHCFParam);
            pTempOut->StreamOutCompFltPreviewParameter(AUDIO_COMP_FLT_HEADPHONE, (void *)&sACFHCFParam, sizeof(AUDIO_ACF_CUSTOM_PARAM_STRUCT));

            if ((pTempOut->GetStreamRunning()) && (pTempOut->GetStreamOutCompFltStatus(AUDIO_COMP_FLT_HEADPHONE)))
            {
                pTempOut->SetStreamOutCompFltStatus(AUDIO_COMP_FLT_HEADPHONE, false);
                pTempOut->SetStreamOutCompFltStatus(AUDIO_COMP_FLT_HEADPHONE, true);
            }
        }
        else if (value == 2)
        {
            ALOGD("setParameters Update ACFSub Parames");
            GetAudioCompFltCustParamFromNV(AUDIO_COMP_FLT_AUDIO_SUB, &sACFHCFParam);
            pTempOut->StreamOutCompFltPreviewParameter(AUDIO_COMP_FLT_AUDIO_SUB, (void *)&sACFHCFParam, sizeof(AUDIO_ACF_CUSTOM_PARAM_STRUCT));

            if ((pTempOut->GetStreamRunning()) && (pTempOut->GetStreamOutCompFltStatus(AUDIO_COMP_FLT_AUDIO)))
            {
                pTempOut->SetStreamOutCompFltStatus(AUDIO_COMP_FLT_AUDIO, false);
                pTempOut->SetStreamOutCompFltStatus(AUDIO_COMP_FLT_AUDIO, true);
            }
        }
    }
    return NO_ERROR;
}
Esempio n. 2
0
uint32_t AudioFtm::GetVibSpkCalibrationStatus()
{
    ALOGD("%s()", __FUNCTION__);
    AUDIO_ACF_CUSTOM_PARAM_STRUCT audioParam;
    GetAudioCompFltCustParamFromNV(AUDIO_COMP_FLT_VIBSPK, &audioParam);
    if (audioParam.bes_loudness_WS_Gain_Max != VIBSPK_CALIBRATION_DONE && audioParam.bes_loudness_WS_Gain_Max != VIBSPK_SETDEFAULT_VALUE)
    {
        return 0;
    }
    else
    {
        return audioParam.bes_loudness_WS_Gain_Min;
    }
}