KsPinGetAvailableByteCount 関数 (ks.h)
KsPinGetAvailableByteCount ルーチンは、呼び出し元が指定したピンのキューに対して、先頭エッジより前の入力データのバイト数と、先頭エッジの前の出力バッファーのバイト数を出力します。
構文
KSDDKAPI NTSTATUS KsPinGetAvailableByteCount(
[in] PKSPIN Pin,
[out, optional] PLONG InputDataBytes,
[out, optional] PLONG OutputBufferBytes
);
パラメーター
[in] Pin
これらのキュー パラメーターを計算する KSPIN 構造体へのポインター。
[out, optional] InputDataBytes
ルーチンが先頭エッジより前の入力データ バイト数を返す LONG 値へのポインター。 この値が要求されない場合、呼び出し元は NULL に設定されます。
[out, optional] OutputBufferBytes
ルーチンが先頭エッジの前の出力バッファー バイト数を返す LONG 値へのポインター。 この値が要求されない場合、呼び出し元は NULL に設定されます。
戻り値
要求された数が取得された場合は、STATUS_SUCCESSを返します。 失敗した戻り状態は、 Pin に関連付けられたキューがないことを示します。
注釈
非インプレース ピンでは 、入力ピンには InputDataBytes 、出力ピンには OutputBufferBytes を使用する 必要があります。
この呼び出しの結果は、処理ミューテックスが呼び出し時に保持されているか、呼び出し元がルーチンを呼び出す前にプライベートに同期されていない限り、安全であるとは限りません。 プライベート 同期を行う場合は、ルーチンの実行中にピンが Acquire から Stop に切り替わらないことを確認します。 AVStream でのミューテックスの処理に関するページを参照してください。
インプレース変換では、入力と出力の数を指定できることにも注意してください。
Windows XP および DirectX 8.0 では、フィルターが受け取るフレームがいっぱいでない限り 、InputDataBytes 数は無効です。
詳細については、「先頭と末尾のエッジ Stream ポインター」を参照してください。
要件
要件 | 値 |
---|---|
サポートされている最小のクライアント | Microsoft Windows XP 以降のオペレーティング システムおよび DirectX 8.0 以降の DirectX バージョンで使用できます。 |
対象プラットフォーム | ユニバーサル |
Header | ks.h (Ks.h を含む) |
Library | Ks.lib |
こちらもご覧ください
KsFilterAcquireProcessingMutex
KsFilterReleaseProcessingMutex
KsPinGetLeadingEdgeStreamPointer