视频录制(一)—mediaRecorder介绍

本文介绍MediaRecorder类的基本用法及录制音频和视频的步骤。MediaRecorder可通过设置音源、输出格式、音频编码器等参数来实现音频录制。此外,文章还提到了录制过程中可能触发的info和error事件。

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

MediaRecorder用法非常简单、直接,我一边翻译官方文档,一边解释具体的知识点。

public class MediaRecorder
extends Object

java.lang.Object
↳ android.media.MediaRecorder
MediaRecorder用来录制音频和视频,通过改变状态来控制操作流程。
这里写图片描述

下面附一个常用的录制音频的例子

 MediaRecorder recorder = new MediaRecorder();
 recorder.setAudioSource(MediaRecorder.AudioSource.MIC);
 recorder.setOutputFormat(MediaRecorder.OutputFormat.THREE_GPP);
 recorder.setAudioEncoder(MediaRecorder.AudioEncoder.AMR_NB);
 recorder.setOutputFile(PATH_NAME);
 recorder.prepare();
 recorder.start();   // Recording is now started
 ...
 recorder.stop();
 recorder.reset();   // 通过reset()方法,你可以重复利用mediaRecorder对象,reset()会使mediaRecorder返回setAudioSource()这一步
 recorder.release(); // 释放资源后,mediaRecorder就不能重复利用了

程序可能会注册一些info和error事件,用来监测录制过程中,内部的状态更新和运行错误。通过调用setOnInfoListener(OnInfoListener) 和setOnErrorListener(OnErrorListener)来注册这两个事件。

注意:目前MediaRecorder在模拟器上不起作用。

开发指南

关于如何使用MediaRecorder录制视频的更多信息,请阅读Camera开发指南。关于如何录制音频的信息,请阅读 Audio Capture开发指南。

概要


嵌套类
classMediaRecorder.AudioEncoder
定义音频编码器
classMediaRecorder.AudioSource
定义音源
interfaceMediaRecorder.OnErrorListener
当录制中发生错误时调用回调的接口定义
interfaceMediaRecorder.OnInfoListener
调用回调用来传达录制的一些信息或者警告的接口定义
classMediaRecorder.OutputFormat
定义输出格式
classMediaRecorder.VideoEncoder
定义视频编码器
classMediaRecorder.VideoSource
定义视频源


常量
intMEDIA_ERROR_SERVER_DIED
媒体服务死机
intMEDIA_RECORDER_ERROR_UNKNOWN
未知的mediaRecorder错误
intMEDIA_RECORDER_INFO_MAX_DURATION_REACHED
最大拍摄时间已设置,并且现在已经达到。
intMEDIA_RECORDER_INFO_MAX_FILESIZE_REACHED
最大的文件大小已设置,并且现在已经达到
intMEDIA_RECORDER_INFO_UNKNOWN
未知的录制信息

Public构造方法
MediaRecorder()
默认的构造方法
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值