Gainmap クラス
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
ゲインマップは、可変表示調整機能を備えた HDR イメージを生成するために SDR イメージを拡張するためのメカニズムを表します。
[Android.Runtime.Register("android/graphics/Gainmap", ApiSince=34, DoNotGenerateAcw=true)]
public sealed class Gainmap : Java.Lang.Object, Android.OS.IParcelable, IDisposable, Java.Interop.IJavaPeerable
[<Android.Runtime.Register("android/graphics/Gainmap", ApiSince=34, DoNotGenerateAcw=true)>]
type Gainmap = class
inherit Object
interface IParcelable
interface IJavaObject
interface IDisposable
interface IJavaPeerable
- 継承
- 属性
- 実装
注釈
ゲインマップは、可変表示調整機能を備えた HDR イメージを生成するために SDR イメージを拡張するためのメカニズムを表します。 これは、ゲインマップを適用する方法を説明するメタデータのセットと、ゲインマップ データ自体を表す 1 ( android.graphics.Bitmap.Config#ALPHA_8 や 3 (アルファ チャネルが無視された android.graphics.Bitmap.Config#ARGB_8888 など) チャネル ビットマップのいずれかと組み合わせたものです。
android.content.pm.ActivityInfo#COLOR_MODE_HDR アクティビティにレンダリングする場合、十分な HDR ヘッドルームが使用可能になると、ハードウェア アクセラレータCanvasによってゲインマップが自動的に適用されます。
<h3>Gainmap 構造体</h3>
ゲインマップのイメージの論理全体は、2 つ目の強化イメージを含むゲインマップに加えて、ゲインマップのサポートなしで表示される元のイメージを表す基本ビットマップで構成されます。 JPEG の場合、基本イメージは、形式が一般的に関連付けられている一般的な 8 ビット SDR イメージになります。 ゲインマップ画像は、基本イメージと共に埋め込まれます。多くの場合、低解像度 (1/4 など) と、ゲインマップの適用方法を説明するメタデータが含まれます。 次に、ゲインマップ イメージ自体は、基本イメージに適用して HDR 表示を再構築する変換を表すグレースケール イメージです。
したがって、これらの"ゲインマップ画像"は、3つの部分で構成されています - このクラスのインスタンスを返すBitmap#getGainmap()を持つ基本Bitmap。このクラスのインスタンスは、別のビットマップとして表され、#getGainmapContents()<h3>ゲインマップを手動で適用してアクセスできます</h3>
OpenGL ES や Vulkan コンテキストなどのカスタム レンダリングを実行する場合、ゲインマップは自動的には適用されません。 このような状況では、次の手順は、基本イメージと組み合わせてゲインマップをレンダリングするのに適しています。
ディスプレイに H の HDR 対 SDR 比があり、このディスプレイにゲインマップ付きの画像を表示するとします。 B は、基本イメージのプライマリと線形転送関数を持つ色空間内の基本イメージのピクセル値とします。 G をゲインマップのピクセル値にします。 D を B と同じ色空間の出力ピクセルにします。D の値は次のように計算されます。
まず、ゲインマップを適用する量を決定する重みパラメーターとして W を指定します。
W = clamp((log(H) - log(minDisplayRatioForHdrTransition)) /
(log(displayRatioForFullHdr) - log(minDisplayRatioForHdrTransition), 0, 1)
次に、L をログ領域のゲインマップ値とします。 これは、テクスチャからサンプリングされた値 G から次のように計算されます。
L = mix(log(ratioMin), log(ratioMax), pow(G, gamma))
最後に、表示されたピクセルである演算 D にゲインマップを適用します。 基本イメージが SDR の場合は、次を計算します。
D = (B + epsilonSdr) * exp(L * W) - epsilonHdr
上記の数学では、log() は自然対数で、exp() は自然指数です。 これらの関数のベースは取り消され、結果には影響しないため、必要に応じて他のベースを使用できます。
このページの一部は、によって作成および共有され、に記載されている条件に従って使用される作業に基づく変更です。
コンストラクター
| 名前 | 説明 |
|---|---|
| Gainmap(Bitmap) |
特定のビットマップからゲインマップを作成します。 |
| Gainmap(Gainmap, Bitmap) |
提供されたゲインマップをメタデータ ソースとして使用し、提供されたビットマップを gainmapContents の置き換えとして使用して、新しいゲインマップを作成します |
フィールド
| 名前 | 説明 |
|---|---|
| GainmapDirectionHdrToSdr |
古い.
ゲインマップはベース イメージが HDR であるかのように適用され、ゲインマップを完全に適用すると SDR イメージになります。 |
| GainmapDirectionSdrToHdr |
古い.
ゲインマップは、基本イメージが SDR であるかのように適用され、ゲインマップを完全に適用すると HDR イメージになります。 |
プロパティ
| 名前 | 説明 |
|---|---|
| AlternativeImagePrimaries |
ゲインマップ数学を適用する必要がある色空間を取得します。 または、ゲインマップの数式を適用する色空間を設定します。 |
| Class |
この |
| Creator |
ゲインマップは、可変表示調整機能を備えた HDR イメージを生成するために SDR イメージを拡張するためのメカニズムを表します。 |
| DisplayRatioForFullHdr |
ゲインマップを適用すると HDR 表示が発生する hdr/sdr 比を取得します。または、ゲインマップを適用する時点で HDR/sdr 比を設定すると、HDR 表示になります。 |
| GainmapContents |
ゲインマップの画像データを設定します。 |
| GainmapDirection |
ゲインマップ数学を適用する方向を取得します。 または、ゲインマップの算術演算を適用する方向を設定します。 |
| Handle |
基になる Android インスタンスへのハンドル。 (継承元 Object) |
| JniIdentityHashCode |
ゲインマップは、可変表示調整機能を備えた HDR イメージを生成するために SDR イメージを拡張するためのメカニズムを表します。 (継承元 Object) |
| JniPeerMembers |
ゲインマップは、可変表示調整機能を備えた HDR イメージを生成するために SDR イメージを拡張するためのメカニズムを表します。 |
| MinDisplayRatioForHdrTransition |
ゲインマップを適用すると SDR 表示が発生する hdr/sdr 比を取得します。 または、ゲインマップを適用すると SDR 表示が発生する hdr/sdr 比を設定します。 |
| PeerReference |
ゲインマップは、可変表示調整機能を備えた HDR イメージを生成するために SDR イメージを拡張するためのメカニズムを表します。 (継承元 Object) |
| ThresholdClass |
この API は Android 用 Mono インフラストラクチャをサポートしており、コードから直接使用するためのものではありません。 (継承元 Object) |
| ThresholdType |
この API は Android 用 Mono インフラストラクチャをサポートしており、コードから直接使用するためのものではありません。 (継承元 Object) |
メソッド
| 名前 | 説明 |
|---|---|
| Clone() |
このオブジェクトのコピーを作成して返します。 (継承元 Object) |
| DescribeContents() |
特別なパーセル の内容はありません。 |
| Dispose() |
ゲインマップは、可変表示調整機能を備えた HDR イメージを生成するために SDR イメージを拡張するためのメカニズムを表します。 (継承元 Object) |
| Dispose(Boolean) |
ゲインマップは、可変表示調整機能を備えた HDR イメージを生成するために SDR イメージを拡張するためのメカニズムを表します。 (継承元 Object) |
| Equals(Object) |
他のオブジェクトがこのオブジェクトと "等しい" かどうかを示します。 (継承元 Object) |
| GetEpsilonHdr() |
hdr epsilon を取得します。 |
| GetEpsilonSdr() |
sdr epsilon を取得します。 |
| GetGamma() |
ゲインマップガンマを取得します。 |
| GetHashCode() |
オブジェクトのハッシュ コード値を返します。 (継承元 Object) |
| GetRatioMax() |
最大ゲインマップ比を取得します。 |
| GetRatioMin() |
最大ゲインマップ比を取得します。 |
| JavaFinalize() |
オブジェクトへの参照がなくなったとガベージ コレクションによって判断されたときに、オブジェクトのガベージ コレクターによって呼び出されます。 (継承元 Object) |
| Notify() |
このオブジェクトのモニターで待機している 1 つのスレッドを起動します。 (継承元 Object) |
| NotifyAll() |
このオブジェクトのモニターで待機しているすべてのスレッドを起動します。 (継承元 Object) |
| SetEpsilonHdr(Single, Single, Single) |
数値が不安定にならないように使用する hdr epsilon を設定します。 |
| SetEpsilonSdr(Single, Single, Single) |
数値不安定を回避するために使用される sdr epsilon を設定します。 |
| SetGamma(Single, Single, Single) |
ゲインマップガンマを設定します。 |
| SetHandle(IntPtr, JniHandleOwnership) |
Handle プロパティを設定します。 (継承元 Object) |
| SetRatioMax(Single, Single, Single) |
ゲインマップ比率の最大値を設定します。 |
| SetRatioMin(Single, Single, Single) |
ゲインマップ比を最小に設定します。 |
| ToArray<T>() |
ゲインマップは、可変表示調整機能を備えた HDR イメージを生成するために SDR イメージを拡張するためのメカニズムを表します。 (継承元 Object) |
| ToString() |
オブジェクトの文字列形式を返します。 (継承元 Object) |
| UnregisterFromRuntime() |
ゲインマップは、可変表示調整機能を備えた HDR イメージを生成するために SDR イメージを拡張するためのメカニズムを表します。 (継承元 Object) |
| Wait() |
現在のスレッドが起動するまで待機します。通常は、 <em>notified</em> または <em>interrupted</em>。 (継承元 Object) |
| Wait(Int64, Int32) |
現在のスレッドは、通常、 <em>notified</em> または <em>interrupted</em>、または一定のリアルタイムが経過するまで、起動されるまで待機します。 (継承元 Object) |
| Wait(Int64) |
現在のスレッドは、通常、 <em>notified</em> または <em>interrupted</em>、または一定のリアルタイムが経過するまで、起動されるまで待機します。 (継承元 Object) |
| WriteToParcel(Parcel, ParcelableWriteFlags) |
ゲインマップをパーセルに書き込みます。 |
明示的なインターフェイスの実装
| 名前 | 説明 |
|---|---|
| IJavaPeerable.Disposed() |
ゲインマップは、可変表示調整機能を備えた HDR イメージを生成するために SDR イメージを拡張するためのメカニズムを表します。 (継承元 Object) |
| IJavaPeerable.DisposeUnlessReferenced() |
ゲインマップは、可変表示調整機能を備えた HDR イメージを生成するために SDR イメージを拡張するためのメカニズムを表します。 (継承元 Object) |
| IJavaPeerable.Finalized() |
ゲインマップは、可変表示調整機能を備えた HDR イメージを生成するために SDR イメージを拡張するためのメカニズムを表します。 (継承元 Object) |
| IJavaPeerable.JniManagedPeerState |
ゲインマップは、可変表示調整機能を備えた HDR イメージを生成するために SDR イメージを拡張するためのメカニズムを表します。 (継承元 Object) |
| IJavaPeerable.SetJniIdentityHashCode(Int32) |
ゲインマップは、可変表示調整機能を備えた HDR イメージを生成するために SDR イメージを拡張するためのメカニズムを表します。 (継承元 Object) |
| IJavaPeerable.SetJniManagedPeerState(JniManagedPeerStates) |
ゲインマップは、可変表示調整機能を備えた HDR イメージを生成するために SDR イメージを拡張するためのメカニズムを表します。 (継承元 Object) |
| IJavaPeerable.SetPeerReference(JniObjectReference) |
ゲインマップは、可変表示調整機能を備えた HDR イメージを生成するために SDR イメージを拡張するためのメカニズムを表します。 (継承元 Object) |
拡張メソッド
| 名前 | 説明 |
|---|---|
| GetJniTypeName(IJavaPeerable) |
インスタンス |
| JavaAs<TResult>(IJavaPeerable) |
|
| JavaCast<TResult>(IJavaObject) |
Android ランタイムチェック型変換を実行します。 |
| JavaCast<TResult>(IJavaObject) |
ゲインマップは、可変表示調整機能を備えた HDR イメージを生成するために SDR イメージを拡張するためのメカニズムを表します。 |
| TryJavaCast<TResult>(IJavaPeerable, TResult) |
|