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

2016-02-19 09:30 32 1 收藏

给自己一点时间接受自己,爱自己,趁着下午茶的时间来学习图老师推荐的android播放视频时在立体声与单声道之间切换无变化原因分析及解决,过去的都会过去,迎接崭新的开始,释放更美好的自己。

【 tulaoshi.com - 编程语言 】

部分客户客户使用第三方视频播放器,有立体声与单声道之间切换,发现切换后无作用
原因是由于在HAL层默认没有处理上层发的stereo 转mono的命令,所以会没有效果,

可按如下修改,添加相关处理:
1修改AudioMTKHardware.cpp
添加:static String8 keySetStereo2MonoMode = String8("EnableStereoOutput");

2.修改status_t AudioMTKHardware::setParameters(const String8 &keyValuePairs)
在EXIT_SETPARAMETERS:
之前添加:
代码如下:

if (param.getInt(keySetStereo2MonoMode, value) == NO_ERROR) {
ALOGD("setParameters(): %s value=%d", keyValuePairs.string(),value);
((AudioMTKStreamManager*)mAudioMTKStreamManager)-ForceSterer2Mono(value);
}


3.修改AudioMTKStreamManager.h
添加public方法定义:
代码如下:

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添加定义:
代码如下:

status_t SetStereoToMonoFlagForce(bool flag);
status_t AudioMTKStreamOut::SetStereoToMonoFlagForce(bool flag)
{
ALOGD("SetStereoToMonoFlagForce = %d",flag);
mSteroToMono = flag;
return NO_ERROR;
}

来源:https://www.tulaoshi.com/n/20160219/1591069.html

延伸阅读
标签: 服务器
Vista下UC聊天室立体声混音设置方法 自从UC2008beta版推出后,有网友反映该版本不支持Vista系统混音功能,无法设置混音在UC聊天室播放伴奏音乐唱歌。其实在Vista系统下能否使用混音功能,与UC版本无关,它只是声卡设置问题。 Vista系统音量音频设备的功能包括播放、录制和声音三大项,由于Vista系统的音量音频设备大部分功能(包括立...
Win7如何打开注册表立体声混音设置   发现其实在很多用w764位旗舰版的客户中都会用到录音这个功能,其实录音这个功能的声音录下来会比较的简单,还可以添加一些背景音乐,然后我们在把自己录好的声音和背景一起结合在一起,但是却找不到可以混音的选项,其实这个功能电脑是有的,就是看你怎么打开它就可以使用了,如果有需要的朋友不...
领略亲子与狗狗之间的情感变化 在看过男孩与斗牛犬的甜蜜友谊和柴犬Maru×宝宝一茶的故事之后,你还是怀疑着宠物与小孩共存的可能性?那么这位图老师有了三个小孩的纽约辣妈Jessica Shyba,就以这一个月来领养米克斯Theo的自身经验告诉大家,养了宠物之后,亲子与狗狗之间的情感变化吧! Jessica不讳言地一开始就在blog上说了...
Excel的引用分为绝对引用与相对引用,对一个单元格的引用实际上有四种组合,这里与大家分享下如何在这四种组合之间快速切换。 手动修改引用的类型效率是比较低的,下面与大家分享下快速更改引用类型的方法,从编辑栏中选中需要更改引用类型的内容,按下“F4”键,变为行列都是绝对引用,再连续按“F4”键就可以在列相对引...
标签: 电脑入门
多声道环绕声Dolby Audio Code3(简称AC-3,但更为流行的叫法为Dolby Digital)是针对HDTV(高清晰电视)应用而开发的一种音频编码格式,它将5个全频段(3Hz-20000Hz)的音轨和一个低频段(3Hz-120Hz)的音轨通过有损压缩的方式编码为一个数据流。 Dolby Audio Code3(简称AC-3,但更为流行的叫法为Dolby Digital)是针对HDTV(高清晰电视)应用而开发的一...

经验教程

63

收藏

53
微博分享 QQ分享 QQ空间 手机页面 收藏网站 回到头部