用媒体采样类库:MediaRecorder来编写Android 录音
分类:手机开发| 发布:佚名| 查看:384 | 发表时间:2014/12/23
1、使用Mediarecorder 录音
MediaRecorder类用来进行媒体采样,包括音频和视频。也就是用来记录音频和视频方法的类,记录的数据一般都是写入到文件里面。因此我们可以通过这个类实现录音和录视频的功能。下面介绍MediaRecorder用来录音的简单方法:
01 | MediaRecorder recorder = new MediaRecorder(); |
02 | recorder.setAudioSource(MediaRecorder.AudioSource.MIC); |
03 | recorder.setOutputFormat(MediaRecorder.OutputFormat.THREE_GPP); |
04 | recorder.setAudioEncoder(MediaRecorder.AudioEncoder.AMR_NB); |
05 | recorder.setOutputFile(PATH_NAME); |
12 | 上面是使用MediaRecorder录音的简单流程代码,基本上你使用的代码,就能实现录音的功能。 |
2、MediaRecorder 相关的类
03 | class MediaRecorder.AudioEncoder |
05 | class MediaRecorder.AudioSource |
07 | interface MediaRecorder.OnErrorListener |
09 | interface MediaRecorder.OnInfoListener |
11 | class MediaRecorder.OutputFormat |
13 | class MediaRecorder.VideoEncoder |
15 | class MediaRecorder.VideoSource |
3、MediaRecorder常用方法
02 | final static int getAudioSourceMax() |
12 | void setAudioChannels( int numChannels) |
14 | void setAudioEncoder( int audio_encoder) |
16 | void setAudioEncodingBitRate( int bitRate) |
18 | void setAudioSamplingRate( int samplingRate) |
20 | void setAudioSource( int audio_source) |
22 | void setAuxiliaryOutputFile(String path) |
23 | void setAuxiliaryOutputFile(FileDescriptor fd) |
26 | void setCamera(Camera c) |
28 | void setCaptureRate( double fps) |
30 | void setMaxDuration( int max_duration_ms) |
32 | void setMaxFileSize( long max_filesize_bytes) |
34 | void setOnErrorListener(MediaRecorder.OnErrorListener l) |
36 | void setOnInfoListener(MediaRecorder.OnInfoListener listener) |
38 | void setOrientationHint( int degrees) |
40 | void setOutputFile(FileDescriptor fd) |
42 | void setOutputFile(String path) |
44 | void setOutputFormat( int output_format) |
46 | void setPreviewDisplay(Surface sv) |
48 | void setProfile(CamcorderProfile profile) |
50 | void setVideoEncoder( int video_encoder) |
52 | void setVideoEncodingBitRate( int bitRate) |
54 | void setVideoFrameRate( int rate) |
56 | void setVideoSize( int width, int height) |
58 | void setVideoSource( int video_source) |
4、播放录音
01 | mPlayer = new MediaPlayer(); |
02 | mPlayer.setDataSource(mSampleFile.getAbsolutePath()); |
03 | mPlayer.setOnCompletionListener( this ); |
04 | mPlayer.setOnErrorListener( this ); |
上面是一段简单播放录音的过程,结合上面录音代码,就可以实现录音和回放。