_MFT_OUTPUT_DATA_BUFFER_FLAGS
列挙型メンバー 4
| 名前 | 10進 | 16進 | 説明 |
|---|---|---|---|
| MFT_OUTPUT_DATA_BUFFER_INCOMPLETE | 16777216 | 0x1000000 | MFT は、これ以上入力を受け取らなくても、このストリームから出力を生成できます。次の入力データのバッチを処理するには、ProcessOutput を再度呼び出してください。 |
| MFT_OUTPUT_DATA_BUFFER_FORMAT_CHANGE | 256 | 0x100 | この出力ストリームの形式が変更されたか、このストリームに新しい推奨形式があります。このフラグが設定されると、MFT はそのストリームのメディア タイプをクリアします。ProcessOutput メソッドは MF_E_TRANSFORM_STREAM_CHANGE を返し、どのストリームに対しても出力を生成しません。クライアントが新しいメディア タイプを設定するまで、それ以降の IMFTransform::ProcessInput または ProcessOutput の呼び出しは失敗します。 |
| MFT_OUTPUT_DATA_BUFFER_STREAM_END | 512 | 0x200 | MFT はこの出力ストリームを削除しました。この出力ストリームには MFT_OUTPUT_STREAM_REMOVABLE フラグが設定されていなければなりません (IMFTransform::GetOutputStreamInfo を参照してください)。 MFT が出力ストリームを削除する場合、MFT は最後の出力サンプルを生成した後の次の ProcessOutput の呼び出しでこのステータス コードを返します。MFT がこのステータス コードを返すとき、MFT は MFT_OUTPUT_DATA_BUFFER 構造体の pSample メンバーに格納されたサンプルを変更せず、pSample が NULL の場合に新しいサンプルを割り当てることもありません。 このステータス コードが返された後、この出力ストリームのストリーム識別子は無効になります。クライアントは、ProcessOutput を呼び出す際に、そのストリームに対する MFT_OUTPUT_DATA_BUFFER 構造体を指定しないようにしてください。 ProcessOutput メソッドは、この戻り値を必要とする変更が他のストリームで発生していない限り、ストリームが終了しても MF_E_TRANSFORM_STREAM_CHANGE を返しません。 |
| MFT_OUTPUT_DATA_BUFFER_NO_SAMPLE | 768 | 0x300 | このストリームには準備できているサンプルがありません。このフラグは、MFT が異なるタイミングでデータを生成する複数の出力ストリームを持つ場合に設定されることがあります。MFT は、データを生成する準備ができていない各ストリームに対してこのフラグを設定します。MFT は MFT_OUTPUT_DATA_BUFFER 構造体の pSample メンバーに格納された出力サンプルを変更せず、pSample が NULL の場合に新しいサンプルを割り当てることもありません。 出力を生成する準備ができているストリームが 1 つもない場合、MFT はこのフラグを設定しません。代わりに、ProcessOutput メソッドが MF_E_TRANSFORM_NEED_MORE_INPUT を返します。 |
公式ドキュメント
IMFTransform::ProcessOutput メソッドで使用するフラグを定義します。
解説(Remarks)
この列挙型の値はビット フラグではないため、ビット単位の OR で組み合わせないでください。また、呼び出し元はこれらのフラグを、ビット単位の AND ではなく等値演算子で判定する必要があります。
// 正しい例。
if (Buffer.dwStatus == MFT_OUTPUT_DATA_BUFFER_STREAM_END)
{
...
}
// 誤った例。
if ((Buffer.dwStatus & MFT_OUTPUT_DATA_BUFFER_STREAM_END) != 0)
{
...
}
Microsoft 公式リファレンス: 英語 (en-us) · 日本語 (ja-jp) · 原文ソース (GitHub)
各言語での定義
列挙メンバーの定義。HSP タブは #define global(値は16進)。
typedef enum _MFT_OUTPUT_DATA_BUFFER_FLAGS : int {
MFT_OUTPUT_DATA_BUFFER_INCOMPLETE = 16777216,
MFT_OUTPUT_DATA_BUFFER_FORMAT_CHANGE = 256,
MFT_OUTPUT_DATA_BUFFER_STREAM_END = 512,
MFT_OUTPUT_DATA_BUFFER_NO_SAMPLE = 768
} _MFT_OUTPUT_DATA_BUFFER_FLAGS;public enum _MFT_OUTPUT_DATA_BUFFER_FLAGS : int
{
MFT_OUTPUT_DATA_BUFFER_INCOMPLETE = 16777216,
MFT_OUTPUT_DATA_BUFFER_FORMAT_CHANGE = 256,
MFT_OUTPUT_DATA_BUFFER_STREAM_END = 512,
MFT_OUTPUT_DATA_BUFFER_NO_SAMPLE = 768,
}Public Enum _MFT_OUTPUT_DATA_BUFFER_FLAGS As Integer
MFT_OUTPUT_DATA_BUFFER_INCOMPLETE = 16777216
MFT_OUTPUT_DATA_BUFFER_FORMAT_CHANGE = 256
MFT_OUTPUT_DATA_BUFFER_STREAM_END = 512
MFT_OUTPUT_DATA_BUFFER_NO_SAMPLE = 768
End Enumimport enum
class _MFT_OUTPUT_DATA_BUFFER_FLAGS(enum.IntEnum):
MFT_OUTPUT_DATA_BUFFER_INCOMPLETE = 16777216
MFT_OUTPUT_DATA_BUFFER_FORMAT_CHANGE = 256
MFT_OUTPUT_DATA_BUFFER_STREAM_END = 512
MFT_OUTPUT_DATA_BUFFER_NO_SAMPLE = 768// _MFT_OUTPUT_DATA_BUFFER_FLAGS
pub const MFT_OUTPUT_DATA_BUFFER_INCOMPLETE: i32 = 16777216;
pub const MFT_OUTPUT_DATA_BUFFER_FORMAT_CHANGE: i32 = 256;
pub const MFT_OUTPUT_DATA_BUFFER_STREAM_END: i32 = 512;
pub const MFT_OUTPUT_DATA_BUFFER_NO_SAMPLE: i32 = 768;// _MFT_OUTPUT_DATA_BUFFER_FLAGS
const (
MFT_OUTPUT_DATA_BUFFER_INCOMPLETE int32 = 16777216
MFT_OUTPUT_DATA_BUFFER_FORMAT_CHANGE int32 = 256
MFT_OUTPUT_DATA_BUFFER_STREAM_END int32 = 512
MFT_OUTPUT_DATA_BUFFER_NO_SAMPLE int32 = 768
)const
MFT_OUTPUT_DATA_BUFFER_INCOMPLETE = 16777216;
MFT_OUTPUT_DATA_BUFFER_FORMAT_CHANGE = 256;
MFT_OUTPUT_DATA_BUFFER_STREAM_END = 512;
MFT_OUTPUT_DATA_BUFFER_NO_SAMPLE = 768;// _MFT_OUTPUT_DATA_BUFFER_FLAGS
pub const MFT_OUTPUT_DATA_BUFFER_INCOMPLETE: i32 = 16777216;
pub const MFT_OUTPUT_DATA_BUFFER_FORMAT_CHANGE: i32 = 256;
pub const MFT_OUTPUT_DATA_BUFFER_STREAM_END: i32 = 512;
pub const MFT_OUTPUT_DATA_BUFFER_NO_SAMPLE: i32 = 768;const
MFT_OUTPUT_DATA_BUFFER_INCOMPLETE* = 16777216
MFT_OUTPUT_DATA_BUFFER_FORMAT_CHANGE* = 256
MFT_OUTPUT_DATA_BUFFER_STREAM_END* = 512
MFT_OUTPUT_DATA_BUFFER_NO_SAMPLE* = 768enum _MFT_OUTPUT_DATA_BUFFER_FLAGS : int {
MFT_OUTPUT_DATA_BUFFER_INCOMPLETE = 16777216,
MFT_OUTPUT_DATA_BUFFER_FORMAT_CHANGE = 256,
MFT_OUTPUT_DATA_BUFFER_STREAM_END = 512,
MFT_OUTPUT_DATA_BUFFER_NO_SAMPLE = 768,
}#define global MFT_OUTPUT_DATA_BUFFER_INCOMPLETE 0x1000000
#define global MFT_OUTPUT_DATA_BUFFER_FORMAT_CHANGE 0x100
#define global MFT_OUTPUT_DATA_BUFFER_STREAM_END 0x200
#define global MFT_OUTPUT_DATA_BUFFER_NO_SAMPLE 0x300