首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >android.hardware.camera预览:如何手动设置曝光时间、快门速度、光圈和iso

android.hardware.camera预览:如何手动设置曝光时间、快门速度、光圈和iso
EN

Stack Overflow用户
提问于 2016-01-05 04:17:28
回答 2查看 4K关注 0票数 0

我正在做一个应用程序,在那里我有一个相机预览,我在黑暗的环境下拍照。因此,我需要一种方式,手动控制曝光时间的相机和设置快门速度,光圈,和等。

我知道这是可能的,因为应用程序长曝光相机2(通过AAASDream)有一种手动更改曝光时间的方法,而且它工作得很好。我指的不是我已经尝试过但还不够的敞口补偿。

基于this post,我尝试设置

代码语言:javascript
运行
复制
Camera.Parameters params = camera1.getParameters();
params.set("mode", "m");
params.set("aperture", 80);
params.set("shutter-speed", 9);
params.set("iso", 1600);

但这根本行不通。

是否有任何隐藏的API或设置,我可以使用或任何第三方库,我可以使用这一点。

非常感谢所有的帮助,谢谢。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2016-01-31 16:51:14

我认为在android.hardware.camera中无法手动设置上述值。但是新版本的android.hardware.camera2似乎支持这些功能。

票数 2
EN

Stack Overflow用户

发布于 2016-12-08 13:55:05

是的,不可能通过相机1 API直接手动设置这两个参数中的一个。这两种特性都不能通过标准化的方法来查询,因为它不受支持。

当然,有一种方法可以通过特殊方法查询或设置这些属性,正如relime9目前提到的那样:

代码语言:javascript
运行
复制
// query all the settings you camera support (API 1)
mCamera.getParameters().flatten();
// set parameters - e.g. aperture
mCamera.getParameters().set("aperture", "80");

此外,特定的设备必须支持这样的设置,这种设置因设备而异。在某些设备上,可以设置某些值,而在其他设备上,您不能也只能使用“自动”模式。

由于这个原因,他们开发了Camera 2 API,它更加标准化并且支持这样的功能。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/34604051

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档