我正在做一个应用程序,在那里我有一个相机预览,我在黑暗的环境下拍照。因此,我需要一种方式,手动控制曝光时间的相机和设置快门速度,光圈,和等。
我知道这是可能的,因为应用程序长曝光相机2(通过AAASDream)有一种手动更改曝光时间的方法,而且它工作得很好。我指的不是我已经尝试过但还不够的敞口补偿。
基于this post,我尝试设置
Camera.Parameters params = camera1.getParameters();
params.set("mode", "m");
params.set("aperture", 80);
params.set("shutter-speed", 9);
params.set("iso", 1600);
但这根本行不通。
是否有任何隐藏的API或设置,我可以使用或任何第三方库,我可以使用这一点。
非常感谢所有的帮助,谢谢。
发布于 2016-01-31 16:51:14
我认为在android.hardware.camera中无法手动设置上述值。但是新版本的android.hardware.camera2似乎支持这些功能。
发布于 2016-12-08 13:55:05
是的,不可能通过相机1 API直接手动设置这两个参数中的一个。这两种特性都不能通过标准化的方法来查询,因为它不受支持。
当然,有一种方法可以通过特殊方法查询或设置这些属性,正如relime9目前提到的那样:
// 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,它更加标准化并且支持这样的功能。
https://stackoverflow.com/questions/34604051
复制相似问题