Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
门心叼龙
AudioRecorder
提交
a23fa333
A
AudioRecorder
项目概览
门心叼龙
/
AudioRecorder
通知
6
Star
0
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
4
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
A
AudioRecorder
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
4
Issue
4
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
前往新版Gitcode,体验更适合开发者的 AI 搜索 >>
未验证
提交
a23fa333
编写于
12月 05, 2018
作者:
门心叼龙
提交者:
GitHub
12月 05, 2018
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
Update README.md
上级
460a4f3b
变更
1
隐藏空白更改
内联
并排
Showing
1 changed file
with
72 addition
and
1 deletion
+72
-1
README.md
README.md
+72
-1
未找到文件。
README.md
浏览文件 @
a23fa333
...
@@ -112,7 +112,78 @@ public void play(String filepath) {
...
@@ -112,7 +112,78 @@ public void play(String filepath) {
#### 缺点:
#### 缺点:
* 录制格式为pcm,在播放器不能直接播放,需要编码和压缩
* 录制格式为pcm,在播放器不能直接播放,需要编码和压缩
#### 使用
#### 使用
##### 初始化
```
public SuperMediaManager(Context context) {
mMediaRecorder = new MediaRecorder();
//设置音频的来源
mMediaRecorder.setAudioSource(MediaRecorder.AudioSource.MIC);
//设置音频的输出格式
mMediaRecorder.setOutputFormat(MediaRecorder.OutputFormat.MPEG_4);//设置输出文件的格式
//设置音频文件的编码
mMediaRecorder.setAudioEncoder(MediaRecorder.AudioEncoder.AAC);//设置音频文件的编码
mMediaPlayer = new MediaPlayer();
}
```
##### 开始录制
##### 开始录制
```
public void startRecord(String filepath) {
Log.v(TAG, "startRecord startRecord");
Log.v(TAG, "file path:" + filepath);
//如果正在录制,就返回了
if(isRecording){
return;
}
mMediaRecorder.setOutputFile(filepath);
try {
//录制前准备工作
mMediaRecorder.prepare();
//开始录制
mMediaRecorder.start();
isRecording = true;
Log.v(TAG, "startRecord record succ...");
} catch (Exception e) {
Log.v(TAG, "startRecord record fail:" + e.toString());
}
}
```
##### 停止录制
##### 停止录制
##### 录制监听
```
public void stopRecord() {
if (mMediaRecorder != null && isRecording) {
//停止录制
mMediaRecorder.stop();
//重新开始
mMediaRecorder.reset();//注意:可以通过返回setAudioSource()步骤来重用该对象
//mMediaRecorder.release();注意:这个对象不能再次被使用,如果此次再次录制,就会报错
isRecording = false;
}
}
```
##### 播放
```
public void play(String filepath) {
try {
//如果正在播放,然后在播放其他文件就直接崩溃了
if(mMediaPlayer.isPlaying()){
return;
}
//设置数据源
mMediaPlayer.setDataSource(filepath);
//这个准备工作必须要做
mMediaPlayer.prepare();
mMediaPlayer.start();
mMediaPlayer.setOnCompletionListener(new MediaPlayer.OnCompletionListener() {
@Override
public void onCompletion(MediaPlayer mp) {
//播放完毕再重置一下状态,下次播放可以再次使用
mp.reset();
}
});
} catch (IOException e) {
e.printStackTrace();
}
}
```
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录