當前位置: 首頁>>代碼示例>>Java>>正文


Java Parameters.getSupportedFocusModes方法代碼示例

本文整理匯總了Java中android.hardware.Camera.Parameters.getSupportedFocusModes方法的典型用法代碼示例。如果您正苦於以下問題:Java Parameters.getSupportedFocusModes方法的具體用法?Java Parameters.getSupportedFocusModes怎麽用?Java Parameters.getSupportedFocusModes使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在android.hardware.Camera.Parameters的用法示例。


在下文中一共展示了Parameters.getSupportedFocusModes方法的4個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的Java代碼示例。

示例1: setFocusMode

import android.hardware.Camera.Parameters; //導入方法依賴的package包/類
@UiThread
private void setFocusMode(Parameters params) {
	List<String> focusModes = params.getSupportedFocusModes();
	if (LOG.isLoggable(INFO)) LOG.info("Focus modes: " + focusModes);
	if (focusModes.contains(FOCUS_MODE_CONTINUOUS_PICTURE)) {
		params.setFocusMode(FOCUS_MODE_CONTINUOUS_PICTURE);
	} else if (focusModes.contains(FOCUS_MODE_CONTINUOUS_VIDEO)) {
		params.setFocusMode(FOCUS_MODE_CONTINUOUS_VIDEO);
	} else if (focusModes.contains(FOCUS_MODE_EDOF)) {
		params.setFocusMode(FOCUS_MODE_EDOF);
	} else if (focusModes.contains(FOCUS_MODE_MACRO)) {
		params.setFocusMode(FOCUS_MODE_MACRO);
	} else if (focusModes.contains(FOCUS_MODE_AUTO)) {
		params.setFocusMode(FOCUS_MODE_AUTO);
	} else if (focusModes.contains(FOCUS_MODE_FIXED)) {
		params.setFocusMode(FOCUS_MODE_FIXED);
	}
}
 
開發者ID:rafjordao,項目名稱:Nird2,代碼行數:19,代碼來源:CameraView.java

示例2: onCameraReady

import android.hardware.Camera.Parameters; //導入方法依賴的package包/類
@TargetApi(14)
private void onCameraReady(final @NonNull Camera camera) {
  final Parameters parameters = camera.getParameters();

  if (VERSION.SDK_INT >= 14) {
    parameters.setRecordingHint(true);
    final List<String> focusModes = parameters.getSupportedFocusModes();
    if (focusModes.contains(Parameters.FOCUS_MODE_CONTINUOUS_PICTURE)) {
      parameters.setFocusMode(Parameters.FOCUS_MODE_CONTINUOUS_PICTURE);
    } else if (focusModes.contains(Parameters.FOCUS_MODE_CONTINUOUS_VIDEO)) {
      parameters.setFocusMode(Parameters.FOCUS_MODE_CONTINUOUS_VIDEO);
    }
  }

  displayOrientation = CameraUtils.getCameraDisplayOrientation(getActivity(), getCameraInfo());
  camera.setDisplayOrientation(displayOrientation);
  camera.setParameters(parameters);
  enqueueTask(new PostInitializationTask<Void>() {
    @Override
    protected Void onRunBackground() {
      try {
        camera.setPreviewDisplay(surface.getHolder());
        startPreview(parameters);
      } catch (Exception e) {
        Log.w(TAG, "couldn't set preview display", e);
      }
      return null;
    }
  });
}
 
開發者ID:XecureIT,項目名稱:PeSanKita-android,代碼行數:31,代碼來源:CameraView.java

示例3: setupCaptureParams

