Android SurfaceView相关概念及原理
2017-08-06 10:33
309 查看
SurfaceView
* 对画面的实时更新要求较高
* 双缓冲技术:内存中有两个画布,A画布显示至屏幕,B画布在内存中绘制下一帧画面,绘制完毕后B显示至屏幕,A在内存中继续绘制下一帧画面
* 播放视频也是用MediaPlayer,不过跟音频不同,要设置显示在哪个SurfaceView
* SurfaceView是重量级组件,可见时才会创建
* 给SurfaceHolder设置CallBack,类似于侦听,可以知道SurfaceView的状态
* SurfaceView一旦不可见,就会被销毁,一旦可见,就会被创建,销毁时停止播放,再次创建时再开始播放
SurfaceView
* 视频播放在SurfaceView上
* SurfaceView应用了双缓冲技术,适用于对画面实时刷新要求较高的场景
* FFMPEG:开源免费音视频编解码器
* 重量级组件
* 可见时才会创建
* 不可见时就会销毁,可见时再次创建
* vitamio
参考:Android SurfaceView
Android简单本地视频播放器
* 对画面的实时更新要求较高
* 双缓冲技术:内存中有两个画布,A画布显示至屏幕,B画布在内存中绘制下一帧画面,绘制完毕后B显示至屏幕,A在内存中继续绘制下一帧画面
* 播放视频也是用MediaPlayer,不过跟音频不同,要设置显示在哪个SurfaceView
SurfaceView sv = (SurfaceView) findViewById(R.id.sv); SurfaceHolder sh = sv.getHolder(); MediaPlayer player = new MediaPlayer(); player.reset(); try { player.setDataSource("sdcard/2.3gp"); player.setDisplay(sh); player.prepare(); } catch (Exception e) { e.printStackTrace(); } player.start();
* SurfaceView是重量级组件,可见时才会创建
* 给SurfaceHolder设置CallBack,类似于侦听,可以知道SurfaceView的状态
sh.addCallback(new Callback() { //SurfaceView销毁时调用 @Override public void surfaceDestroyed(SurfaceHolder holder) { // TODO Auto-generated method stub } //SurfaceView创建时调用 @Override public void surfaceCreated(SurfaceHolder holder) { // TODO Auto-generated method stub } @Override public void surfaceChanged(SurfaceHolder holder, int format, int width, int height) { // TODO Auto-generated method stub } });
* SurfaceView一旦不可见,就会被销毁,一旦可见,就会被创建,销毁时停止播放,再次创建时再开始播放
SurfaceView
* 视频播放在SurfaceView上
* SurfaceView应用了双缓冲技术,适用于对画面实时刷新要求较高的场景
* FFMPEG:开源免费音视频编解码器
* 重量级组件
* 可见时才会创建
* 不可见时就会销毁,可见时再次创建
* vitamio
参考:Android SurfaceView
Android简单本地视频播放器
相关文章推荐
- 老罗:Android视图SurfaceView的实现原理分析
- android自定义view--绘制顺序及相关原理
- Android视图SurfaceView的实现原理分析(示例,出错代码)
- [Android] SurfaceView相关知识笔记
- android自定义view–绘制顺序及相关原理
- Android视图SurfaceView的实现原理分析
- Android摄像头:只拍摄SurfaceView预览界面特定区域内容(矩形框)---完整实现(原理:底层SurfaceView+上层绘制ImageView)
- Android学习之 VideoView,SurfaceView(各种视频相关)
- Android视图SurfaceView的实现原理分析
- Android视图SurfaceView的实现原理分析
- Android视图SurfaceView的实现原理分析
- Android视图SurfaceView的实现原理分析
- Android视图SurfaceView的实现原理分析
- android自定义view–绘制顺序及相关原理
- Android视图SurfaceView的实现原理分析 Android视图SurfaceView的实现原理分析
- android自定义view–绘制顺序及相关原理
- Android摄像头:只拍摄SurfaceView预览界面特定区域内容(矩形框)---完整(原理:底层SurfaceView+上层绘制ImageView)
- Android视图SurfaceView的实现原理分析
- Android视图SurfaceView的实现原理分析
- Android视图SurfaceView的实现原理分析