android开发笔记之多媒体—音频和视频的录制
来源:互联网 发布:notepad 安装sql插件 编辑:程序博客网 时间:2024/04/30 16:12
使用MediaRecorder录制音频
手机一般都提供麦克风硬件,而Android系统可以利用该硬件来录制音频了。
使用MediaRecorder录制音频的步骤:
1)创建MediaRecorder对象 mediaRecorder = new MediaRecorder(); 2)调用MediaRecorder对象的setAudioSource()方法设置声音来源,一般传入MediaRecorder.AudioSource.MIC参数指定录制来自麦克风的声音 mediaRecorder.setAudioSource(MediaRecorder.AudioSource.MIC); 3)调用MediaRecorder对象的setOutputFormat()设置录制音频文件的格式。 recorder.setOutputFormat(MediaRecorder.OutputFormat.THREE_GPP); 4)调用MediaRecorder对象的setAudioEncoder,setAudioEncodingBitRate(int),setAudioSamplingRate(int)设置录制的声音的编码格式,编码位率,采样率等。 这些参数将可以控制所录制的声音的品质,文件的大小,一般声音品质越好,声音文件越大。 recorder.setAudioEncoder(MediaRecorder.AudioEncoder.AMR_NB); 5)调用MediaRecorder对象的setOutputFile(String)设置录制文件的保存的位置。 mediaRecorder.setOutputFile(Environment. getExternalStorageDirectory(). getAbsolutePath()+"/huadong.amr"); 6)调用MediaRecorder的prepare()方法准备录制 mediaRecorder.prepare(); 7)调用MediaRecorder对象的start()方法开始录制 mediaRecorder.start(); 8)录制完成,调用MediaRecorder对象的stop()方法停止录制,并调用release()方法释放资源。 mediaRecorder.stop(); //释放资源 mediaRecorder.release();
**注意:a)第三步和第四步不能搞反,否则会引发异常。
b)需要的权限**
android:name="android.permission.WRITE_EXTERNAL_STORAGE"android:name="android.permission.RECORD_AUDIO"android:name="android.permission.READ_EXTERNAL_STORAGE"
使用MediaRecorder和SurfaceView录制视频
手机一般都提供麦克风和摄像头硬件,而Android系统可以利用该硬件来录制视频了。
使用MediaRecorder录制音频的步骤:
1)创建MediaRecorder对象 mediaRecorder = new MediaRecorder(); 2)调用MediaRecorder对象的setVideoSource()方法设置视频的来源,一般传入MediaRecorder.VideoSource.CAMERA参数指定录制来自摄像头的图像 mediaRecorder.setVideoSource(MediaRecorder.VideoSource.CAMERA); 3)调用MediaRecorder对象的setAudioSource()方法设置声音来源,一般传入MediaRecorder.AudioSource.MIC参数指定录制来自麦克风的声音mediaRecorder.setAudioSource(MediaRecorder.AudioSource.MIC); 4)调用MediaRecorder对象的setOutputFormat()设置录制音频文件的格式。 recorder.setOutputFormat(MediaRecorder.OutputFormat.THREE_GPP); 5)调用MediaRecorder对象的setVideoEncoder设置录制的视频的编码格式等。这些参数将可以控制所录制的视频的品质,文件的大小,一般视频品质越好,视频文件越大。 recorder.setVideoEncoder(MediaRecorder.VideoEncoder.H264);6)调用MediaRecorder对象的setAudioEncoder,setAudioEncodingBitRate(int),setAudioSamplingRate(int)设置录制的声音的编码格式,编码位率,采样率等。 这些参数将可以控制所录制的声音的品质,文件的大小,一般声音品质越好,声音文件越大。recorder.setAudioEncoder(MediaRecorder.AudioEncoder.AMR_NB); 7)调用setVideoFrameRate(20)设置录制的视频帧率。必须放在设置编码和格式的后面,否则报错。 8)调用setVideoSize(176, 144);设置视频录制的分辨率。必须放在设置编码和格式的后面,否则报错。 9)调用setPreviewDisplay(sv.getHolder().getSurface());这是视频的预览效果。 10)调用MediaRecorder对象的setOutputFile(String)设置录制文件的保存的位置。 11)调用MediaRecorder的prepare()方法准备录制。 12)调用MediaRecorder对象的start()方法开始录制。 13)录制完成,调用MediaRecorder对象的stop()方法停止录制,并调用release()方法释放资源。
注意:需要的权限:
相比录制音频文件多了一个相机的权限
android.permission.CAMERA
1 0
- android开发笔记之多媒体—音频和视频的录制
- Android之多媒体视频的播放和录制
- android开发笔记之多媒体—播放音频(音乐)
- Android之多媒体--使用MediaRecorder录制音频
- android开发笔记之多媒体—VideoView播放视频
- android开发笔记之多媒体—MediaPlayer + SurfaceView播放视频
- 26、从头学Android之多媒体--使用MediaRecorder录制音频
- 从头学Android之多媒体--使用MediaRecorder录制音频
- 26、从头学Android之多媒体--使用MediaRecorder录制音频
- android开发笔记之多媒体—SurfaceView
- android开发笔记之多媒体—小图片的加载
- android开发笔记之多媒体—大图片的加载
- android开发笔记之多媒体—图像的操作
- android开发笔记之多媒体—图片的颜色处理
- android开发笔记之多媒体—Canvas的相关方法
- iOS开发之多媒体---音视频播放、录制,拍照等
- Android开发笔记-音频录制/播放&音频
- Android开发笔记-音频录制/播放&音频
- 快速集成android实现listview的字母A-Z排序,界面侧边字母索引
- C++函数指针
- 数素数
- 相见恨晚:linux下的c++filt 命令
- 设计文档
- android开发笔记之多媒体—音频和视频的录制
- Android存储(读取)之内存FilesDir存储
- 顺序表实现集合运算
- 【Leetcode】Combine Two Tables
- ubuntu鼠标滚轮方向修改方法(运动方向和滚轮滚动方向一致)
- Python-格式化字符串
- Gym 100712C Street Lamps
- 《java入门第一季》之Date类案例,算一算你的恋爱纪念日
- 链表操作