android.hardware.Camera2入坑之旅

之前寫過android.hardware.Camera入坑之旅,現在適配Camera2。Camera2相對於Camera,坑位更多。比如說,Camera通過下面方法設置任意自定義參數

        /**
         * Sets an integer parameter.
         *
         * @param key   the key name for the parameter
         * @param value the int value of the parameter
         */
        public void set(String key, int value) {
            put(key, Integer.toString(value));
        }

但是Camera2卻不能,必須設置已知的CaptureRequest或者底層支持的參數,否則就會直接掛掉,報Vendor不支持此參數。

1、拍照無法生成圖片和縮略圖

可能是由於縮略圖大小設置太大導致的

builder.set(CaptureRequest.JPEG_THUMBNAIL_SIZE, viewSize);

2、addTarget和Arrays.asList的目標是一一對應的

            mPreviewRequestBuilder.addTarget(surface);
            mPreviewRequestBuilder.addTarget(mImageReader.getSurface());

            // Here, we create a CameraCaptureSession for camera preview.
            mCameraDevice.createCaptureSession(Arrays.asList(surface, mImageReader.getSurface()),
                    new CameraCaptureSession.StateCallback() 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章