ホーム › Media.DirectShow › VMRSurfaceAllocationFlags
VMRSurfaceAllocationFlags
列挙型メンバー 6
| 名前 | 10進 | 16進 | 説明 |
|---|---|---|---|
| AMAP_PIXELFORMAT_VALID | 1 | 0x1 | lpPxFmt フィールドに、DirectDraw サーフェスの作成に使用すべき有効なデータが格納されていることを示します。 |
| AMAP_3D_TARGET | 2 | 0x2 | 作成される DirectDraw サーフェスが、DDSCAPS_3DDEVICE フラグを設定して作成される Direct3D レンダーターゲットでもあることを示します。 |
| AMAP_ALLOW_SYSMEM | 4 | 0x4 | ビデオメモリー内に DirectDraw サーフェスを割り当てられない場合に、システムメモリー上の DirectDraw サーフェスの割り当てを試みることを示します (AGP メモリーのサーフェスは決して割り当てないでください)。 |
| AMAP_FORCE_SYSMEM | 8 | 0x8 | サーフェスをシステムメモリー内に強制的に作成します。レンダリング前に GDI を使用して画像を処理する場合に指定します。サーフェスは現在のモニターの表示形式 (ピクセル深度) と一致していなければなりません。 |
| AMAP_DIRECTED_FLIP | 16 | 0x10 | Flip が呼び出されたときに、IVMRImagePresenter インターフェイスの PresentImage メソッドにパラメーターとして渡された、指定の DirectDraw サーフェスに対して Flip を行うことを意味します。ビデオデコーダーから見える DXVA バッファーと、グラフィックスドライバーから見える DXVA バッファーの同期を保つために、このフラグを正しくサポートすることが極めて重要です。 |
| AMAP_DXVA_TARGET | 32 | 0x20 | このサーフェスが DXVA ターゲットとして使用されることを示します。 |
公式ドキュメント
[このページに関連する機能である DirectShow はレガシー機能です。この機能は MediaPlayer、IMFMediaEngine、および Audio/Video Capture in Media Foundation に置き換えられました。これらの機能は Windows 10 および Windows 11 向けに最適化されています。Microsoft は、可能な場合は新しいコードで DirectShow ではなく MediaPlayer、IMFMediaEngine、Audio/Video Capture in Media Foundation を使用することを強く推奨します。また、レガシー API を使用している既存のコードについても、可能であれば新しい API を使用するように書き換えることを推奨します。]
VMRSurfaceAllocationFlags 列挙型は、IVMRSurfaceAllocator::AllocateSurface メソッドと共に使用され、サーフェスの作成パラメーターを指定します。
解説(Remarks)
3D サーフェスはシステムメモリー内に作成できないため、AMAP_3D_TARGET を AMAP_FORCE_SYSMEM や AMAP_ALLOW_SYSMEM と組み合わせることはできません。
出典・ライセンス: 上記「公式ドキュメント」の内容は Microsoft の Win32 API ドキュメント(MicrosoftDocs/sdk-api)を日本語に翻訳・改変したものです。© Microsoft Corporation. CC BY 4.0 で提供。
Microsoft 公式リファレンス: 英語 (en-us) · 日本語 (ja-jp) · 原文ソース (GitHub)
Microsoft 公式リファレンス: 英語 (en-us) · 日本語 (ja-jp) · 原文ソース (GitHub)
各言語での定義
列挙メンバーの定義。HSP タブは #define global(値は16進)。
typedef enum VMRSurfaceAllocationFlags : int {
AMAP_PIXELFORMAT_VALID = 1,
AMAP_3D_TARGET = 2,
AMAP_ALLOW_SYSMEM = 4,
AMAP_FORCE_SYSMEM = 8,
AMAP_DIRECTED_FLIP = 16,
AMAP_DXVA_TARGET = 32
} VMRSurfaceAllocationFlags;public enum VMRSurfaceAllocationFlags : int
{
AMAP_PIXELFORMAT_VALID = 1,
AMAP_3D_TARGET = 2,
AMAP_ALLOW_SYSMEM = 4,
AMAP_FORCE_SYSMEM = 8,
AMAP_DIRECTED_FLIP = 16,
AMAP_DXVA_TARGET = 32,
}Public Enum VMRSurfaceAllocationFlags As Integer
AMAP_PIXELFORMAT_VALID = 1
AMAP_3D_TARGET = 2
AMAP_ALLOW_SYSMEM = 4
AMAP_FORCE_SYSMEM = 8
AMAP_DIRECTED_FLIP = 16
AMAP_DXVA_TARGET = 32
End Enumimport enum
class VMRSurfaceAllocationFlags(enum.IntEnum):
AMAP_PIXELFORMAT_VALID = 1
AMAP_3D_TARGET = 2
AMAP_ALLOW_SYSMEM = 4
AMAP_FORCE_SYSMEM = 8
AMAP_DIRECTED_FLIP = 16
AMAP_DXVA_TARGET = 32// VMRSurfaceAllocationFlags
pub const AMAP_PIXELFORMAT_VALID: i32 = 1;
pub const AMAP_3D_TARGET: i32 = 2;
pub const AMAP_ALLOW_SYSMEM: i32 = 4;
pub const AMAP_FORCE_SYSMEM: i32 = 8;
pub const AMAP_DIRECTED_FLIP: i32 = 16;
pub const AMAP_DXVA_TARGET: i32 = 32;// VMRSurfaceAllocationFlags
const (
AMAP_PIXELFORMAT_VALID int32 = 1
AMAP_3D_TARGET int32 = 2
AMAP_ALLOW_SYSMEM int32 = 4
AMAP_FORCE_SYSMEM int32 = 8
AMAP_DIRECTED_FLIP int32 = 16
AMAP_DXVA_TARGET int32 = 32
)const
AMAP_PIXELFORMAT_VALID = 1;
AMAP_3D_TARGET = 2;
AMAP_ALLOW_SYSMEM = 4;
AMAP_FORCE_SYSMEM = 8;
AMAP_DIRECTED_FLIP = 16;
AMAP_DXVA_TARGET = 32;// VMRSurfaceAllocationFlags
pub const AMAP_PIXELFORMAT_VALID: i32 = 1;
pub const AMAP_3D_TARGET: i32 = 2;
pub const AMAP_ALLOW_SYSMEM: i32 = 4;
pub const AMAP_FORCE_SYSMEM: i32 = 8;
pub const AMAP_DIRECTED_FLIP: i32 = 16;
pub const AMAP_DXVA_TARGET: i32 = 32;const
AMAP_PIXELFORMAT_VALID* = 1
AMAP_3D_TARGET* = 2
AMAP_ALLOW_SYSMEM* = 4
AMAP_FORCE_SYSMEM* = 8
AMAP_DIRECTED_FLIP* = 16
AMAP_DXVA_TARGET* = 32enum VMRSurfaceAllocationFlags : int {
AMAP_PIXELFORMAT_VALID = 1,
AMAP_3D_TARGET = 2,
AMAP_ALLOW_SYSMEM = 4,
AMAP_FORCE_SYSMEM = 8,
AMAP_DIRECTED_FLIP = 16,
AMAP_DXVA_TARGET = 32,
}#define global AMAP_PIXELFORMAT_VALID 0x1
#define global AMAP_3D_TARGET 0x2
#define global AMAP_ALLOW_SYSMEM 0x4
#define global AMAP_FORCE_SYSMEM 0x8
#define global AMAP_DIRECTED_FLIP 0x10
#define global AMAP_DXVA_TARGET 0x20