- ubuntu12.04环境下使用kvm ioctl接口实现最简单的虚拟机
- Ubuntu 通过无线网络安装Ubuntu Server启动系统后连接无线网络的方法
- 在Ubuntu上搭建网桥的方法
- ubuntu 虚拟机上网方式及相关配置详解
CFSDN坚持开源创造价值,我们致力于搭建一个资源共享平台,让每一个IT人在这里找到属于你的精彩世界.
这篇CFSDN的博客文章android播放视频时在立体声与单声道之间切换无变化原因分析及解决由作者收集整理,如果你对这篇文章有兴趣,记得点赞哟.
部分客户客户使用第三方视频播放器,有立体声与单声道之间切换,发现切换后无作用 原因是由于在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; } 。
最后此篇关于android播放视频时在立体声与单声道之间切换无变化原因分析及解决的文章就讲到这里了,如果你想了解更多关于android播放视频时在立体声与单声道之间切换无变化原因分析及解决的内容请搜索CFSDN的文章或继续浏览相关文章,希望大家以后支持我的博客! 。
我想在我的 android 应用程序中播放 PCM 音频数据。网络上有很多示例,但仅用于单 channel ,我有 4 个 channel (如本问题标题所述)。 当我设置 AudioTrack au
我正在尝试通过 channelsplitter 将立体声音频路由到具有增益控制的 6 个 channel ,然后返回到 channelMerger,以控制 5.1 组的所有 6 个 channel .
我试图从 iPhone XS 的所谓立体声后置麦克风中获取两个 channel ,但在 AVAudioSession 的不同点上只能看到一个 channel 。和 AVAudioSessionPort
我是一名优秀的程序员,十分优秀!