2012-02-03 87 views
4

我想管理Android 中的相機快門速度或光圈,但我沒有發現任何關於此的信息。Android如何管理相機快門速度和光圈?

問題是這樣的:我必須在微距拍攝模式下使用 閃光燈,但使用較新的智能手機時,閃光燈過強,並且圖像幾乎曝光過度。我已嘗試曝光 補償電話,但這還不夠。

通過相機上的軟件,我注意到,應用程序管理 相機光圈,並且它能夠好好微距照片,即使 雖然閃光燈被迫上,所以我覺得有一種方法做 那, 你可以幫我嗎?

我同時使用三星Nexus S和三星Galaxy W.白色 圖像問題不Samusng銀河ACE存在:在這種情況下, 似乎有一種在拍攝前的硬件光功率 校準。

非常感謝!

回答

1

對不起它的晚,但可能對他人

有助於設定光圈:

Camera.Parameters PARAMS = camera.getParameters() ;

params.set(「mode」,「m」);

params.set(「aperture」,「28」); //可以是28 32 35 40 45 50 56 63 71 80默認縮放

1

通過Android側的Camera 1 API,不可能直接手動設置兩個提到的參數之一。這些特徵都不能通過標準化的方法來查詢,因爲它不被支持。

當然是有辦法解決,查詢或通過特殊的方法來設置這樣的特性:

// 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,它更加標準化並支持這些功能。此外,設置或查詢特殊配置更容易。

曝光

常用的所有移動設備有一個內置的曝光控制,並且被稱爲自動曝光(AE)控制。使用AE時,設備會默認自動控制圖像的曝光,並在曝光圖像的上方或下方均衡曝光。

測量區域(MA)和曝光值(EV) - 補償可能有所幫助。

// Android (API 1) 
mCamera.getParameters().setMeteringAreas(List<Camera.Area> meteringAreas); 
mCamera.getParameters().setExposureCompensation(int value);