本帖最后由 AlexWeng 于 2016-6-5 16:33 编辑
6M181工厂菜单中对比度曲线设置无作用问题处理
副标题:6M181在factory--nonlinear--contrast对应关系错误,没有正确匹配 解决方法关键词:contrast 适应机种: MSD306,MSD309,6M48,6M181
在彩讯的6M181在在factory--nonlinear--contrast对应关系错误,没有正确匹配修改方法如红色部分:
在 MApp_ZUI_ACTfactorymenu.c
static REDRAW_TYPE _MApp_ZUI_ACT_FactoryMenuDecIncValue(U8 u8Item, BOOLEAN bInc)
{
#if(LOG_FACTORYMENU_SHOWITEM)
u8Item = GetFactoryMenuItemu8ShowItem(_eFactoryMenuPage, u8Item);
#endif
switch(_eFactoryMenuPage)
{
case EN_FACTORY_PAGE_ROOT:
switch(u8Item)
{
case 7:
ST_AUDIO_PEQ.u8_PEQOnOff = !ST_AUDIO_PEQ.u8_PEQOnOff;
return EN_REDRAW_ITEM;
}
break;
if(EN_FACTORY_PAGE_BRIGHTNESS_CURVE == _eFactoryMenuPage)
{
...........
}
else if(EN_FACTORY_PAGE_CONTRAST_CURVE == _eFactoryMenuPage)
{
#if VGA_HDMI_YUV_POINT_TO_POINT
if(IsHDMIInUse()&&MDrv_PQ_Get_HDMIPCMode())
{
MApi_XC_ACE_SetPCYUV2RGB(MAIN_WINDOW, FALSE);
MApi_XC_ACE_PicSetContrast(MAIN_WINDOW,FALSE, MApp_Scaler_FactoryContrast(msAPI_Mode_PictureContrastN100toReallyValue(ST_PICTURE.u8Contrast),ST_SUBCOLOR.u8SubContrast));
}
else
#endif
{
#if 1
Api_XC_ACE_PicSetContrast(MAIN_WINDOW,MApi_XC_IsYUVSpace(MAIN_WINDOW), MApp_Scaler_FactoryContrast
(msAPI_Mode_PictureContrastN100toReallyValue(ST_PICTURE.u8Contrast),ST_SUBCOLOR.u8SubContrast));
#else
//MApi_XC_ACE_PicSetContrast(MAIN_WINDOW,MApi_XC_IsYUVSpace(MAIN_WINDOW),
MApp_Scaler_FactoryContrast(ST_PICTURE.u8Contrast,ST_SUBCOLOR.u8SubContrast));
#endif
}
}
else if(EN_FACTORY_PAGE_SATURATION_CURVE == _eFactoryMenuPage)
{
#if VGA_HDMI_YUV_POINT_TO_POINT
if(IsHDMIInUse()&&MDrv_PQ_Get_HDMIPCMode())
{
;// do nothing
}
else
#endif
{
MApi_XC_ACE_PicSetSaturation(MAIN_WINDOW, MApi_XC_IsYUVSpace(MAIN_WINDOW), msAPI_Mode_PictureSaturationN100toReallyValue
(ST_PICTURE.u8Saturation) );
}
}
else if(EN_FACTORY_PAGE_SHARPNESS_CURVE == _eFactoryMenuPage)
{
MApi_XC_ACE_PicSetSharpness( MAIN_WINDOW, msAPI_Mode_PictureSharpnessN100toReallyValue(ST_PICTURE.u8Sharpness) );
}
else if(EN_FACTORY_PAGE_HUE_CURVE == _eFactoryMenuPage)
{
MApi_XC_ACE_PicSetHue( MAIN_WINDOW, MApi_XC_IsYUVSpace(MAIN_WINDOW), msAPI_Mode_PictureHueN100toReallyValue
(ST_PICTURE.u8Hue) );
}
else if(EN_FACTORY_PAGE_VOLUME_CURVE == _eFactoryMenuPage)
{
msAPI_AUD_AdjustAudioFactor(E_ADJUST_VOLUME, stGenSetting.g_SoundSetting.Volume, 0);
}
MApp_SaveNonLinearCurveSetting();
return EN_REDRAW_ITEM;
}
#endif
|