StreamConfigurationMap.GetOutputStallDuration メソッド
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
オーバーロード
| 名前 | 説明 |
|---|---|
| GetOutputStallDuration(Class, Size) |
クラスとサイズの組み合わせのストール期間 (ナノ秒単位) を取得します。 |
| GetOutputStallDuration(Int32, Size) |
形式とサイズの組み合わせ (ナノ秒単位) のストール期間を取得します。 |
GetOutputStallDuration(Class, Size)
クラスとサイズの組み合わせのストール期間 (ナノ秒単位) を取得します。
[Android.Runtime.Register("getOutputStallDuration", "(Ljava/lang/Class;Landroid/util/Size;)J", "")]
[Java.Interop.JavaTypeParameters(new System.String[] { "T" })]
public long GetOutputStallDuration(Java.Lang.Class? klass, Android.Util.Size? size);
[<Android.Runtime.Register("getOutputStallDuration", "(Ljava/lang/Class;Landroid/util/Size;)J", "")>]
[<Java.Interop.JavaTypeParameters(new System.String[] { "T" })>]
member this.GetOutputStallDuration : Java.Lang.Class * Android.Util.Size -> int64
パラメーター
- klass
- Class
#isOutputSupportedFor(Class)でサポートされ、返される空でない配列を持つクラス#getOutputSizes(Class)
- size
- Size
出力互換サイズ
返品
最小フレーム期間 >= 0 (ナノ秒)
- 属性
注釈
クラスとサイズの組み合わせのストール期間 (ナノ秒単位) を取得します。
これは、 klass が ImageFormat#PRIVATEを使用するように設定されていることを前提としています。 ユーザー定義形式の場合は、 #getOutputMinFrameDuration(int, Size)を使用します。
klass は、 #getOutputSizes(Class)によって返される空でない配列のいずれかを指定する必要があります。
size は、 #getOutputSizes(Class)によって返されたもののいずれかである必要があります。
<em>stall duration</em>の定義については、#getOutputStallDuration(int, Size)を参照してください。
このページの一部は、によって作成および共有され、に記載されている条件に従って使用される作業に基づく変更です。
適用対象
GetOutputStallDuration(Int32, Size)
形式とサイズの組み合わせ (ナノ秒単位) のストール期間を取得します。
[Android.Runtime.Register("getOutputStallDuration", "(ILandroid/util/Size;)J", "")]
public long GetOutputStallDuration(int format, Android.Util.Size? size);
[<Android.Runtime.Register("getOutputStallDuration", "(ILandroid/util/Size;)J", "")>]
member this.GetOutputStallDuration : int * Android.Util.Size -> int64
パラメーター
- format
- Int32
ImageFormatまたはPixelFormat
- size
- Size
出力互換サイズ
返品
ストール期間 >= 0 (ナノ秒単位)
- 属性
例外
formatまたはsizeがサポートされていない場合
sizeがnull
注釈
形式とサイズの組み合わせ (ナノ秒単位) のストール期間を取得します。
format は、 #getOutputFormats()によって返されたもののいずれかである必要があります。
size は、 #getOutputSizes(int)によって返されたもののいずれかである必要があります。
ストール期間は、ストールが 0 以外のストリームを含む繰り返し要求の通常の最小フレーム期間に追加される余分な時間です。
たとえば、次の特性を持つ JPEG キャプチャを考えてみましょう。
<ul><li>JPEG ストリームは、含まれていない要求で処理された YUV ストリームのように動作します。直接参照される要求では、JPEG ストリームとして機能します。 これは、JPEG ストリームをサポートするには、基になる YUV データを常に JPEG エンコーダーで使用できる状態にする必要がありますが、エンコーダーは実際に JPEG ストリームを参照する要求でのみ使用 (およびフレーム期間に影響を与える) ためです。 <li> JPEG プロセッサは、カメラ パイプラインの残りの部分で同時に実行できますが、一度に 1 つ以上のキャプチャを処理することはできません。 </ul>
つまり、YUV 要求を繰り返し使用すると、安定したフレーム レートになります (たとえば、30 FPS)。 1 つの JPEG 要求が定期的に送信される場合、フレーム レートは 30 FPS のままです (前の JPEG が毎回返されるのを待つ限り)。 繰り返し YUV + JPEG 要求を送信しようとすると、フレーム レートは 30 FPS から低下します。
一般に、ストールタイム ストリームが 0 以外の新しい要求を送信すると<em></em>前の要求からそのストリームの未処理のバッファーがない限り、フレーム レートが低下します。
ストリームを使用して繰り返し要求を送信する (この Sを呼び出す) のは、 Sに対応する通常の最小フレーム期間から最小フレーム期間を設定するのと同じで、 Sの最大ストール期間で追加されます。
ストール期間の有無にかかわらず要求をインターリーブする場合、未処理のバッファーを含む各ストール 可能ストリームの残りの最大時間までに要求がストールします。
つまり、ストール中の要求は、ストールが完了するまで露出が開始されません。
これは、すべての処理 (通常は android.*.mode) が FAST または OFFに設定された状態で、そのストリームのみがアクティブな場合のストール期間に対応する必要があります。 いずれかの処理モードを HIGH_QUALITY に設定すると、実質的に要求内のすべてのストリームで不確定なストール期間が発生します (通常のストール計算ルールは無視されます)。
<ul><li>ImageFormat#JPEG JPEG<li>ImageFormat#RAW_SENSOR RAW16<li>ImageFormat#RAW_PRIVATE RAW_PRIVATE</ul の形式は、常にストール期間を持つ場合があります。>
<ul><li>ImageFormat#YUV_420_888 YUV_420_888<li>ImageFormat#PRIVATE PRIVATE</ul の形式はストールしません。>
その他の形式はすべて、機能ごとに許可されるストール期間を持つ場合とそうでない場合があります。詳細については、 CameraCharacteristics#REQUEST_AVAILABLE_CAPABILITIES android.request.availableCapabilities を参照してください。
/p< を >する
最大フレーム レート (ストールなし) の計算の詳細については、 CaptureRequest#SENSOR_FRAME_DURATION android.sensor.frameDuration を参照してください。
このページの一部は、によって作成および共有され、に記載されている条件に従って使用される作業に基づく変更です。