Android Camera相关知识整理

发布时间 2023-04-02 09:27:08作者: 李振欣

View相关

原文:SerfaceView与TextureView的区别

区别:

  • Sureface有自己的Serface(由屏幕显示内容合成器(screen compositor)所管理的原生缓冲器的句柄)是一个单独的View,会在WMS中创建单独的窗口,有自己的渲染进程,不受UI层的控制,因此不能与其他UI组合在一起,不能进行平移缩放等变换。
  • 而TextureView不会创建新窗口,它是一个结合了 View 和 SurfaceTexture 的 View 对象
  • Surface 为 BufferQueue 的 Producer 接口实现类,使生产者可以通过它的软件或硬件渲染接口为 SurfaceTexture 内部的 BufferQueue 提供 graphic buffer。
    SurfaceTexture 可以用作非直接输出的内容流,这样就提供二次处理的机会。与 SurfaceView 直接输出相比,这样会有若干帧的延迟。同时,由于它本身管理 BufferQueue,因此内存消耗也会稍微大一些。

image