Chi*_*hah 3 java android android-camera android-camera2
我正在尝试修改帧速率(降低它),以便我们可以对其进行实时操作。但不能改变帧率。
可能的解决方案包括:
改变 CONTROL_AE_AVAILABLE_TARGET_FPS_RANGES
延迟 setRepeatingRequest
我们需要降低传递给的生成帧速率,Surfaceholder以便可以进一步应用于其中的操作。
正如评论中所建议的,我设法找到了解决方案并回答了我自己的问题,即我如何解决问题。
我们首先创建一个对象mPreviewRequestBuilder并使用它来修改帧速率。
private CaptureRequest.Builder mPreviewRequestBuilder;
// We set up a CaptureRequest.Builder with the output Surface.
mPreviewRequestBuilder
= mCameraDevice.createCaptureRequest(CameraDevice.TEMPLATE_PREVIEW);
mPreviewRequestBuilder.addTarget(surface);
Run Code Online (Sandbox Code Playgroud)
我们可以通过创建一个Range数组并手动设置它来实现更改,如下所述。
Range<Integer>[] fps = new Range[size];
Run Code Online (Sandbox Code Playgroud)
向 Range 类添加自定义值。
fps[0] = Range.create(2,5);
Run Code Online (Sandbox Code Playgroud)
一旦我们设法创建了一个 Range 数组,我们就可以如下设置相机设置:
mPreviewRequestBuilder.set(CaptureRequest.CONTROL_AE_TARGET_FPS_RANGE,fps[0]);
mPreviewRequest = mPreviewRequestBuilder.build();
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
2716 次 |
| 最近记录: |