`

android音频、视频、拍照基础操作

阅读更多
播放音乐和视频用的是类:MediaPlayer
刻录声音和视频用的是类:MediaRecorder
拍照:Camera

没什么难度,都是调用android的API

1.刻录视频,关键代码如下:
               MediaRecorder mediaRecorder = new MediaRecorder();
		mediaRecorder.reset();   //首先重置一下
		mediaRecorder.setVideoSource(MediaRecorder.VideoSource.CAMERA); //从照相机种采集视频
		mediaRecorder.setVideoSource(MediaRecorder.AudioSource.MIC);  //从麦克风中采集声音
		mediaRecorder.setOutputFormat(MediaRecorder.OutputFormat.THREE_GPP); //输出格式3GP
		mediaRecorder.setVideoSize(350, 240);  //视频文件大小
		mediaRecorder.setVideoFrameRate(3);  //录制帧数,每秒3帧
		mediaRecorder.setVideoEncoder(MediaRecorder.VideoEncoder.H263);//设置视频编码方式
		mediaRecorder.setAudioEncoder(MediaRecorder.AudioEncoder.AMR_NB); //设置声音编码方式
		/*设置保存路径为sd卡根目录*/
		File videoFile = new File(Environment.getExternalStorageDirectory(),System.currentTimeMillis()+".3gp");
		mediaRecorder.setOutputFile(videoFile.getAbsolutePath());
		mediaRecorder.setPreviewDisplay(surfaceView.getHolder().getSurface()); //定义一个SurfaceView来显示画面
		mediaRecorder.prepare();    //此处要捕捉异常,底层调用硬件实现准备工作
		mediaRecorder.start();
		
		//停止
		mediaRecorder.stop();
		mediaRecorder.release();
		mediaRecorder=null;


2.刻录声音,关键代码如下:
        //与录制视频很相似
        mRecorder = new MediaRecorder();
        mRecorder.setAudioSource(MediaRecorder.AudioSource.MIC);    //声音来源麦克风
        mRecorder.setOutputFormat(MediaRecorder.OutputFormat.THREE_GPP);  //输出格式
        mRecorder.setOutputFile(mFileName);     //可以自己给定保存文件
        mRecorder.setAudioEncoder(MediaRecorder.AudioEncoder.AMR_NB);  //编码方式
        mRecorder.prepare();
        mRecorder.start();


3.播放声音,关键代码如下:
           MediaPlayer mPlayer = new MediaPlayer();
            mPlayer.reset
            mPlayer.setDataSource(mFileName);      //设置播放的声音文件
            mPlayer.prepare();
            mPlayer.start();

            //............
            //基本方法
            mPlayer.pause()   //暂停播放
            mPlayer.stop()     //停止播放
            mPlayer.seekTo(int)   //直接跳到某点进行播放


4.播放视频,关键代码如下:
               MeidaPlayer media = new MeidaPlayer();
               media.setAudioStreamType(AudioManager.STREAM_MUSIC);
		media.setDisplay(sh);      //定义一个SurfaceView播放它
		media.setDataSource(file.getAbsolutePath());
		media.prepare();
		media.start();

5.拍照,关键代码如下
               Camera camera = Camera.open();
		Parameters parameters = camera.getParameters();
		parameters.setPreviewSize(420, 300);     //设置预览照片的大小
		parameters.setPreviewFrameRate(3);  //每秒3帧
		parameters.setPictureFormat(PixelFormat.JPEG);   //设置照片输出格式
		parameters.set("jpeg-quaility", 85);   //设置照片质量
		parameters.setPictureSize(420, 300);   //设置照片大小
		camera.setParameters(parameters);
		camera.setPreviewDisplay(SurfaceView)  //定义一个 SurfaceView用于显示预览
		camera.startPreview();
		
		//..........
		//按下拍照键后
		//camera.autoFocus(null);   自动对焦
		camera.takePicture(null, null, new PictureClassback());   //拍照
             
             //..............
             //需要实现PictureCallback接口
            private class PictureClassback implements PictureCallback{

		public void onPictureTaken(byte[] abyte0, Camera camera) {
			Bitmap bitmap = BitmapFactory.decodeByteArray(abyte0, 0, abyte0.length); //根据照片2进制流生成位图
			File file = new File(Environment.getExternalStorageDirectory(),System.currentTimeMillis()+".jpg");
			FileOutputStream stream = new FileOutputStream(file);
			bitmap.compress(CompressFormat.JPEG, 100, stream);   //此方法设置照片质量和输出格式,并且保存图片
			stream.close();
		}
    	
    }

分享到:
评论

相关推荐

    android打码音频照相功能

    在Android平台上,开发一款集成了打码音频和照相功能的应用是一项综合性的任务,涉及到多媒体处理、设备硬件访问以及用户界面设计等多个方面。下面将详细解释这些知识点。 1. **Android开发环境**:首先,我们需要...

    Android拍照视频范例

    在Android平台上,开发一款能够实现拍照、视频拍摄以及与之相关的功能的应用程序,是一个常见的需求。这个"Android拍照视频范例"可能包含了多种关键的技术点,让我们逐一详细探讨。 首先,**GPS照相机**功能是现代...

    视频,音频,拍照

    在Android平台上,开发涉及视频、音频和拍照功能的应用是一项常见的任务。这些功能为用户提供丰富的多媒体体验,也是许多社交、娱乐和生产力应用的核心组成部分。本文将深入探讨如何在Android中实现这些功能,包括...

    Android 小视频录制、播放和拍照功能

    Android系统提供了MediaRecorder类,用于录制音频和视频。在小视频录制中,你需要初始化MediaRecorder,设置输入源(通常是摄像头)、输出格式(如MP4)、编码器等参数。例如: ```java MediaRecorder ...

    Android 录像、照相、录音

    在Android平台上,开发一款应用程序以实现录像、照相和录音功能是常见的需求。这些功能让应用能够捕获用户的视觉和听觉体验,丰富了交互方式。以下是对标题和描述中涉及知识点的详细说明: 1. **Android硬件权限...

    android音频录制

    而Android系统的多媒体框架也为开发者提供了MediaRecorder类来实现视频录制功能。在使用MediaRecorder时我们要注意以下几点: 第一:无法使用模拟器进行测试,在使用MediaRecorder进行音视频录制时,需要用真机进行...

    android图片/视频文件选择器

    在Android应用开发中,"android图片/视频文件选择器"是一个至关重要的组件,它允许用户在设备上方便地选择图片和视频。这个特定的选择器具备多种功能,包括多选、单选模式,以及内置的拍摄和裁剪工具,极大地提升了...

    android使用webrtc视频对讲实例 端到端

    在Android平台上,WebRTC(Web Real-Time Communication)是一种强大的开源框架,用于实现实时通信功能,包括音频、视频通话和数据共享。这个“android使用webrtc视频对讲实例 端到端”示例旨在帮助开发者理解如何在...

    android 自定义视频拍摄和图片拍摄

    - `MediaRecorder`类用于录制视频,设置源(`setCamera()`或`setVideoSource()`)、输出文件(`setOutputFile()`)、音频/视频编码格式(`setAudioEncoder()`,`setVideoEncoder()`)等。 - 启动录制:`...

    android 实现图片,音频,视频,展示,拍摄,预览。存储等功能

    在Android平台上,多媒体功能的实现是一项重要的任务,涵盖了图片、音频和视频的处理,包括展示、拍摄、预览以及存储等多个方面。以下是一些关键的知识点: 1. 图片展示: - `ImageView`:这是Android中最基本的...

    android UVC拍照录像

    Android UVC(Universal Video Class)拍照录像涉及到的是在Android设备上使用USB摄像头进行图像和视频采集的功能。UVC是USB设备类定义的一部分,主要用于统一不同厂商的视频设备接口,使得设备能够即插即用,无需...

    android 视频录像及拍照功能

    在Android平台上,实现视频录像和拍照功能是移动应用开发中常见的需求。这涉及到多媒体处理、摄像头操作、数据存储以及网络传输等多个技术领域。下面将详细阐述这些知识点。 1. **Android Camera API**: Android...

    Android实现后台连续静默拍照

    在Android平台上实现后台连续静默拍照是一项技术挑战,涉及到多个关键知识点。首先,我们要理解Android系统的权限管理和运行机制,然后是相机API的使用,以及如何在后台执行任务。以下是对这些核心概念的详细阐述。 ...

    Android 短视频录制demo

    这个"Android短视频录制demo"项目提供了一个基础的实现方案,可以帮助开发者快速理解并构建自己的短视频录制功能。下面将详细介绍这个Demo涉及的关键知识点。 首先,Android短视频录制涉及到的主要技术包括音视频...

    Android相机,音频视频录制,定位,指南针,传感器

    在Android平台上,开发一款功能丰富的应用常常涉及到多个关键领域,如相机、音频视频录制、定位、指南针以及传感器的利用。这些技术都是构建一个全面移动应用的重要组成部分,下面将逐一详细解析。 首先,Android...

    android自定义拍照和视频

    在Android开发中,自定义拍照和录制视频是常见的功能需求,尤其在社交、教育和娱乐类应用中。本文将深入探讨如何在Android平台上实现这些功能。 一、自定义拍照 1. 使用Camera API:Android提供了Camera API,允许...

    仿秒拍的视频拍照 录像 视频拼接

    在Android开发中,仿秒拍的视频拍照、录像和视频拼接是一项常见的需求,涉及到多媒体处理、摄像头控制以及视频编辑等多个技术领域。秒拍是一款流行的短视频应用,它的核心功能包括拍摄短视频、录制视频以及将多个...

    android微信视频

    1. **Android MediaRecorder**:MediaRecorder是Android提供的一个类,用于录制音频、视频或图片。在仿制微信视频录制功能时,MediaRecorder是必不可少的。你需要设置源(摄像头)、输出格式、音频和视频编码等参数...

    Android 录像拍照源码

    总之,这份“Android录像拍照源码”涵盖了Android多媒体编程的核心知识点,包括摄像头操作、媒体录制、文件保存、UI交互、兼容性处理等多个方面。深入研究这个源码,有助于提升Android应用开发的综合能力。

    android 摄像头、视频录制demo (竖屏)

    在Android平台上,开发摄像头应用和实现视频录制是常见的任务,特别是在设计移动应用时。本示例专注于"竖屏"模式,确保用户在预览、拍照和录制视频时获得正确的横竖屏体验。以下是对这个“android 摄像头、视频录制...

Global site tag (gtag.js) - Google Analytics