AudioPlaybackCapture结合AudioRecord实现音频内录手机录音机「AudioPlaybackCapture结合AudioRecord实现音频内录」
导读:现在很多安卓手机都自带了录音机或者屏幕录制功能,但是系统自带的录音机是录制麦克风声音;而系统的屏幕录制又是录制的视频,仅需要系统声音的话,使用其他第三方剪辑软件把声音单独剪出来。如果你恰恰只需要录制手机本身发出的声音,那么本文应该对你有些帮助。 在安卓5.0的时候,系统就开放了视频录制接口:MediaProjection 和 MediaProjec...
现在很多安卓手机都自带了录音机或者屏幕录制功能,但是系统自带的录音机是录制麦克风声音;而系统的屏幕录制又是录制的视频,仅需要系统声音的话,使用其他第三方剪辑软件把声音单独剪出来。如果你恰恰只需要录制手机本身发出的声音,那么本文应该对你有些帮助。
在安卓5.0的时候,系统就开放了视频录制接口:MediaProjection 和 MediaProjectionManager,到了安卓10.0的时候系统又提供了音频捕捉接口AudioPlaybackCapture,有了这个接口我们就可以实现对系统播放的音频进行录制了。
申请和声明必要的用户权限,注意高版本在kt或者java代码中动态申请。
AndroidManifest.xml中配置允许音频播放捕获
- 首先是向用户申请授权。
注意,此时弹出系统弹窗,该弹窗的样式是无法改变的,主要是为了保护用户隐私,防止钓鱼违规录音。
- 在用户同意授权之后,我们会在onActivityResult中收到回调。然后启动音频录制的service
- 定义通知栏
- 初始化录音机
- 开始录音,保存录音
- 停止录音
我们可以在activity中发出停止录音的消息,service接收到该消息之后,执行停止录音。我这里用的是EventBus
昭通版权声明:本网信息来自于互联网,目的在于传递更多信息,并不代表本网赞同其观点。其原创性以及文中陈述文字和内容未经本站证实,对本文以及其中全部或者部分内容、文字的真实性、完整性、及时性本站不作任何保证或承诺,并请自行核实相关内容。本站不承担此类作品侵权行为的直接责任及连带责任。如若本网有任何内容侵犯您的权益,请及时联系我们,本站将会在24小时内处理完毕,E-mail:xinmeigg88@163.com