第一次接触YUV格式的图片,在网上查了各种方法转,发现都是Camera和Camera2监控用的,都没有CameraX。
后面没办法只能去研究YUV格式原理,累啊,虽然有说原理资料文档,但是不够细,导致我跑偏了,花了几天时间才解决,记录一下。
一、Camera
Camera预览监控的就是NV21图片格式,网上大把资料,这个我就不写了,网上查询一下就行。
二、Camera2
Camera2返回的是Image对象,Image里面有宽高、步长、getPlanes YUV的数据通道、图片格式等。
具体网络上也有资料,也能查找出来,偷下懒了。
三、CameraX
CameraX监听Analyzer可以拿到实时预览的ImageProxy YUV_420_888的图片。
CameraX只返回YUV_420_888格式的图片,对我们来说就跟好处理了。
1、简介
YUV编码是流媒体的常用编码方式
“Y”表示明亮度(Luminance、Luma),“U”和“V”则是色度、浓度(Chrominance、Chroma)
主流采样方式:YUV4:4:4,YUV4:2:2,YUV4:2:0
我这主要讲YUV4:2:0,其他可以参考YUV数据格式与YUV_420_888
2、YUV4:2:0
格式类型:I420、NV21、YV12
存储格式:图片宽度 * 图片高度 * 3 / 2 (width * height * 3 / 2)
三个分量:Y分量(width * height)&#