我无法更改android相机的分辨率

我无法更改android相机的分辨率

本文介绍了我无法更改android相机的分辨率的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

这是我在onPreviewFrame方法中的代码.

This is my code in onPreviewFrame Method.

surfaceHolder上显示的框架很好.

The frame that shows on the surfaceHolder is fine.

我首先已经使用此代码设置了分辨率

I Already set the resolution with this code at first

 mCameraParameter = mCamera.getParameters();
 mCameraParameter.setPreviewSize(100,150);
 mCameraParameter.setPreviewFrameRate(20);
 mCameraParameter.setPreviewFormat(PixelFormat.JPEG);
 mCamera.setParameters(mCameraParameter);

但是图像得到的图片是640 * 480

but the picture that image get is 640 * 480

我想知道为什么我不能更改预览分辨率.

I wonder why i can't change the preview resolution.

        public void onPreviewFrame(byte[] data, Camera camera) {
        Log.e("PreviewCallBack", "Preview");


        Camera.Parameters parameters = camera.getParameters();
        Log.e("Picture Size", "width : " + parameters.getPreviewSize().width);
        Log.e("Picture Size", "height : " + parameters.getPreviewSize().height);
        Log.e("Array Size", "data.length : " + data.length);
        YuvImage image = new YuvImage(data, parameters.getPreviewFormat(),
                parameters.getPreviewSize().width,parameters.getPreviewSize().height, null);


        File file = new File(Environment.getExternalStorageDirectory()
                .getPath() + "/"+/*System.currentTimeMillis()*/"out.jpg");

        FileOutputStream filecon = null;

        try {
            filecon = new FileOutputStream(file);
        } catch (FileNotFoundException e) {
            e.printStackTrace();
        }


        image.compressToJpeg(
                new Rect(0, 0, image.getWidth(), image.getHeight()), 90,
                filecon);
    }
};

推荐答案

也许您正在尝试设置不受支持的预览尺寸.最好在调用 setPreviewSize()之前,调用" getSupportedPreviewSizes()"并检查设备是否支持要设置的预览大小.

Maybe you are trying to set an unsupported preview size. Better call "getSupportedPreviewSizes()" and check if the preview size you want to set is supported by your device before calling setPreviewSize().

这篇关于我无法更改android相机的分辨率的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!

08-21 17:17