MTK Audio Tuning Tool set Normal Recond Volume Invaild
2017-09-22 19:53
447 查看
问题根本因:
mtk音频调试工具在设置普通录音音量后,只是将音量参数设置到ram中没有设置到对应的
寄存器中。
解决方案:
a.工具上设置音频参数后,adb中执行命令 adb shell AudioSetParam UpdateMicGain=1
b.需要mtk修改音频调试工具;
分析过程:
开启录音应用时设置 Mic gain 过程:由 SetCaptureGain 函数调用ApplyMicGain 最终将mic参数设置到register中
函数调用流程:SetCaptureGain() --->ApplyMicGain(),log如下:
15:36:11.169255 751 28084 D AudioALSAVolumeController: +SetCaptureGain(), mode=0, source=1, input device=0x80000004, output device=0x2
//mode=0 表示为Idle_Normal_Record 模式。
15:36:11.169305 751 28084 D AudioYusuParam: QueryFeatureSupportInfo(),feature support 2290045
15:36:11.169363 751 28084 D AudioALSAVolumeController: ApplyMicGain MicType = 0 DegradedBGain = 12 SwAgcGain = 16, mULTotalGain = 192//MicType =
0Idle_Normal_Record
15:36:11.169412 751 28084 D AudioALSAVolumeController: ApplyMicGain mSwAgcGain = 16, mULTotalGain=192 DegradedBGain = 12
通过工具调试录音模式音频参数调用流程如下:通
设置mic gain值到ram后没有调用ApplyMicGain 设置mic gain到register。
如下调用流程:通过工具设置volume为255后,调用initVolumeController函数从Nvran中获取工具写入的音频参数放到mVolumeParam.audiovolume_mic[VOLUME_NORMAL_MODE][4]然后更新到对应的模式变量中mULTotalGainTable[mode]、mMicGain[Mode]
。然后通过setparamters接口更新参数到对应的寄存器中,但是没有调用“UpdateMicGain=1” 导致录音mic参数不生效。
15:36:37.892043 751 1280 D AudioALSAVolumeController: mVolumeParam.audiovolume_mic[VOLUME_NORMAL_MODE][4] = 255
// 通过工具设置volume参数为255
.....
15:36:37.899049 751 1280 D AudioALSAVolumeController: Volume = 252 UPLINK_GAIN_MAX DegradedB = 0.000000
15:36:37.899096 751 1280 D AudioALSAVolumeController: SetULTotalGain MicMode=0, Volume=252
//代码中判断volume不能大于252,若大于252则等于252
15:36:37.899141 751 1280 D AudioALSAVolumeController: SetMicGain MicMode=0, Gain=0
15:36:38.172890 751 2299 D AudioALSAHardware: +setParameters(): UpdateBesRecordParameters=1
15:36:38.405347 751 1280 D AudioALSAHardware: +setParameters(): UpdateBesRecordParameters=1
15:36:38.689454 751 751 D AudioALSAHardware: +setParameters(): UpdateBesRecordParameters=1
15:36:38.869964 751 2609 D AudioALSAHardware: +setParameters(): UpdateBesRec
mtk音频调试工具在设置普通录音音量后,只是将音量参数设置到ram中没有设置到对应的
寄存器中。
解决方案:
a.工具上设置音频参数后,adb中执行命令 adb shell AudioSetParam UpdateMicGain=1
b.需要mtk修改音频调试工具;
分析过程:
开启录音应用时设置 Mic gain 过程:由 SetCaptureGain 函数调用ApplyMicGain 最终将mic参数设置到register中
函数调用流程:SetCaptureGain() --->ApplyMicGain(),log如下:
15:36:11.169255 751 28084 D AudioALSAVolumeController: +SetCaptureGain(), mode=0, source=1, input device=0x80000004, output device=0x2
//mode=0 表示为Idle_Normal_Record 模式。
15:36:11.169305 751 28084 D AudioYusuParam: QueryFeatureSupportInfo(),feature support 2290045
15:36:11.169363 751 28084 D AudioALSAVolumeController: ApplyMicGain MicType = 0 DegradedBGain = 12 SwAgcGain = 16, mULTotalGain = 192//MicType =
0Idle_Normal_Record
15:36:11.169412 751 28084 D AudioALSAVolumeController: ApplyMicGain mSwAgcGain = 16, mULTotalGain=192 DegradedBGain = 12
通过工具调试录音模式音频参数调用流程如下:通
设置mic gain值到ram后没有调用ApplyMicGain 设置mic gain到register。
如下调用流程:通过工具设置volume为255后,调用initVolumeController函数从Nvran中获取工具写入的音频参数放到mVolumeParam.audiovolume_mic[VOLUME_NORMAL_MODE][4]然后更新到对应的模式变量中mULTotalGainTable[mode]、mMicGain[Mode]
。然后通过setparamters接口更新参数到对应的寄存器中,但是没有调用“UpdateMicGain=1” 导致录音mic参数不生效。
15:36:37.892043 751 1280 D AudioALSAVolumeController: mVolumeParam.audiovolume_mic[VOLUME_NORMAL_MODE][4] = 255
// 通过工具设置volume参数为255
.....
15:36:37.899049 751 1280 D AudioALSAVolumeController: Volume = 252 UPLINK_GAIN_MAX DegradedB = 0.000000
15:36:37.899096 751 1280 D AudioALSAVolumeController: SetULTotalGain MicMode=0, Volume=252
//代码中判断volume不能大于252,若大于252则等于252
15:36:37.899141 751 1280 D AudioALSAVolumeController: SetMicGain MicMode=0, Gain=0
15:36:38.172890 751 2299 D AudioALSAHardware: +setParameters(): UpdateBesRecordParameters=1
15:36:38.405347 751 1280 D AudioALSAHardware: +setParameters(): UpdateBesRecordParameters=1
15:36:38.689454 751 751 D AudioALSAHardware: +setParameters(): UpdateBesRecordParameters=1
15:36:38.869964 751 2609 D AudioALSAHardware: +setParameters(): UpdateBesRec
相关文章推荐
- (L1) AudioService AudioHandler setDeviceVolume, setAllVolumes, persistVolume
- Android N Audio: setMasterVolume流程2
- 【Android Audio】Audio: set MP3 volume
- Audio系列之通用的音量设置函数setStreamVolume()
- (L1) AudioService set , adjust , setAll , get Index, setStreamVolumeInt, adjustStreamVolume
- How to set up MPPS V16.1.02 ECU chip tuning tool
- RHEL6/7 下安装 devtoolset-3/4
- ADO RecondsetPtr 以及如何实现对表的增加删除数据
- 多媒体音量控制setVolumeControlStream(int streamType)
- VolumeSet agent
- MTK刷机工具Flash_Tool部分4032错误解决办法
- (iOS)确保设置话筒模式成功 AudioSessionSetProperty
- Volume has the fixed filesystem size option set.
- android setVolumeControlStream多媒体音量控制介绍
- MTK平台上有关LCD,Audio参数,Camera参数的使用
- Java_在其他类中调用ToolTipManager的方法,ex.调用ToolTipManager的setInitialDelay()方法
- AudioListener.volume = 0.0f;
- TI IPNC Image Tuning Tool 下载 2A算法必备
- Errors running builder "Integrated External Tool Builder" on project or cannot set breakpoint
- setVolumeControlStream(int streamType)