mt6735 [Audio Driver]FM应用打开外放后耳机也能有声音

来源:互联网 发布:淘宝评论福利在哪里找 编辑:程序博客网 时间:2024/05/02 01:24
在 AudiomtkPolicyManager.cpp中添加如下代码, 搜索//add start,添加两个地方.
audio_devices_t AudioMTKPolicyManager::getDeviceForStrategy(routing_strategy strategy,
bool fROMCache)
#ifdef MTK_AUDIO
case STRATEGY_PROPRIETARY_ANLG_V2:
case STRATEGY_PROPRIETARY_ANLG:{
...
if (device2 == 0) {
device2 = mAvailableOutputDevices & AudioSystem:EVICE_OUT_SPEAKER;
}
// device is DEVICE_OUT_SPEAKER if we come from case STRATEGY_SONIFICATION, 0 otherwise
//add start
if(device2 == AudioSystem::DEVICE_OUT_SPEAKER){
ALOGD("xwxwxwxw device2 == mAvailableOutputDevices & AudioSystem::DEVICE_OUT_SPEAKER");
device2 |=AudioSystem::DEVICE_OUT_WIRED_HEADSET;
}
//add end
device |= device2;


if (device == 0) {
ALOGE("getDeviceForStrategy() speaker device not found");
}
break;
}
#endif
case STRATEGY_PROPRIETARY_DGTL_V2:
case STRATEGY_PROPRIETARY_DGTL: {
.......


if (device2 == 0) {
device2 = mAvailableOutputDevices & AudioSystem::DEVICE_OUT_SPEAKER;
}
// device is DEVICE_OUT_SPEAKER if we come from case STRATEGY_SONIFICATION or
// STRATEGY_ENFORCED_AUDIBLE, 0 otherwise
ALOGD(" getDeviceForStrategy() strategy %d, device %x device2 %x mDeviceForStrategy[strategy] %x+++",
strategy, device,device2,mDeviceForStrategy[strategy]);
//add start


if(device2 == AudioSystem::DEVICE_OUT_SPEAKER){
ALOGD("device2 == mAvailableOutputDevices & AudioSystem::DEVICE_OUT_SPEAKER");
device2 |=AudioSystem::DEVICE_OUT_WIRED_HEADSET;
}
//add end
ALOGD(" getDeviceForStrategy() strategy %d, device %x device2 %x ******", strategy, device,device2);
device |= device2;
ALOGD("getDeviceForStrategy() strategy %d, device %x device2 %x ----", strategy, device,device2);


if (device) break;
device = mDefaultOutputDevice;


if (device == 0) {
ALOGE("getDeviceForStrategy() no device found for STRATEGY_MEDIA");
}
}
break;

请参照修改,这样修改之后,FM应用打开外放时,耳机也能有声音。

资料转载于一牛网论坛 MT6735

阅读全文
0 0
原创粉丝点击