当前位置: 首页 > news >正文

如何实现AudioRecord内录r_submix模式系统Speaker正常发声?-学员作业

背景:

近期一个学员求助一个需求,需求大概描述如下:
公司一个安卓定制产品,客户想要实现对手机设备的所有声音进行录制同时还需要录制mic麦克风声音。
而且要求录制系统声音(内录)时候要求喇叭speaker也可以正常发声,尽量可以不需要修改系统源码(因为版本已经发布,老板希望尽量客户需求只提供现成方案),直接让客户app基于系统编译安装既可以。

需求分析

1、实现两个声音同时录制和合成
这个其实比较好实现,大概思路就是可以搞出两个AudioRecord,一个AudioRecord实现内录考虑REMOTE_SUBMIX,另一个mic声音也可以采用AudioRecord进行录制。
然后把两个AudioRecord的buffer进行相加合成最后的buffer。

2、系统内录声音时候,要求speaker也可以有声音

上面学员的需求提出后,其实学习过audio课程后就知道内录系统声音的实现,如果采用普通的AudioRecord加上AudioSource.REMOTE_SUBMIX方案,会发现Speaker就无法出声了。


audio课程中虽然有相关的实战案例让系统内录声音时候speaker也发出声音的情况,不过当时是有修改AudioPolicyManager中获取device中额外添加上speaker这个device,但是学员这里是要求不要修改系统源码就可以实现,所以这种现成的方案就不适用了。
那么如何实现不通过修改系统源码实现这个功能呢?

学员作业要求:

1、先不考虑是否可以修改系统源码情况,自己思考出一种方案可以实现相关需求

2、调研查看aosp系统中是否已经有了这个类似功能,如果有可以考虑把这个功能进行参考学习

3、如果第2步调查到有具体的功能,请针对这个功能相关代码进行相关实现原理进行剖析

原文参考:https://mp.weixin.qq.com/s/ocmGyBOAj91DWj_1Eu3D5A
更多framework实战开发干货,请关注下面“千里马学框架”

http://www.jsqmd.com/news/672790/

相关文章:

  • 国内业界首个AI一键生成手绘思维导图的脑图产品来!万兴科技旗下万兴脑图重磅焕新
  • 手机号码归属地查询系统的架构设计与实现
  • 图像图片照片风格转换API接口介绍
  • 别再一上来就调包了!统计建模新手最容易踩的5个坑(附Python/R实战避坑清单)
  • 用TCRT5000传感器改造玩具车:低成本搭建竞赛级Arduino循迹机器人
  • 鸿蒙开发入门指南:鸿蒙canvas实操——快速掌握自定义图表组件
  • Sqoop和DataX到底怎么选?从我们的数仓迁移实战聊聊工具选型
  • 保姆级教程:用YOLOv11+PyQt5做个垃圾分类小助手(附完整代码和数据集)
  • Obsidian Weread插件:一键同步微信读书笔记到知识库的高效解决方案
  • MAA明日方舟自动化助手:从零开始的全功能使用指南
  • 田纳西男子多次黑入美国最高法院文件系统:安全防护与访问控制剖析
  • 别再折腾WSL2了!Windows 10/11一键搞定Docker Desktop安装(附保姆级排错指南)
  • 别再调参了!用KELM(核极限学习机)做回归预测,Matlab代码实战与性能对比
  • 免费解锁iPhone激活锁:使用applera1n工具完整指南
  • 终极免费卡拉OK游戏:UltraStar Deluxe完整入门指南
  • Golang怎么设置响应状态码_Golang如何用WriteHeader返回404或500状态【基础】
  • 如何用BabelDOC轻松解决PDF翻译难题:5步完整指南
  • VSCode调试Python时,Step Into/Over/Out到底怎么选?一张图讲清楚
  • 从CAD老手到中望3D新手:快速上手的草图绘制习惯迁移与效率技巧
  • 避坑指南:ESP32串口通信(UART)那些让人头大的报错,我都帮你解决了
  • 技术深度解析:League Akari如何重新定义英雄联盟自动化工具
  • MIL-53(Al)修饰四氧化三铁纳米颗粒,MIL-53(Al)@Fe₃O₄ NPs,反应机制
  • 3步诊断与彻底解决Joplin多设备同步冲突的完整指南
  • 告别Tesseract-OCR配置玄学:一份给OpenCV/Pytesseract用户的避坑清单与终极配置指南
  • 别再只用箱线图了!用R的Raincloud Plots(云雨图)可视化你的纵向数据,附完整代码
  • 从工艺到特性:基于Silvaco Athena/Atlas的BJT设计与仿真全流程解析
  • Windows Cleaner:三招拯救你的C盘,让Windows系统重获新生
  • 告别抓瞎调试!用SocketTools这款TCP/UDP测试工具,5分钟搞定网络通信自测
  • 从IPC标准到电路实测:PCB板材Dk/Df测试方法的选择与权衡
  • 在亚马逊云EC2上部署MacOS实例:从专属主机配置到远程桌面连接全攻略