`

(转)Android多媒体学习八:调用Android自带的音频录制程序,实现录制

 
阅读更多

Android多媒体学习八:调用Android自带的音频录制程序,实现录制

Android中有自带的音频录制程序,我们可以通过指定一个Action为MediaStore.Audio.Media.RECORD_SOUND_ACTION的Intent来

启动它就可以了。然后在onActivityResult()方法中,获取Intent的Data,就是录制的音频对应的URI。

 

代码:

 

package demo.camera;
import android.app.Activity;
import android.content.Intent;
import android.net.Uri;
import android.os.Bundle;
import android.provider.MediaStore;
import android.view.View;
import android.widget.Toast;
/**
 * 被实例演示如何调用Android自带的应用来完成Audio的录入
 * 其实很简单,我们需要指定一个MediaStore.Audio.Media.RECORD_SOUND_ACTION的Action来启动就可以
 * 返回的Data数据就是我们录制的音频的URI了
 * 
 * 通过上面这种方式,灵活性不够高,我们可以利用MediaRecorder类来实现自己的音频录制程序
 * MediaRecorder既可以用来录制音频,也可以用来录制视频
 * 创建了一个MediaRecorder实例后,需要调用setAudioSource和setAudioEncoder来初始化
 * 通常情况下,在准备录制前,我们还需要调用setOutputFormat()方法来决定使用的音频格式,同时调用
 * setOutputFile()来指定存放录制内容的文件
 * 
 * 这几个方法的调用顺序是:setAudioSource,setOutputFormat,setAudioEncoder,setOutputFile
 * 
 * 
 * 
 * @author Administrator
 *
 */
public class AudioRecordDemo extends Activity {
	
	
	public void onCreate(Bundle savedInstanceState){
		super.onCreate(savedInstanceState);
		setContentView(R.layout.audio_record);
	}
	
	public void onActivityResult(int requestCode, int resultCode, Intent data){
		//super.onActivityResult(requestCode, resultCode, data);
		//这里我们就可以获取到刚刚录制的音频的Uri,可以进行播放等操作,这里显示返回的Uri
		if(resultCode == RESULT_OK){
			Uri audioPath = data.getData();
			Toast.makeText(this, audioPath.toString(), Toast.LENGTH_LONG).show();
		}
	}
	
	public void onClick(View v){
		int id = v.getId();
		switch(id){
		case R.id.btn1:
			//调用Android自带的音频录制应用
			Intent intent = new Intent(MediaStore.Audio.Media.RECORD_SOUND_ACTION);
			startActivityForResult(intent, 0);
			break;
		case R.id.btn2:
			//通过MediaRecorder类来实现自己的音频录制程序
			Intent intent2 = new Intent();
			intent2.setClass(this, MyAudioRecord.class);
			startActivityForResult(intent2, 1);
			break;
		case R.id.btn3:
			//通过AudioRecord类实现自己的音频录制程序
			Intent intent3 = new Intent();
			intent3.setClass(this, MyAudioRecord2.class);
			startActivityForResult(intent3, 2);
			break;
		}
	}
}

 

 

转自chenjie19891104的的博客(http://blog.csdn.net/chenjie19891104/article/category/756236),以

便以后学习和查询!


 

 

学习总结:

 

  1. 调用Android自带的音频录制应用   

 

            //Action是MediaStore.Audio.Media.RECORD_SOUND_ACTION

 

            Intent intent = new Intent(MediaStore.Audio.Media.RECORD_SOUND_ACTION);   

            startActivityForResult(intent, 0);   

 

 

 

分享到:
评论

相关推荐

    Android代码-手机调用自带的麦克风进行声音录制录制的同时声音转换成波形不停的变动显示在手机的屏幕上.rar

    这篇文档将深入解析如何在Android平台上使用代码来实现手机...总的来说,Android平台提供了丰富的API来处理音频录制和可视化,开发者可以根据需求定制自己的音频应用,无论是简单的录音机还是复杂的音频编辑工具。

    android 视频分段录制,分段删除,最后合成一个mp4文件

    本项目利用了Android自带的`MediaRecorder`类进行视频录制,并借助第三方库`mp4parser`来完成视频的分段处理和最终的MP4文件合成。以下是对这些知识点的详细说明: 1. **MediaRecorder**:这是Android SDK中的一个...

    Android多媒体功能开发-调用系统Activity的例子

    通过Intent调用Android系统自带Activity界面实现多媒体功能的例子,包括录制、选择、播放音视频,以及拍照、选择、查看照片。这种方式代码简单,运行稳定;但界面固定,不够灵活。系统自带Activity也包括从外部存储...

    android视频录制预览网络播放

    总结来说,实现“android视频录制预览网络播放”需要掌握 Android 的多媒体处理、网络通信以及 UI 设计等多个技能。MediaRecorder 和 Camera 用于录制和预览,VideoView 或 ExoPlayer 负责网络播放,而 UI 设计则...

    基于Android的多媒体应用开发与研究.pdf

    - **核心应用程序**:Android自带了一套核心应用,如邮件客户端、日历、地图等,大部分由Java语言编写。开发者可以在此基础上进行扩展和定制,以满足特定需求。 - **应用框架**:Android的应用框架包含多个可复用...

    Android10以上截屏、录屏实现

    作为开发者,我们也可以通过调用`Activity`的`takeScreenshot()`方法或`WindowManager`的`takeScreenshot()`方法来实现程序内的截图。 2. **自定义截屏**:如果你需要在特定条件下或者有特殊需求时进行截屏,可以...

    【eoeAndroid】多媒体资源

    资源内容涵盖了音频播放与录制、视频播放与录制、照片拍摄与显示等多个方面,详细介绍了如何通过Intent调用系统自带Activity实现多媒体功能,以及如何使用Android提供的多媒体相关类自行编写代码实现更灵活的界面和...

    Android应用源码小米系列之小米录音机.zip

    2. **音频录制与处理**:Android提供了AudioRecord类用于实现音频录制。源码中会包含如何设置音频源、采样率、通道数和位深度等参数。同时,可能还会涉及到音频格式转换,如从PCM数据转换为常见的MP3或AAC格式。 3....

    录制多种音频,然后将它们合并为一个文件(android)

    在Android平台上,录制多种音频并将其合并为一个文件是一个常见的需求,这可能涉及到音视频编辑、游戏开发或者多媒体应用。本篇文章将详细讲解如何实现这一功能,并基于Android的API进行探讨。 首先,我们需要理解...

    android 自带案例代码

    "android 自带案例代码"是官方为了教育和指导开发者而设计的一系列示例项目,它们覆盖了Android开发的多个关键领域,包括用户界面、数据存储、网络通信、多媒体处理等。下面,我们将深入探讨这些知识点。 首先,...

    Android中文开发文档

    - **逻辑编写**:使用Java或Kotlin语言编写业务逻辑,调用系统提供的API实现功能需求。 - **调试测试**:利用IDE自带的调试工具和模拟器进行应用的调试和测试。 - **发布部署**:将应用打包为APK文件,上传至Google ...

    录制视频上传服务器

    综上所述,"录制视频上传服务器"项目涉及到Android多媒体API、网络编程、文件操作以及权限管理等多个方面,是移动开发中的重要技能。通过学习和实践,开发者可以实现高效、稳定且用户体验良好的视频上传功能。

    android 调用系统照相、摄像、录音功能。

    总之,调用Android系统的照相、摄像和录音功能是通过Intent和系统服务来完成的。理解这些基本操作对于开发多媒体应用至关重要。通过实践和理解这些代码,初学者可以逐步掌握Android多媒体开发的关键技能。

    android考试资料

    根据提供的文件信息,“android考试资料”这一标题及“android 开发程序选择题以及答案帮助你考试”的描述,本文将围绕Android开发的基础知识点进行详细的解析,旨在帮助读者更好地理解和掌握相关概念,为考试做好...

    Android-Video-Trimmer-master.zip

    是Android系统直接提供给我们的录制类,用于录制音频和视频的一个类,简单方便,不需要理会中间录制过程,结束录制后可以直接得到音频文件进行播放,录制的音频文件是经过压缩的,需要设置编码器,录制的音频文件...

    Android框架.pdf

    - 多媒体库:支持音频、视频回放和录制,如MPEG4、MP3、AAC、AMR等格式。 - SGL:2D图形引擎。 - SSL:提供安全套接字层,支持数据通信。 - OpenGL ES 1.0:用于3D图形渲染。 - SQLite:关系数据库管理系统。 ...

    [Android开发从入门到精通].扶松柏.扫描版 pdf

    - **模拟器与真机测试**:可以使用Android Studio自带的模拟器进行应用测试,也可以通过连接真机进行调试。 #### 3. 基础UI设计 - **布局管理器(Layouts)**:如LinearLayout、RelativeLayout等,用于组织界面元素。...

    安卓Android源码——视频采集+RTSP完整代码(可用).zip

    但是,直接使用Android自带的组件可能无法实现服务器推送,因此开发者通常需要借助第三方库,如libstreaming,这是一个用于Android的开源RTSP流服务器和客户端库。 1. 安装libstreaming库: - 将库导入项目中。 -...

Global site tag (gtag.js) - Google Analytics