1

我的 Nexus 5 不支持 camera api(以及 camera2 api)的 HDR 场景模式。这是由于制造商的支持吗?如果是这样,我想在自定义相机应用程序中实现 HDR 场景模式,就像在股票相机中一样?

我尝试使用这两个相机 API,但没有一个支持 SCENE_MODE_HDR 参数。

使用android.hardware.cameraapi:(不支持记录 HDR 模式)

List<String> sceneModes = params.getSupportedSceneModes();
if (sceneModes.contains(Camera.Parameters.SCENE_MODE_HDR)) {
    Log.d("HDR", "HDR mode supported");
    params.setSceneMode(Camera.Parameters.SCENE_MODE_HDR);
} else {
    Log.d("HDR", "HDR mode not supported");
}

并使用android.hardware.camera2api:(不支持记录 HDR 模式)

CameraCharacteristics characteristics = manager.getCameraCharacteristics(cameraId);
int[] sceneModes= characteristics.get(CameraCharacteristics.CONTROL_AVAILABLE_SCENE_MODES);
boolean isHDRsupported = false;
for (int sceneMode : sceneModes) {
    if (sceneMode == CameraCharacteristics.CONTROL_SCENE_MODE_HDR) {
        isHDRsupported = true;
        break;
    }
}
Log.d("HDR", "HDR mode " + (isHDRsupported ? "" : "not ") + "supported");

我在这里遗漏了一些明显的东西吗?

4

2 回答 2

2

Nexus 5 不支持 HDR 场景模式。

包含的相机应用程序中的 HDR+ 模式是应用程序本身的一部分(有一篇关于它如何在 camera2 API 之上工作的博客文章)。

于 2015-08-04T19:48:52.433 回答
0

你试过了吗?

Camera.Parameters cameraParameters = camera.getParameters();
cameraParameters.setSceneMode(Camera.Parameters.SCENE_MODE_HDR);
camera.setParameters(cameraParameters);
于 2015-08-03T07:30:00.583 回答