首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往
您找到你想要的搜索结果了吗?
是的
没有找到

Android Camera1显示预览的四种方式

Camera#setPreviewDisplay方法设置SurfaceHolder给相机,通常在使用SurfaceView作为预览控件时使用; 通过Camera#setPreviewTexture方法设置SurfaceTexture...设置给Camera即可 camera.setPreviewTexture(surfaceTexture); 方式三、使用GLSurfaceView 使用GLSurfaceVIew作为预览UI控件时,将相机预览数据转化为纹理数据...surfaceTexture) { glSurfaceView.requestRender(); } 除了上面三种方式外,还有一种比较鸡肋的方案来实时显示预览 方式四、利用buffer...最开始设想的挺好的,实际验证的时候发现不向Camera设置SurfaceHolder或SurfaceTexture,单独注册setPreviewCallback接口是不回调数据的。。。...所以这个方案就比较鸡肋了,需要自己构造一个SurfaceTexture设置给Camera,以便让Camera能回调每一帧预览数据给注册方 DEMO // git branch -a // remotes

3.5K20

「Android音视频编码那点破事」第三章,使用OpenGL为Camera添加各种滤镜

在第二章中,我们通过一个Camera SurfaceTexture纹理,把摄像头数据绘制到这个纹理上,同时TextureView的SurfaceTexture纹理通过id与第一个纹理关联起来,从而把摄像头画面直接绘制到屏幕上...TextureView的SurfaceTexture纹理,也就是手机屏幕上。...从数据流方向来看,Camer SurfaceTexture从Camera中读取数据缓存到自己的FBO中,然后离屏FBO通过Camer SurfaceTexture的ID读取Camera FBO中的数据缓存到自己的内存中...在前两章的基础上,我们已经有了Camera SurfaceTexture和TextureView SurfaceTexture,现在我们需要再加入一层离屏FBO。...= cameraWrapper.surfaceTexture) { cameraSurfaceTexture?.

63810
领券