「CameraXで露出を調整する」の版間の差分

提供: MonoBook
ナビゲーションに移動 検索に移動
 
2行目: 2行目:
  
 
たぶん動く。
 
たぶん動く。
EV (Exposure value、範囲0.0〜1.0)をindex(範囲:ExposureCompensationRange)に変換して渡す。
+
EV (Exposure value、範囲0.0〜1.0)をindex(範囲:ExposureCompensationRange)に変換してSetExposureCompensationIndexに渡す。
 
<source lang="csharp">
 
<source lang="csharp">
 
// AndroidX.Camera.Core.ICamera camera
 
// AndroidX.Camera.Core.ICamera camera

2023年11月9日 (木) 02:20時点における最新版

.NET6 Android(旧:Xamarin.Android)でCameraXの話。

たぶん動く。 EV (Exposure value、範囲0.0〜1.0)をindex(範囲:ExposureCompensationRange)に変換してSetExposureCompensationIndexに渡す。

// AndroidX.Camera.Core.ICamera camera

// e.Progress: 0 - 100
// ev: 0.0f - 1.0f 
var ev = e.Progress / 100f;

var range = camera.CameraInfo.ExposureState.ExposureCompensationRange;
var min = ((Java.Lang.Integer)range.Lower).IntValue();
var max = ((Java.Lang.Integer)range.Upper).IntValue();

var index = (int)((ev * (max - min)) + min);

camera.CameraControl.SetExposureCompensationIndex(index);