-
-// // SurfaceHolder.Callback implementation
-// @Override
-// public void surfaceCreated(final SurfaceHolder holder){
-// gLogger.error("SurfacedCreated");
-// }
-//
-// @Override
-// public void surfaceChanged(SurfaceHolder holder, int format, int widht, int height){
-// gLogger.error("surfaceChanged");
-// try {
-// mCamera.setPreviewDisplay(holder);
-// } catch (Exception e){
-// e.printStackTrace();
-// }
-// mCamera.startPreview();
-//
-// }
-//
-// @Override
-// public void surfaceDestroyed(SurfaceHolder holder){
-// gLogger.error("surfaceDestroyed");
-// }
+ private void configCamera(Camera camera){
+ if(mCamera == null){
+ gLogger.error("configCamera - camera is null");
+ return;
+ }
+ Camera.Parameters paras = camera.getParameters();
+ gLogger.error("Supported Picture Sizes:");
+ Camera.Size preferredSize = paras.getSupportedPictureSizes().get(0);
+ for (Camera.Size cc : paras.getSupportedPictureSizes()){
+ if (cc.width == 640)
+ preferredSize = cc;
+ gLogger.error(cc.width + "x" + cc.height);
+ }
+ gLogger.error("Supported Preview fps range:");
+ for(int[] i : paras.getSupportedPreviewFpsRange()){
+ gLogger.error("[" + i[0] + "," + i[1] + "]");
+ }
+ paras.setPictureSize(preferredSize.width, preferredSize.height); // use 640x480 preferred
+ camera.setParameters(paras);
+ camera.setDisplayOrientation(0);
+ gLogger.error("Preview Format: " + paras.getPreviewFormat() + ". Size: " + paras.getPreviewSize().width + "x" + paras.getPreviewSize().height);
+ gLogger.error("Picture Format: " + paras.getPictureFormat() + ". Size: " + paras.getPictureSize().width + "x" + paras.getPictureSize().height);
+ camera.setPreviewCallback(this);
+ }