为华为相机套件添加 "pro mode" 时出现问题
Problem adding "pro mode" for Huawei Camera Kit
我遵循了他们开发者页面上的示例代码,但我不确定如何在初始化华为相机套件实例后将专业模式相机功能添加到我的应用程序中。
private CameraKit mCameraKit;
mCameraKit = CameraKit.getInstance(getApplicationContext());
//If the current mobile phone does not support the kit or the SDK version is incompatible, NULL is returned. Compatibility processing is required.
if (mCameraKit == null) {
return;
}
根据华为开发者指南部分,专业模式应该是支持的相机模式之一,但我在相机套件API参考中没有找到专业模式。有谁知道如何开启专业模式?
- 目前,专业模式仅支持 Kirin 990 和 Kirin 9000.
的设备
- 以下代码供您参考如何为您的应用添加模式。目前只有后置摄像头支持专业模式。
// Query the camera list of the device.
String[] cameraLists = mCameraKit.getCameraIdList();
// Query the modes supported by the current camera.
int[] modes = mCameraKit.getSupportedModes(cameraLists[0]);
// Create a mode.
mCameraKit.createMode(cameraLists[0], mCurrentModeType, mModeStateCallback, mCameraKitHandler);
专业模式没有具体的模式定义。专业模式由打开的键定义。您只需要:
将 mCurrentModeType 设置为 PRO_PHOTO_MODE 或 PRO_VIDEO_MODE。
使用 mCurrentModeType 创建模式对象。
调用Mode对象的setParameter方法开启相应能力
使用Mode对象的takePicture、startRecording、stopRecording方法进行拍照和录像。参考details.
启用预览功能后,您可以配置专业模式的能力值,如ISO、曝光时间和白平衡。下面是一些示例代码。
// Query the functions supported by the mode.
List<CaptureRequest.Key<?>> parameters = mModeCharacteristics.getSupportedParameters();
// Query the supported ISO range.
List<Integer> values = mModeCharacteristics.getParameterRange(RequestKey.HW_PRO_SENSOR_ISO_VALUE);
// Set the ISO value. The first value is used as an example.
mMode.setParameter(RequestKey.HW_ PRO_SENSOR_ISO_VALUE, values.get(0));
我遵循了他们开发者页面上的示例代码,但我不确定如何在初始化华为相机套件实例后将专业模式相机功能添加到我的应用程序中。
private CameraKit mCameraKit;
mCameraKit = CameraKit.getInstance(getApplicationContext());
//If the current mobile phone does not support the kit or the SDK version is incompatible, NULL is returned. Compatibility processing is required.
if (mCameraKit == null) {
return;
}
根据华为开发者指南部分,专业模式应该是支持的相机模式之一,但我在相机套件API参考中没有找到专业模式。有谁知道如何开启专业模式?
- 目前,专业模式仅支持 Kirin 990 和 Kirin 9000. 的设备
- 以下代码供您参考如何为您的应用添加模式。目前只有后置摄像头支持专业模式。
// Query the camera list of the device.
String[] cameraLists = mCameraKit.getCameraIdList();
// Query the modes supported by the current camera.
int[] modes = mCameraKit.getSupportedModes(cameraLists[0]);
// Create a mode.
mCameraKit.createMode(cameraLists[0], mCurrentModeType, mModeStateCallback, mCameraKitHandler);
专业模式没有具体的模式定义。专业模式由打开的键定义。您只需要:
将 mCurrentModeType 设置为 PRO_PHOTO_MODE 或 PRO_VIDEO_MODE。
使用 mCurrentModeType 创建模式对象。
调用Mode对象的setParameter方法开启相应能力
使用Mode对象的takePicture、startRecording、stopRecording方法进行拍照和录像。参考details.
启用预览功能后,您可以配置专业模式的能力值,如ISO、曝光时间和白平衡。下面是一些示例代码。
// Query the functions supported by the mode.
List<CaptureRequest.Key<?>> parameters = mModeCharacteristics.getSupportedParameters();
// Query the supported ISO range.
List<Integer> values = mModeCharacteristics.getParameterRange(RequestKey.HW_PRO_SENSOR_ISO_VALUE);
// Set the ISO value. The first value is used as an example.
mMode.setParameter(RequestKey.HW_ PRO_SENSOR_ISO_VALUE, values.get(0));