import android.hardware.Camera.Parameters; //導入方法依賴的package包/類
private void setupCaptureParams(Parameters parameters) {
    List<Size> supportedSizes = parameters.getSupportedPreviewSizes();
    if (!findBestPreviewSize(supportedSizes, true, true)) {
        Log.w(TAG, "No 4:3 ratio preview size supported.");
        if (!findBestPreviewSize(supportedSizes, false, true)) {
            Log.w(TAG, "Can't find a supported preview size smaller than 960x720.");
            findBestPreviewSize(supportedSizes, false, false);
        }
    }
    Log.d(TAG, "camera preview h = "
                + mCameraPreviewHeight + " , w = " + mCameraPreviewWidth);
    parameters.setPreviewSize(mCameraPreviewWidth, mCameraPreviewHeight);

    List<int[]> frameRates = parameters.getSupportedPreviewFpsRange();
    int last = frameRates.size() - 1;
    int minFps = (frameRates.get(last))[Parameters.PREVIEW_FPS_MIN_INDEX];
    int maxFps = (frameRates.get(last))[Parameters.PREVIEW_FPS_MAX_INDEX];
    parameters.setPreviewFpsRange(minFps, maxFps);
    Log.d(TAG, "preview fps: " + minFps + ", " + maxFps);

    List<String> supportedFocusModes = parameters.getSupportedFocusModes();
    if (supportedFocusModes.indexOf(mTargetFocusMode) >= 0) {
        parameters.setFocusMode(mTargetFocusMode);
    } else {
        // Use the default focus mode and log a message
        Log.w(TAG, "Cannot set the focus mode to " + mTargetFocusMode +
              " becuase the mode is not supported.");
    }

    parameters.set(CameraUtil.RECORDING_HINT, CameraUtil.FALSE);

    mHorizontalViewAngle = parameters.getHorizontalViewAngle();
    mVerticalViewAngle =  parameters.getVerticalViewAngle();
}
 
開發者ID:asm-products,項目名稱:nexus-camera,代碼行數:35,代碼來源:WideAnglePanoramaModule.java

示例4: surfaceCreated

import android.hardware.Camera.Parameters; //導入方法依賴的package包/類
@Override
@TargetApi(14)
public void surfaceCreated(SurfaceHolder holder) {
    surfaceDestroyed(holder);

    try {
        // Open the camera
        mCamera = Camera.open(mCameraId);
        mCamera.setPreviewDisplay(holder);
        mCamera.setPreviewCallback(mScanAsyncTask);
    } catch (Exception e) {
        e.printStackTrace();
        surfaceDestroyed(holder);

        // Show error message
        findViewById(R.id.surfaceview).setVisibility(View.INVISIBLE);
        findViewById(R.id.progress).setVisibility(View.INVISIBLE);
        findViewById(R.id.window).setVisibility(View.INVISIBLE);
        findViewById(R.id.textview).setVisibility(View.VISIBLE);
        return;
    }

    // Set auto-focus mode
    Parameters params = mCamera.getParameters();
    List<String> modes = params.getSupportedFocusModes();
    if (modes.contains(Parameters.FOCUS_MODE_CONTINUOUS_PICTURE))
        params.setFocusMode(Parameters.FOCUS_MODE_CONTINUOUS_PICTURE);
    else if (modes.contains(Parameters.FOCUS_MODE_CONTINUOUS_VIDEO))
        params.setFocusMode(Parameters.FOCUS_MODE_CONTINUOUS_VIDEO);
    else if (modes.contains(Parameters.FOCUS_MODE_AUTO)) {
        params.setFocusMode(Parameters.FOCUS_MODE_AUTO);
        mHandler = new AutoFocusHandler(mCamera);
    }
    mCamera.setParameters(params);
}
 
開發者ID:Dazzozo,項目名稱:freeotp,代碼行數:36,代碼來源:ScanActivity.java


注:本文中的android.hardware.Camera.Parameters.getSupportedFocusModes方法示例由純淨天空整理自Github/MSDocs等開源代碼及文檔管理平台,相關代碼片段篩選自各路編程大神貢獻的開源項目,源碼版權歸原作者所有,傳播和使用請參考對應項目的License;未經允許,請勿轉載。