Android Media相关
MediaPlayer(媒体播放)
主要方法:
create:创建播放媒体
prepare:准备(同步)
prepareAsync:准备(异步)
setAudioStreamType:设置流媒体的类型
setDataSource:设置数据来源
setVolume:设置音量
setDisplay: 设置用SurfaceHolder来显示多媒体
setScreenOnWhilePlaying:设置屏幕常亮
seekTo:指定播放的位置(以毫秒为单位)
getCurrentPosition:当前播放位置
getDuration:文件的时长
setOnBufferingUpdateListener:网络流媒体的缓冲监听
setOnErrorListener:设置错误信息监听
setOnVideoSizeChangedListener:视频尺寸监听
注意事项
(1) 当MediaPlayer被create()或reset()之后,处于空闲,调用release()后结束
reset()后,调用其它方法可能触发OnErrorListener.onError()事件
Mediaplayer对象不再使用,调用release()释放
Mediaplayer对象创建时处于空闲状态,create()后则处于准备状态。
(2) 常用的播放控制可能因为音频、视频的质量或超时,需要注册setOnErrorListener方法监控。发生错误使用reset()恢复。
(3) Mediaplayer调用start()方法播放,isPlaying()方法检测是否播放
(4) pause()暂停播放,stop()停止播放。暂停时可通过start()恢复,停止时则调用prepare()准备状态,再调用start()。
VideoView(播放视频)
主要方法:
setVideoPath:设置视频源路径
setVideoURI:设置视频源地址
getDuration:得到视频文件的时间
getCurrentPosition:得到当前播放位置
getBufferPercentage:得到缓冲的百分比
resolveAdjustedSize:调整视频显示大小
setMediaController:设置播放控制器模式(播放进度条)
setOnCompletionListener:当视频文件播放完时触发事件
MediaRecorder(录制音视频)
主要方法:
setAudioEncoder:设置音频编码
setAudioSource:设置音频源
setCamera:设置摄像机
setVideoEncoder:设置视频编码
setVideoFrameRate:设置视频帧的频率
setVideoSize:设置视频的宽度和高度(分辨率)
setVideoSource:设置视频源
setOutputFile:设置输出文件
setOutputFormat:设置输出文件格式
setPreviewDisplay:设置预览
getMaxAmplitude:得到最大幅度
setMaxDuration:设置最长录音时间
setMaxFileSize:设置文件的最大尺寸
一般步骤:
1,MediaRecorder构造方法
2, 初始化setAudioSource(MIC)/setVideoSource(CAMERA)
3, 设置输出文件格式/路径,编码器
4, 准备录制:prepare()
5, 开始录制:start()
6, 停止录制:stop()
7, 释放资源:release()
Camera(相机设置)
主要方法:
autoFocus:设置自动对焦
getParameters:得到相机参数
open:启动相机服务
release:释放相机服务
setParameters:设置参数
setPreviewDisplay:设置预览
startPreview:开始预览
stopPreview:停止预览
takePicture:拍照
主要事件:
Camera.Size:图片的尺寸
Camera.AutoFocusCallback:自动调焦功能
Camera.ErrorCallback:错误信息捕捉
Camera.Parameters:相机的属性参数
Camera.PictureCallback:拍照、产生图片时触发
Camera.PreviewCallback:相机预览设置
Camera.ShutterCallback:快门设置