RDA EQ&频响曲线

相关数据:

  FAC->Audio->EQ Setting

    EQ Band    1-7

    Gain      0

    Frequency   500

    Q Factor    1.5

  FAC->Audio->PEQ 1/2/3

    Enable      Enable

    Center Freq.    230

    Q Factor      3.5

    Gain Step     -13

  这样看,EQ 为7 段,PEQ为3段,EQ+PEQ总共可以设置10段不同频率下的增益,品质因数作为辅助,调整增益的作用范围。

频响曲线:

  

API接口:

  EQ数据结构:

    1、  g_stFactoryUserData.Audio.EQsetting.n_EQ_Gain                    //放在FAC菜单,只有一组:
    2.1、g_stSoundData.stAudioSoundModeSetting[SoundModeIndex].EQ120hz          //在用户菜单,关联声音模式,不同的声音模式EQ数据不同,保存当前值
    2.2、g_stSettingDefault_FactoryUser.stAudioSoundModeSetting[SoundModeIndex].EQ120hz  //在用户菜单,关联声音模式,不同的声音模式EQ数据不同,默认值
    2.3、g_stSettingDefault_Sound.stAudioSoundModeSetting[SoundModeIndex].EQ120hz    //在用户菜单,关联声音模式,不同的声音模式EQ数据不同,默认值

  PEQ数据结构

    g_stFactoryUserData.Audio.PEQ1.n_Audio_PEQ1_CenterFreq

  调用接口:

BOOLEAN APP_Audio_Initial(void)
{
    BOOLEAN IsSuccess = APP_TRUE;
    INT8 i8Balance = 0;
    UINT8 ucStableSound = 0;
    UINT8 ucSurround = 0;

#ifdef SUPPORT_PEQ_SRS_SETTING
    TVFE_Audio_Equalizer_Init_t EqBandQvalueSetting;

    AL_Setting_Read(APP_Data_UserSetting_Handle(), SYS_SET_ID_FACTUSER,0,
            sizeof(APP_SETTING_FactoryUser_t), &g_stFactoryUserData);

    EqBandQvalueSetting.bEQ_fq[0] = g_stFactoryUserData.Audio.EQsetting.n_EQ_Freq[0];
    EqBandQvalueSetting.bQfactor[0] = g_stFactoryUserData.Audio.EQsetting.n_EQ_q[0];
    EqBandQvalueSetting.bEQ_fq[1] = g_stFactoryUserData.Audio.EQsetting.n_EQ_Freq[1];
    EqBandQvalueSetting.bQfactor[1] = g_stFactoryUserData.Audio.EQsetting.n_EQ_q[1];
    EqBandQvalueSetting.bEQ_fq[2] = g_stFactoryUserData.Audio.EQsetting.n_EQ_Freq[2];
    EqBandQvalueSetting.bQfactor[2] = g_stFactoryUserData.Audio.EQsetting.n_EQ_q[2];
    EqBandQvalueSetting.bEQ_fq[3] = g_stFactoryUserData.Audio.EQsetting.n_EQ_Freq[3];
    EqBandQvalueSetting.bQfactor[3] = g_stFactoryUserData.Audio.EQsetting.n_EQ_q[3];
    EqBandQvalueSetting.bEQ_fq[4] = g_stFactoryUserData.Audio.EQsetting.n_EQ_Freq[4];
    EqBandQvalueSetting.bQfactor[4] = g_stFactoryUserData.Audio.EQsetting.n_EQ_q[4];
    EqBandQvalueSetting.bEQ_fq[5] = g_stFactoryUserData.Audio.EQsetting.n_EQ_Freq[5];
    EqBandQvalueSetting.bQfactor[5] = g_stFactoryUserData.Audio.EQsetting.n_EQ_q[5];
    EqBandQvalueSetting.bEQ_fq[6] = g_stFactoryUserData.Audio.EQsetting.n_EQ_Freq[6];
    EqBandQvalueSetting.bQfactor[6] = g_stFactoryUserData.Audio.EQsetting.n_EQ_q[6];

    TVFE_Audio_Initial_Main_Equalizer(&EqBandQvalueSetting);

    MID_Audio_EQ(
        g_stFactoryUserData.Audio.EQsetting.n_EQ_Gain[0],
        g_stFactoryUserData.Audio.EQsetting.n_EQ_Gain[1],
        g_stFactoryUserData.Audio.EQsetting.n_EQ_Gain[2],
        g_stFactoryUserData.Audio.EQsetting.n_EQ_Gain[3],
        g_stFactoryUserData.Audio.EQsetting.n_EQ_Gain[4],
        g_stFactoryUserData.Audio.EQsetting.n_EQ_Gain[5],
        g_stFactoryUserData.Audio.EQsetting.n_EQ_Gain[6] );
#endif

    //PEQ SETTING
    TVFE_Audio_Parametric_Equalizer_Config_t PEQ_Setting;
    //Enable
    PEQ_Setting.enable[0] = g_stFactoryUserData.Audio.PEQ1.n_Audio_PEQ1_Enable;
    PEQ_Setting.enable[1] = g_stFactoryUserData.Audio.PEQ2.n_Audio_PEQ2_Enable;
    PEQ_Setting.enable[2] = g_stFactoryUserData.Audio.PEQ3.n_Audio_PEQ3_Enable;
    //frequency
    PEQ_Setting.eq_fq[0] =g_stFactoryUserData.Audio.PEQ1.n_Audio_PEQ1_CenterFreq;
    PEQ_Setting.eq_fq[1] =g_stFactoryUserData.Audio.PEQ2.n_Audio_PEQ2_CenterFreq;
    PEQ_Setting.eq_fq[2] =g_stFactoryUserData.Audio.PEQ3.n_Audio_PEQ3_CenterFreq;
    //Gain
    PEQ_Setting.gain[0] = g_stFactoryUserData.Audio.PEQ1.n_Audio_PEQ1_GainStep;
    PEQ_Setting.gain[1] = g_stFactoryUserData.Audio.PEQ2.n_Audio_PEQ2_GainStep;
    PEQ_Setting.gain[2] = g_stFactoryUserData.Audio.PEQ3.n_Audio_PEQ3_GainStep;
    //Q
    PEQ_Setting.Qfactor[0] = g_stFactoryUserData.Audio.PEQ1.n_Audio_PEQ1_q;
    PEQ_Setting.Qfactor[1] = g_stFactoryUserData.Audio.PEQ2.n_Audio_PEQ2_q;
    PEQ_Setting.Qfactor[2] = g_stFactoryUserData.Audio.PEQ3.n_Audio_PEQ3_q;
    
    TVFE_Audio_Set_Parametric_Equalizer_Config(&PEQ_Setting);

    return IsSuccess;
}
原文地址:https://www.cnblogs.com/jiangzhaowei/p/7597681.html