Android中使用原生MediaRecorder APi实现录音功能

MediaRecorder是Android用于录音的API,它可以设置音频源如MIC,输出格式如THREE_GPP,编码格式如AMR_NB,并指定录音文件路径。使用包括实例化、设置参数、准备、开始、停止和释放资源等步骤。尽管功能丰富,但MediaRecorder只能录制音频和视频,录音质量有限,且路径需预先设定。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一、MediaRecorder简介

MediaRecorder是Android中的一个API,可以用来实现录音功能。它继承自android.media.MediaRecorder类,可以实现音频和视频的录制。

二、MediaRecorder的使用

1、首先,实例化一个MediaRecorder对象,并设置音频源:

val recorder = MediaRecorder()
recorder.setAudioSource(MediaRecorder.AudioSource.MIC)

2、设置音频的输出格式:

recorder.setOutputFormat(MediaRecorder.OutputFormat.THREE_GPP)

3、设置音频的编码格式:

recorder.setAudioEncoder(MediaRecorder.AudioEncoder.AMR_NB)

4、设置录音文件的路径:

var path=""

var fileName = "${DateFormat.format("yyyyMMdd_HHmmss", Calendar.getInstance(Locale.CHINA))}.m4a"

var audioSaveDir=filesDir.absolutePath

path="$audioSaveDir$fileName"
recorder.setOutputFile(path);

5、准备录音:

recorder.prepare()

6、开始录音:

recorder.start()

7、停止录音:

recorder.stop()

8、释放资源:

recorder.release()

三、MediaRecorder的优缺点

MediaRecorder可以记录音频和视频,可以设置不同的输出格式,可以设置不同的编码格式,还可以设置不同的音量,可以设置不同的录音文件的路径,等等。

但是,MediaRecorder也有一些缺点,比如它只能录制音频和视频,不能录制图像;实现步骤不够简洁,录音文件的路径也需要提前设置,不能动态设置,它的录音效果也不是很好.

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值