Android简单的利用MediaRecorder进行录音
来源:互联网 发布:七天网络查分注册账号 编辑:程序博客网 时间:2024/05/04 10:35
亲,你的浏览器过时了,请立即更换Chrome浏览器。X
裴裴的Android学习和分享
爱学习,爱分享。
撒花庆祝3334名博主获11月CSDN博客“持之以恒”勋章! 点击了解英特尔云计算
11月热门下载资源TOP100强力推荐! 参加浏览器性能挑战赛免费去美国!
11月热门下载资源TOP100强力推荐! 参加浏览器性能挑战赛免费去美国!
分类:Android基础学习2011-12-02 10:2733人阅读 评论(0) 收藏举报
MediaRecorder可以进行简单的录音,由于操作简单所以可以用来进行基本的录音。
下面提供一个简单的例子,记得在Mainfest文件中添加权限。
代码如下:
- package com.ppmeet;
- import java.io.IOException;
- import android.app.Activity;
- import android.graphics.PixelFormat;
- import android.media.MediaRecorder;
- import android.os.Bundle;
- import android.view.View;
- import android.view.View.OnClickListener;
- import android.view.Window;
- import android.view.WindowManager;
- import android.widget.Button;
- /**
- * class name:TestBasicAudio<BR>
- * class description:Basic Record Audio Demo<BR>
- *
- * @version 1.00 2011/12/01
- * @author CODYY)peijiangping
- */
- public class TestBasicAudio extends Activity {
- private Button button_start;
- private Button button_stop;
- private MediaRecorder recorder;
- public void onCreate(Bundle savedInstanceState) {
- super.onCreate(savedInstanceState);
- getWindow().setFormat(PixelFormat.TRANSLUCENT);// 让界面横屏
- requestWindowFeature(Window.FEATURE_NO_TITLE);// 去掉界面标题
- getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN,
- WindowManager.LayoutParams.FLAG_FULLSCREEN);
- // 重新设置界面大小
- setContentView(R.layout.main);
- init();
- }
- private void init() {
- button_start = (Button) this.findViewById(R.id.start);
- button_stop = (Button) this.findViewById(R.id.stop);
- button_stop.setOnClickListener(new AudioListerner());
- button_start.setOnClickListener(new AudioListerner());
- }
- class AudioListerner implements OnClickListener {
- @Override
- public void onClick(View v) {
- if (v == button_start) {
- initializeAudio();
- }
- if (v == button_stop) {
- recorder.stop();// 停止刻录
- // recorder.reset(); // 重新启动MediaRecorder.
- recorder.release(); // 刻录完成一定要释放资源
- // recorder = null;
- }
- }
- private void initializeAudio() {
- recorder = new MediaRecorder();// new出MediaRecorder对象
- recorder.setAudioSource(MediaRecorder.AudioSource.MIC);
- // 设置MediaRecorder的音频源为麦克风
- recorder.setOutputFormat(MediaRecorder.OutputFormat.RAW_AMR);
- // 设置MediaRecorder录制的音频格式
- recorder.setAudioEncoder(MediaRecorder.AudioEncoder.AMR_NB);
- // 设置MediaRecorder录制音频的编码为amr.貌似android就支持amr编码。
- recorder.setOutputFile("/sdcard/peipei.amr");
- // 设置录制好的音频文件保存路径
- try {
- recorder.prepare();// 准备录制
- recorder.start();// 开始录制
- } catch (IllegalStateException e) {
- e.printStackTrace();
- } catch (IOException e) {
- e.printStackTrace();
- }
- }
- }
- }
AndroidMainfest.xml
- <?xml version="1.0" encoding="utf-8"?>
- <manifest xmlns:android="http://schemas.android.com/apk/res/android"
- package="com.ppmeet"
- android:versionCode="1"
- android:versionName="1.0" >
- <uses-sdk android:minSdkVersion="8" />
- <application
- android:icon="@drawable/ic_launcher"
- android:label="@string/app_name" >
- <activity
- android:name=".TestBasicAudio"
- android:screenOrientation="landscape" >
- <intent-filter >
- <action android:name="android.intent.action.MAIN" />
- <category android:name="android.intent.category.LAUNCHER" />
- </intent-filter>
- </activity>
- </application>
- <!-- 联网权限 -->
- <uses-permission android:name="android.permission.INTERNET" />
- <!-- 往SDCard写入数据权限 -->
- <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
- <!-- 录音权限 -->
- <uses-permission android:name="android.permission.RECORD_AUDIO" />
- <!-- 在SDCard中创建与删除文件权限 -->
- <uses-permission android:name="android.permission.MOUNT_UNMOUNT_FILESYSTEMS" />
- </manifest>
- 顶
- 1
- 踩
- 0
查看评论
暂无评论
您还没有登录,请[登录]或[注册]
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
- 个人资料
- 访问:2888次
- 积分:184分
- 排名:千里之外
- 原创:12篇
- 转载:5篇
- 译文:0篇
- 评论:10条
peijiangping1989
- 文章搜索
- 文章分类
- Android基础学习(1)
- Android流媒体学习(0)
- 文章存档
- 2011年12月(1)
- 2011年11月(10)
- 2011年09月(1)
- 2011年08月(2)
- 2011年03月(1)
- 2010年12月(1)
- 2010年11月(1)
- 阅读排行
- Android ListView 自定义... (1172)
- android 线程中的ui问题 Han... (269)
- ActivityGroup 实现分页和自... (237)
- 关于java 的科学计算算法(前,中,后... (155)
- Android抓取手机视频数据流。 (128)
- FLV帧全面分析。研究心得。 (121)
- Flash中播放视频和音频流(rtmp协... (112)
- RTMP中如何平稳的获取时间戳 (107)
- Flash采集音频和视频发布到red5服... (93)
- 最佳视频播放器:Adobe Flash ... (75)
- 评论排行
- Android抓取手机视频数据流。 (4)
- 关于java 的科学计算算法(前,中,后... (2)
- Android ListView 自定义... (1)
- ActivityGroup 实现分页和自... (1)
- RTMP中如何平稳的获取时间戳 (1)
- android 线程中的ui问题 Han... (1)
- Flash采集音频和视频发布到red5服... (0)
- FLV帧全面分析。研究心得。 (0)
- 在Android程序中获取avc中的数据 (0)
- Flash中播放视频和音频流(rtmp协... (0)
- 推荐文章
- 最新评论
- RTMP中如何平稳的获取时间戳
haomeiling1122: 嘿嘿,谢谢,学习中,好东西~!
- ActivityGroup 实现分页和自定义标签(内有GridView的点击背景样式的改变方法)
lichangjun0746: 很不错!学习了!
- Android抓取手机视频数据流。
peijiangping1989: @talentprince:put到发送服务器的类哦。还有帧的长度不是固定的,仔细看代码。。。
- Android抓取手机视频数据流。
talentprince: 你好,你的发送线程里面是怎么做的呢 put到什么地方去?发送是帧还是固定长度发
- Android抓取手机视频数据流。
peijiangping1989: @Stephen_Chen:看我前面几篇博客。那个就是avc中的数据哦
- Android抓取手机视频数据流。
Stephen_Chen: 感谢你的代码,我想问问byte[] aa = { 0x01, 0x42, (byte) ....这串...
- Android ListView 自定义用法(ListView 实现单选功能)
yykxlgh: 不错
- android 线程中的ui问题 Handler的基本使用 关于获取动态时间在ui的问题
Ordosbxy: thank you!
- 关于java 的科学计算算法(前,中,后缀表达式的转换)——计算器制作的心得
luimangtu:
- 关于java 的科学计算算法(前,中,后缀表达式的转换)——计算器制作的心得
lvjingxian: 嘻嘻 ,写的好好笑哇 。。
- Android简单的利用MediaRecorder进行录音
- Android简单的利用MediaRecorder进行录音
- Android简单的利用MediaRecorder进行录音
- Android简单的利用MediaRecorder进行录音
- android 利用MediaRecorder()进行录音
- android 通过MediaRecorder实现简单的录音
- Android 使用mediaRecorder进行录音
- android之通过MediaRecorder进行手机录音
- android之通过MediaRecorder进行手机录音
- Android开发使用MediaRecorder进行录音
- 使用MediaRecorder进行录音
- android录音 MediaRecorder类的使用简介
- Android系统的录音功能MediaRecorder
- Android--MediaRecorder录音录像
- android MediaRecorder录音
- Android MediaRecorder录音
- Android MediaRecorder 录音
- Android录音--AudioRecord、MediaRecorder
- NOSQL
- 简明 Vim 练级攻略
- 跳槽,你准备好了吗
- 关注C++细节——类中的几个特殊函数
- 【動態規劃】機器分配
- Android简单的利用MediaRecorder进行录音
- Android设置全局变量&&启动系统自带应用程序
- Glusterfs全局统一命名空间
- jar下功能测试的配置问题
- zoj 1061 &&poj 0128 Web Navigation(STL 栈~~水)
- Qt5.0编译
- serialVersionUID
- SVN+Trac+Apache 软件项目版本控制及Bug跟踪平台搭建
- android intent.setDate方法