041_小驰私房菜_MTK Camera yuv旋转90度方案
【问题背景】
前摄安装角度270。app通过ImageReader获取yuv数据,图像是旋转90度的。原生相机,预览和录像方向正常。
【分析】
dump media.camera,可以看到前摄的Orientation是270,所以原始出图是做了90度的旋转。
Facing: Front
Orientation: 270
针对这种问题,就是需要我们对yuv数据做旋转。做旋转可以在app层接收到数据后,自行做旋转,也可以在hal层,针对yuv format这路流进行旋转。这边文章注意介绍在hal层的旋转方法。
预览和录像是正常的,这个是因为预览和录像有方向相关属性可以调整,系统会根据摄像头mount的角度已经当前设备的方向,进行对应的旋转。
【软件修改方案】
方案一:
可以参考mtk针对录像做flip的修改。那我们做旋转也可以采用类似的方式。这个方案主要是采用setTransform 的接口来进行旋转。
eTransform_FLIP_V、eTransform_FLIP_H