MTK平台相机插值修改

一、注意事项
二、HAL层修改
三、APP层修改
四、部分插值整理
五、快速编译指令


一、注意事项

Camera插值在底层已经做好,我们只需要在中间层和app层添加一个对应的picture size即可。但是有一些限制条件需要注意:

  1. 插值的倍数只能小于等于16倍,也就是说假如是1M的sensor,那最多只能插值到16M;

  2. 插值后的width和height都不能超过8192,也就是picture size设置的width和height的大小都不能超过8192;

  3. 由于hardware jpeg encoder的限制,插值时设置的width和height请您分别都设为16的整数倍,若设置非16整数倍的width或height,则可能导致拍出来的图片会有异常(如图片扭曲、花屏、连拍的图片绿屏)

二、HAL层修改

1.vendor/mediatek/proprietary/custom//hal/sendepfeature//config.ftbl..h

若没有该文件,则修改vendor/mediatek/proprietary/custom//hal/sendepfeature/config.ftbl.common_raw.h或者config.ftbl.common_yuv.h,若摄像头未走差异化差值文件,已可以修改此文件

2.在如下定义picture size的地方增加您想要的size (宽和高必须是16的整数倍),如果已经包含您要加的size,就不需要再增加。

#if 1
    //  Picture Size (Both width & height must be 16-aligned)
    //  For CTS: the largest preview-size must have same aspect ratio (+-0.5) as the largest picture-size
    FTABLE_CONFIG_AS_TYPE_OF_DEFAULT_VALUES(
        KEY_AS_(MtkCameraParameters::KEY_PICTURE_SIZE),
        SCENE_AS_DEFAULT_SCENE(
            ITEM_AS_DEFAULT_("2560x1920"),  ----默认分辨率需设置为相机启动预览大小对应的分辨率(例默认预览大小为16:9,只能设置为16:9包含的分辩率)。
            ITEM_AS_VALUES_(
                "320x240",      "640x480",      "720x480",      "1024x768",     "1280x720",     "1280x768",
                "1280x960",     "1600x1200", "2560x1920",         ---注意逗号和双引号不要写错
            )
        ),
    )
#endif

三、APP层修改

比较麻烦,不推荐,这里也不详述

四、部分插值整理

176x144,320x240,640x480,1024x768,1280x960,1600x1200,2560x1920,//3264x2448,//4160x3120,//4:3
768x432,1280x720,1536x864,1792x1008,3072x1728,//3840x2160,//4864x2736,//16:9

五、快速编译指令

source ; lunch ;
mmm -B ./vendor/mediatek/proprietary/hardware/mtkcam/legacy/v1/common/paramsmgr/feature/custom/ ;
mmm -B ./vendor/mediatek/proprietary/hardware/mtkcam/legacy/v1/common/paramsmgr/feature/ ;
mmm -B ./vendor/mediatek/proprietary/hardware/mtkcam/legacy/platform/mt6755/v1/common/paramsmgr/;
make snod后刷机或push生成的*.so进手机。

你可能感兴趣的:(android,mtk,camera,---android)