展会信息港展会大全

Android简单的利用MediaRecorder进行录音
来源:互联网   发布日期:2015-09-29 10:18:30   浏览:1925次  

导读:MediaRecorder可以进行简单的录音,由于操作简单所以可以用来进行基本的录音。下面提供一个简单的例子,记得在Mainfest文件中添加权限。代码如下:package com.ppmeet;import java.io.IOException;import and......

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.

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>

赞助本站

人工智能实验室

相关热词: MediaRecorder 录音

AiLab云推荐
展开

热门栏目HotCates

Copyright © 2010-2024 AiLab Team. 人工智能实验室 版权所有    关于我们 | 联系我们 | 广告服务 | 公司动态 | 免责声明 | 隐私条款 | 工作机会 | 展会港