CameraCharacteristics.GetRecommendedStreamConfigurationMap メソッド
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
特定のユース ケースのカメラ デバイス推奨ストリーム構成マップ RecommendedStreamConfigurationMap を取得します。
[Android.Runtime.Register("getRecommendedStreamConfigurationMap", "(I)Landroid/hardware/camera2/params/RecommendedStreamConfigurationMap;", "", ApiSince=29)]
public Android.Hardware.Camera2.Params.RecommendedStreamConfigurationMap? GetRecommendedStreamConfigurationMap(Android.Hardware.Camera2.Params.UsecaseMode usecase);
[<Android.Runtime.Register("getRecommendedStreamConfigurationMap", "(I)Landroid/hardware/camera2/params/RecommendedStreamConfigurationMap;", "", ApiSince=29)>]
member this.GetRecommendedStreamConfigurationMap : Android.Hardware.Camera2.Params.UsecaseMode -> Android.Hardware.Camera2.Params.RecommendedStreamConfigurationMap
パラメーター
- usecase
- UsecaseMode
ユース ケース ID。
返品
カメラ デバイスにこのユース ケースの推奨事項がない場合、または推奨される構成が無効な場合は、有効な RecommendedStreamConfigurationMap または null。
- 属性
注釈
特定のユース ケースのカメラ デバイス推奨ストリーム構成マップ RecommendedStreamConfigurationMap を取得します。
ここでアドバタイズされるストリーム構成は、プレビュー、ビデオ、スナップショットなどの一般的なユース ケースのパワーとパフォーマンスの点で効率的です。推奨されるマップは、通常、 #SCALER_STREAM_CONFIGURATION_MAP で提供される完全なリストのごく一部であり、カメラ デバイスの実装によって特定のユース ケースに推奨されます。 さまざまなシナリオで想定される構成の詳細については、 <ul><li>RecommendedStreamConfigurationMap#USECASE_PREVIEW</li><li>RecommendedStreamConfigurationMap#USECASE_RECORD</li><li>RecommendedStreamConfigurationMap#USECASE_VIDEO_SNAPSHOT</li><li>RecommendedStreamConfigurationMap#USECASE_SNAPSHOT</li><li>RecommendedStreamConfigurationMap#USECASE_RAW</li><li>RecommendedStreamConfigurationMap#USECASE_ZSL</li><li>RecommendedStreamConfigurationMap#USECASE_LOW_LATENCY_SNAPSHOT</li></ul を参照してください。>
たとえば、カメラ クライアントがこれを使用して、推奨されるプレビューとスナップショットの最大解像度を確認する方法については、次の擬似コードを検討してください。
<code>
public static Size getMaxSize(Size... sizes) {
if (sizes == null || sizes.length == 0) {
throw new IllegalArgumentException("sizes was empty");
}
Size sz = sizes[0];
for (Size size : sizes) {
if (size.getWidth() * size.getHeight() > sz.getWidth() * sz.getHeight()) {
sz = size;
}
}
return sz;
}
CameraCharacteristics characteristics =
cameraManager.getCameraCharacteristics(cameraId);
RecommendedStreamConfigurationMap previewConfig =
characteristics.getRecommendedStreamConfigurationMap(
RecommendedStreamConfigurationMap.USECASE_PREVIEW);
RecommendedStreamConfigurationMap snapshotConfig =
characteristics.getRecommendedStreamConfigurationMap(
RecommendedStreamConfigurationMap.USECASE_SNAPSHOT);
if ((previewConfig != null) && (snapshotConfig != null)) {
Set<Size> snapshotSizeSet = snapshotConfig.getOutputSizes(
ImageFormat.JPEG);
Size[] snapshotSizes = new Size[snapshotSizeSet.size()];
snapshotSizes = snapshotSizeSet.toArray(snapshotSizes);
Size suggestedMaxJpegSize = getMaxSize(snapshotSizes);
Set<Size> previewSizeSet = snapshotConfig.getOutputSizes(
ImageFormat.PRIVATE);
Size[] previewSizes = new Size[previewSizeSet.size()];
previewSizes = previewSizeSet.toArray(previewSizes);
Size suggestedMaxPreviewSize = getMaxSize(previewSizes);
}
</code>
同様のロジックは、他のユース ケースにも使用できます。
推奨されるストリーム構成のサポートは省略可能です。 特定のユース ケースに対して推奨される構成がない場合は、使用可能な完全な一覧については、 #SCALER_STREAM_CONFIGURATION_MAP を参照してください。
このページの一部は、によって作成および共有され、に記載されている条件に従って使用される作業に基づく変更です。