源码网商城,靠谱的源码在线交易网站 我的订单 购物车 帮助

源码网商城

android播放视频时在立体声与单声道之间切换无变化原因分析及解决

  • 时间:2021-09-18 08:37 编辑: 来源: 阅读:
  • 扫一扫,手机访问
摘要:android播放视频时在立体声与单声道之间切换无变化原因分析及解决
部分客户客户使用第三方视频播放器,有立体声与单声道之间切换,发现切换后无作用 原因是由于在HAL层默认没有处理上层发的stereo 转mono的命令,所以会没有效果, [b]可按如下修改,添加相关处理:[/b] 1修改AudioMTKHardware.cpp 添加:static String8 keySetStereo2MonoMode = String8("EnableStereoOutput"); 2.修改status_t AudioMTKHardware::setParameters(const String8 &keyValuePairs) 在EXIT_SETPARAMETERS: 之前添加:
[u]复制代码[/u] 代码如下:
if (param.getInt(keySetStereo2MonoMode, value) == NO_ERROR) { ALOGD("setParameters(): %s value=%d", keyValuePairs.string(),value); ((AudioMTKStreamManager*)mAudioMTKStreamManager)->ForceSterer2Mono(value); }
3.修改AudioMTKStreamManager.h 添加public方法定义:
[u]复制代码[/u] 代码如下:
status_t ForceSterer2Mono(bool flag); status_t AudioMTKStreamManager::ForceSterer2Mono(bool flag) { // force all stream to standby ALOGD("ForceSterer2Mono = %d",flag); if (mStreamOutVector.size()) { for (size_t i = 0; i < mStreamOutVector.size() ; i++) { AudioMTKStreamOut *pTempOut = (AudioMTKStreamOut *)mStreamOutVector.valueAt(i); pTempOut->SetStereoToMonoFlagForce(flag); } } return NO_ERROR; }
4.修改AudioMTKStreamOut.h t添加定义:
[u]复制代码[/u] 代码如下:
status_t SetStereoToMonoFlagForce(bool flag); status_t AudioMTKStreamOut::SetStereoToMonoFlagForce(bool flag) { ALOGD("SetStereoToMonoFlagForce = %d",flag); mSteroToMono = flag; return NO_ERROR; }
  • 全部评论(0)
联系客服
客服电话:
400-000-3129
微信版

扫一扫进微信版
返回顶部