播放音乐和视频用的是类: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); //输出格式3GPmediaRecorder.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();}        }

更多相关文章

  1. android获取本地视频路径
  2. android 音视频录制
  3. android视频录制(调用系统视频录制),生成缩略图
  4. Android实现圆角照片和圆形照片
  5. 关于Android调用系统Action录制视频
  6. android视频截图
  7. android webview加载哔哩哔哩网页视频无法打开问题
  8. Android WebView 使用方法,可以解决web视频播放层级问题。

随机推荐

  1. Android高手进阶教程(二)之 ----Android
  2. 运用WindowManager,当滚动列表时显示一个
  3. Android DataBinding 找不到生成的bindin
  4. Android(安卓)Service详解(二)第一个Servic
  5. android深度搜索学习笔记四(硬件抽像hal第
  6. 用Scroller完成一个简单的ViewPager
  7. Android(安卓)sensor开关问题
  8. Android常见的存储方式
  9. ubuntu下载编译android源码(二)
  10. android handler的警告Handler Class Sho