Android Mediaplayer 播放视频/音频 SoundPool
2015-01-12 15:51
567 查看
Mediaplayer声明周期
一、Idle状态:刚new出来或者调用了reset 处于Idle 空闲状态。(Mediapplayer.cerate()是在prepare状态而非Idle状态。Idle 状态不能调用mediaplyer的好多关于音频、视频的方法,不能start()、stop()、prepare()、、pause()。
二、Error 状态:各种情况导致播放失败的,初始化失败,格式不支持等。
三、End:Idel 调用了release() 之后为End的状态。
四、Initialized:初始化状态:在Idle状态下调用的setDataSource()后处于此状态,并且setDatasource只能在Idle下调。
五、Prepared: 准备好的状态 ,在Initialized状态下调了prepare()或者prepareAsync()异步,并且prepare()只能在Initialized状态下调。
六、Started:开始播放状态,Prepared状态下调用了start()方法,isPlaying()方法可以被调用。
七、Paused: 暂停状态,Started后调用了pause(),Paused状态下可以调用start()重新进入Started 状态。
八、Stopped 停止的状态,Prepared、Started 、Paused 、PlaybackCompleted均可调用stop()方法进入停止状态,Stopped之后只能再次调用了Prepara()进入Prepared状态后才能继续播放start()。
九、PlaybackCompleted 播放完毕状态,如果循环为false,完毕后进入此状态,否则继续播放,进入Started状态
此状态下可以调用start()重新开始播放。
Prepared, Paused and PlaybackCompleted 可以调用seekTo去异步定位到指定位置开始播放。
用完或长时间不用要release()去释放资源,进入End状态。
Mediaplayer可以播放本地、网络音乐、视频。
Android中提供了SoundPool可以方便的播放各种小音频、可以预加载、重叠播放声音。
new SoundPool(int maxStreams, int streamType, int srcQuality) ; // 可以直接new出来
int load(Context context, int resId, int priority) ; // 去加载资源,返回id在程序onCreate时去加载,属于异步加载。
int play(int soundID, float leftVolume, float rightVolume, int priority, int loop, float rate) ; //播放指定id的音频。
一、Idle状态:刚new出来或者调用了reset 处于Idle 空闲状态。(Mediapplayer.cerate()是在prepare状态而非Idle状态。Idle 状态不能调用mediaplyer的好多关于音频、视频的方法,不能start()、stop()、prepare()、、pause()。
二、Error 状态:各种情况导致播放失败的,初始化失败,格式不支持等。
三、End:Idel 调用了release() 之后为End的状态。
四、Initialized:初始化状态:在Idle状态下调用的setDataSource()后处于此状态,并且setDatasource只能在Idle下调。
五、Prepared: 准备好的状态 ,在Initialized状态下调了prepare()或者prepareAsync()异步,并且prepare()只能在Initialized状态下调。
六、Started:开始播放状态,Prepared状态下调用了start()方法,isPlaying()方法可以被调用。
七、Paused: 暂停状态,Started后调用了pause(),Paused状态下可以调用start()重新进入Started 状态。
八、Stopped 停止的状态,Prepared、Started 、Paused 、PlaybackCompleted均可调用stop()方法进入停止状态,Stopped之后只能再次调用了Prepara()进入Prepared状态后才能继续播放start()。
九、PlaybackCompleted 播放完毕状态,如果循环为false,完毕后进入此状态,否则继续播放,进入Started状态
此状态下可以调用start()重新开始播放。
Prepared, Paused and PlaybackCompleted 可以调用seekTo去异步定位到指定位置开始播放。
用完或长时间不用要release()去释放资源,进入End状态。
Mediaplayer可以播放本地、网络音乐、视频。
Android中提供了SoundPool可以方便的播放各种小音频、可以预加载、重叠播放声音。
new SoundPool(int maxStreams, int streamType, int srcQuality) ; // 可以直接new出来
int load(Context context, int resId, int priority) ; // 去加载资源,返回id在程序onCreate时去加载,属于异步加载。
int play(int soundID, float leftVolume, float rightVolume, int priority, int loop, float rate) ; //播放指定id的音频。
相关文章推荐
- android视频播放(二) 利用android原生的MediaPlayer+SurfaceView
- android 随手记 videoview循环播放网络视频 和mediaplayer+sufaceview播放网络视频
- Android 使用 MediaPlayer + SurfaceView 播放视频
- Android SurfaceView+MediaPlayer实现视频播放
- android播放视频(三)利用原生的MediaPlayer+SurfaceView之提高
- android中使用surfaceview+MediaPlayer播放视频
- Android MediaPlayer播放音频
- Android SurfaceView+ mediaplayer 重复播放视频
- Android MediaPlayer+SeekBar播放音频出现卡顿边长可能问题
- SAP播放本地视频及音频(仅限于window MediaPlayer可播放文件)
- Android MediaPlayer+SurfaceView实现视频播放
- Android中使用surfaceview+MediaPlayer播放视频
- Android视频播放: SurfaceView+MediaPlayer播放视频(二)
- Android SurfaceView+MediaPlayer 播放本地raw文件夹下的视频
- Android 播放视频(一)SurfaceView + MediaPlayer
- android 随手记 videoview循环播放网络视频 和mediaplayer+sufaceview播放网络视频
- Android - SurfaceView + MediaPlayer实现分段视频无缝播放
- android视频播放MediaPlayer+SurfaceView
- Android视频播放框架Vitamio集成及使用MediaPlayer+SurfaceView、VideoView+MediaController实现播放网络视频
- Android 视频播放之MediaPlayer+SurfaceView