为什么默认的Android摄像头预览比我自己的摄像头预览更平滑?

为什么默认的Android摄像头预览比我自己的摄像头预览更平滑?,第1张

概述我只是设置了一个非常基本的相机预览,可以全屏显示相机.我比较了我的应用程序和 Android相机的平滑度,并认为Android相机看起来更顺畅. 为什么会这样?是否有任何特殊技巧可以改善相机预览性能? 我前一段时间遇到过同样的问题,结果发现它与相机分辨率有关.您的相机可能会使用最大可用分辨率进行初始化,这可能会降低预览期间的性能.尝试用这样的东西设置较小的图片尺寸.- Camera.Paramet 我只是设置了一个非常基本的相机预览,可以全屏显示相机.我比较了我的应用程序和 Android相机的平滑度,并认为AndroID相机看起来更顺畅.

为什么会这样?是否有任何特殊技巧可以改善相机预览性能?

解决方法 我前一段时间遇到过同样的问题,结果发现它与相机分辨率有关.您的相机可能会使用最大可用分辨率进行初始化,这可能会降低预览期间的性能.尝试用这样的东西设置较小的图片尺寸.-
Camera.Parameters params = camera.getParameters();params.setPictureSize(1280,960);camera.setParameters(params);

请注意,您需要设置可用的图片大小.您可以查看可用尺寸

camera.getParameters().getSupportedPictureSizes();

希望能帮助到你.

编辑

似乎使用不同于默认宽高比的图片大小,也会降低性能.这就是我选择pictureSize的方式.-

首先,我得到相机默认pictureSize的宽高比

Camera.Parameters params = camera.getParameters();defaultCameraratio = (float) params.getPictureSize().wIDth / (float) params.getPictureSize().height;

然后我得到一个符合相同比例的较低pictureSize.-

private Size getPreferredPictureSize() {    Size res = null;    List<Size> sizes = camera.getParameters().getSupportedPictureSizes();    for (Size s : sizes) {        float ratio = (float) s.wIDth / (float) s.height;        if (ratio == defaultCameraratio && s.height <= PHOTO_HEIGHT_THRESHolD) {            res = s;    break;        }    }    return res;}

其中PHOTO_HEIGHT_THRESHolD是您要允许的最大高度.

总结

以上是内存溢出为你收集整理的为什么默认的Android摄像头预览比我自己的摄像头预览更平滑?全部内容,希望文章能够帮你解决为什么默认的Android摄像头预览比我自己的摄像头预览更平滑?所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/web/1145442.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2022-05-31
下一篇2022-05-31

发表评论

登录后才能评论

评论列表(0条)

    保存