来电铃声,闹钟铃声,短信提示音,铃声预览以及拍照音等,在播放过程中插入耳机或者拔出耳机,外放中的铃声音量会出现变大或者变小等不符合用户体验的现象。
原因分析:
因为这几种提示音都是默认在插着耳机的情况下,外放也是要输出的,而插耳机前是LoudSpeaker Mode,插入耳机之后会变成LoudSpeaker Headset mode,因此两种模式不同,音频的音量参数也需要重新配置。
可以通过工程模式来check,步骤如下:
1. 进入工程模式 –>Hardware testing->Audio如下图。
2. Check LoudSpeaker Mode和Headset_LoudSpeaker Mode的如下两个对比图的参数完全一致。
以上的改动可以保证音量的一致,调整完成后,需要写到source code中的default value中,步骤如下。
Audio_Ver1_Volume_Custom_default.h中的
VER1_AUD_HEADSETSPEAKER_VOLUME_DEFAULT的index 1就是headset+speaker mode下的Max Speaker Vol,index 0是Max Headset vol;
VER1_AUD_SPEAKER_VOLUME_DEFAULT的index0就是loudspeaker mode下的max vol的值;
#define VER1_AUD_VOLUME_RING \
112,136,160,184,208,232,255,0,0,0,0,0,0,0,0,\ è对应工程模式下的normal mode的Ring的音量参数。仅使用用index 0~6
112,136,160,184,208,232,255,0,0,0,0,0,0,0,0,\ è对应到工程模式下的headset mode的Ring的音量参数。仅使用用index 0~6
104,128,152,176,200,224,248,0,0,0,0,0,0,0,0,\ è对应到工程模式下的LoudSPK mode的Ring的音量参数。仅使用用index 0~6
104,128,152,176,200,224,248,0,0,0,0,0,0,0,0 è对应到工程模式下的LoudSPK_Headset mode的ring的参数。仅使用用index 0~6