Merged from trunk revs. 4477-4479: mingw-w64-headers/include/ 2011-09-16 Ozkan Sezer <sezeroz@gmail.com> * ks.h (KSPROPSETID_MemoryTransport): New. * ksmedia.h (KSPROPSETID_Wave_Queued): New. (KSPROPSETID_VramCapture): New. mingw-w64-crt: 2011-09-16 Jonathan Yong <jon_y@users.sourceforge.net> * libsrc/ksuser.c (KSPROPSETID_MemoryTransport): New. (KSPROPSETID_VramCapture): New. git-svn-id: svn+ssh://svn.code.sf.net/p/mingw-w64/code/stable/v2.x@4484 4407c894-4637-0410-b4f5-ada5f102cad1
diff --git a/mingw-w64-crt/ChangeLog b/mingw-w64-crt/ChangeLog index 232e2a4..504646d 100644 --- a/mingw-w64-crt/ChangeLog +++ b/mingw-w64-crt/ChangeLog
@@ -1,3 +1,8 @@ +2011-09-16 Jonathan Yong <jon_y@users.sourceforge.net> + + * libsrc/ksuser.c (KSPROPSETID_MemoryTransport): New. + (KSPROPSETID_VramCapture): New. + 2011-08-24 Kai Tietz <ktietz@redhat.com> * misc/tfind.c, misc/tsearch.c, misc/tdelete.c, misc/twalk.c:
diff --git a/mingw-w64-crt/libsrc/ksuser.c b/mingw-w64-crt/libsrc/ksuser.c index 58bc1d0..e6ce6ff 100644 --- a/mingw-w64-crt/libsrc/ksuser.c +++ b/mingw-w64-crt/libsrc/ksuser.c
@@ -344,6 +344,7 @@ DEFINE_GUID(KSPROPSETID_Itd3d,0x6429f090,0x9fd9,0x11d0,0xa7,0x5b,0x00,0xa0,0xc9,0x03,0x65,0xe3); DEFINE_GUID(KSPROPSETID_Linear,0x5a2ffe80,0x16b9,0x11d0,0xa5,0xd6,0x28,0xdb,0x04,0xc1,0x00,0x00); DEFINE_GUID(KSPROPSETID_MediaSeeking,0xee904f0c,0xd09b,0x11d0,0xab,0xe9,0x00,0xa0,0xc9,0x22,0x31,0x96); +DEFINE_GUID(KSPROPSETID_MemoryTransport,0xa3d1c5d,0x5243,0x4819,0x9e,0xd0,0xae,0xe8,0x4,0x4c,0xee,0x2b); DEFINE_GUID(KSPROPSETID_Mpeg2Vid,0xc8e11b60,0x0cc9,0x11d0,0xbd,0x69,0x00,0x35,0x05,0xc1,0x03,0xa9); DEFINE_GUID(KSPROPSETID_OverlayUpdate,0x490ea5cf,0x7681,0x11d1,0xa2,0x1c,0x00,0xa0,0xc9,0x22,0x31,0x96); DEFINE_GUID(KSPROPSETID_Pin,0x8c134960,0x51ad,0x11cf,0x87,0x8a,0x94,0xf8,0x01,0xc1,0x00,0x00); @@ -362,6 +363,7 @@ DEFINE_GUID(KSPROPSETID_VBICodecFiltering,0xcafeb0ca,0x8715,0x11d0,0xbd,0x6a,0x00,0x35,0xc0,0xed,0xba,0xbe); DEFINE_GUID(KSPROPSETID_VPConfig,0xbc29a660,0x30e3,0x11d0,0x9e,0x69,0x00,0xc0,0x4f,0xd7,0xc1,0x5b); DEFINE_GUID(KSPROPSETID_VPVBIConfig,0xec529b00,0x1a1f,0x11d1,0xba,0xd9,0x00,0x60,0x97,0x44,0x11,0x1a); +DEFINE_GUID(KSPROPSETID_VramCapture,0xe73face3L,0x2880,0x4902,0xb7,0x99,0x88,0xd0,0xcd,0x63,0x4e,0xf); DEFINE_GUID(KSPROPSETID_Wave,0x924e54b0,0x630f,0x11cf,0xad,0xa7,0x08,0x00,0x3e,0x30,0x49,0x4a); DEFINE_GUID(KSPROPSETID_Wave_Queued,0x16a15b10,0x16f0,0x11d0,0xa1,0x95,0x00,0x20,0xaf,0xd1,0x56,0xe4); DEFINE_GUID(KSPROPSETID_WaveTable,0x8539e660,0x62e9,0x11cf,0xa5,0xd6,0x28,0xdb,0x04,0xc1,0x00,0x00);
diff --git a/mingw-w64-headers/include/ChangeLog b/mingw-w64-headers/include/ChangeLog index 9eeae4d..bdd8bec 100644 --- a/mingw-w64-headers/include/ChangeLog +++ b/mingw-w64-headers/include/ChangeLog
@@ -1,3 +1,9 @@ +2011-09-16 Ozkan Sezer <sezeroz@gmail.com> + + * ks.h (KSPROPSETID_MemoryTransport): New. + * ksmedia.h (KSPROPSETID_Wave_Queued): New. + (KSPROPSETID_VramCapture): New. + 2011-09-14 Vincent Torri <vincent.torri@gmail.com> * psapi.h (LIST_MODULES_DEFAULT): New constant.
diff --git a/mingw-w64-headers/include/ks.h b/mingw-w64-headers/include/ks.h index cda1797..4d88035 100644 --- a/mingw-w64-headers/include/ks.h +++ b/mingw-w64-headers/include/ks.h
@@ -1236,6 +1236,23 @@ (Handler), \ NULL, 0, NULL, NULL, 0) +#define STATIC_KSPROPSETID_MemoryTransport \ + 0xA3D1C5DL,0x5243,0x4819,0x9E,0xD0,0xAE,0xE8,0x4,0x4C,0xEE,0x2B +DEFINE_GUIDSTRUCT("0A3D1C5D-5243-4819-9ED0-AEE8044CEE2B", KSPROPSETID_MemoryTransport); +#define KSPROPSETID_MemoryTransport DEFINE_GUIDNAMED(KSPROPSETID_MemoryTransport) + +enum { + KSPROPERTY_MEMORY_TRANSPORT = 1 +}; + +#define DEFINE_KSPROPERTY_ITEM_MEMORY_TRANSPORT(SetHandler) \ + DEFINE_KSPROPERTY_ITEM( \ + KSPROPERTY_MEMORY_TRANSPORT, \ + NULL, \ + sizeof(KSPROPERTY), \ + sizeof(WINBOOL), \ + (SetHandler), NULL,0,NULL,NULL,0) + #define KSALLOCATOR_REQUIREMENTF_INPLACE_MODIFIER 0x00000001 #define KSALLOCATOR_REQUIREMENTF_SYSTEM_MEMORY 0x00000002 #define KSALLOCATOR_REQUIREMENTF_FRAME_INTEGRITY 0x00000004 @@ -1557,6 +1574,8 @@ #define KSSTREAM_HEADER_OPTIONSF_FLUSHONPAUSE 0x00000080 #define KSSTREAM_HEADER_OPTIONSF_DURATIONVALID 0x00000100 #define KSSTREAM_HEADER_OPTIONSF_ENDOFSTREAM 0x00000200 +#define KSSTREAM_HEADER_OPTIONSF_BUFFEREDTRANSFER 0x00000400 +#define KSSTREAM_HEADER_OPTIONSF_VRAM_DATA_TRANSFER 0x00000800 #define KSSTREAM_HEADER_OPTIONSF_LOOPEDDATA 0x80000000 typedef struct {
diff --git a/mingw-w64-headers/include/ksmedia.h b/mingw-w64-headers/include/ksmedia.h index a84861f..6226262 100644 --- a/mingw-w64-headers/include/ksmedia.h +++ b/mingw-w64-headers/include/ksmedia.h
@@ -1630,6 +1630,13 @@ #define AEC_MODE_HALF_DUPLEX 0x1 #define AEC_MODE_FULL_DUPLEX 0x2 +#if (NTDDI_VERSION < NTDDI_WS03) +#define STATIC_KSPROPSETID_Wave_Queued \ + 0x16a15b10L,0x16f0,0x11d0,0xa1,0x95,0x00,0x20,0xaf,0xd1,0x56,0xe4 +DEFINE_GUIDSTRUCT("16a15b10-16f0-11d0-a195-0020afd156e4", KSPROPSETID_Wave_Queued); +#define KSPROPSETID_Wave_Queued DEFINE_GUIDNAMED(KSPROPSETID_Wave_Queued) +#endif /* NTDDI_VERSION < NTDDI_WS03 */ + #define STATIC_KSPROPSETID_Wave \ 0x924e54b0L,0x630f,0x11cf,0xad,0xa7,0x08,0x00,0x3e,0x30,0x49,0x4a DEFINE_GUIDSTRUCT("924e54b0-630f-11cf-ada7-08003e30494a",KSPROPSETID_Wave); @@ -3068,6 +3075,73 @@ DEFINE_GUIDSTRUCT("FB6C428C-0353-11d1-905F-0000C0CC16BA",PINNAME_VIDEO_VIDEOPORT_VBI); #define PINNAME_VIDEO_VIDEOPORT_VBI DEFINE_GUIDNAMED(PINNAME_VIDEO_VIDEOPORT_VBI) + +typedef enum { + KS_CAPTURE_ALLOC_INVALID = 0, + KS_CAPTURE_ALLOC_SYSTEM = 0x0001, + KS_CAPTURE_ALLOC_VRAM = 0x0002, + KS_CAPTURE_ALLOC_SYSTEM_AGP = 0x0004, + KS_CAPTURE_ALLOC_VRAM_MAPPED = 0x0008 +} CAPTURE_MEMORY_ALLOCATION_FLAGS,*PCAPTURE_MEMORY_ALLOCATION_FLAGS; + +#define STATIC_KSPROPSETID_VramCapture \ + 0xe73face3L,0x2880,0x4902,0xb7,0x99,0x88,0xd0,0xcd,0x63,0x4e,0xf +DEFINE_GUIDSTRUCT("E73FACE3-2880-4902-B799-88D0CD634E0F", KSPROPSETID_VramCapture); +#define KSPROPSETID_VramCapture DEFINE_GUIDNAMED(KSPROPSETID_VramCapture) + +typedef enum { + KSPROPERTY_DISPLAY_ADAPTER_GUID = 1, + KSPROPERTY_PREFERRED_CAPTURE_SURFACE, + KSPROPERTY_CURRENT_CAPTURE_SURFACE, + KSPROPERTY_MAP_CAPTURE_HANDLE_TO_VRAM_ADDRESS +} KSPROPERTY_VIDMEM_TRANSPORT; + +#define DEFINE_KSPROPERTY_ITEM_DISPLAY_ADAPTER_GUID(GetHandler) \ + DEFINE_KSPROPERTY_ITEM( \ + KSPROPERTY_DISPLAY_ADAPTER_GUID, \ + (GetHandler), \ + sizeof(KSPROPERTY), \ + sizeof(GUID), \ + NULL,NULL,0,NULL,NULL,0) +#define DEFINE_KSPROPERTY_PREFERRED_CAPTURE_SURFACE(GetHandler) \ + DEFINE_KSPROPERTY_ITEM( \ + KSPROPERTY_PREFERRED_CAPTURE_SURFACE, \ + (GetHandler), \ + sizeof(KSPROPERTY), \ + sizeof(CAPTURE_MEMORY_ALLOCATION_FLAGS),\ + NULL,NULL,0,NULL,NULL,0) +#define DEFINE_KSPROPERTY_CURRENT_CAPTURE_SURFACE(GetHandler,SetHandler)\ + DEFINE_KSPROPERTY_ITEM( \ + KSPROPERTY_CURRENT_CAPTURE_SURFACE, \ + (GetHandler), \ + sizeof(KSPROPERTY), \ + sizeof(CAPTURE_MEMORY_ALLOCATION_FLAGS),\ + (SetHandler),NULL,0,NULL,NULL,0) +#define DEFINE_KSPROPERTY_MAP_CAPTURE_HANDLE_TO_VRAM_ADDRESS(GetHandler)\ + DEFINE_KSPROPERTY_ITEM( \ + KSPROPERTY_MAP_CAPTURE_HANDLE_TO_VRAM_ADDRESS,\ + (GetHandler), \ + sizeof(VRAM_SURFACE_INFO_PROPERTY_S), \ + sizeof(DWORD), \ + NULL,NULL,0,NULL,NULL,0) + +typedef struct { + UINT_PTR hSurface; + LONGLONG VramPhysicalAddress; + DWORD cbCaptured; + DWORD dwWidth; + DWORD dwHeight; + DWORD dwLinearSize; + LONG lPitch; + ULONGLONG ullReserved[16]; +} VRAM_SURFACE_INFO,*PVRAM_SURFACE_INFO; + +typedef struct { + KSPROPERTY Property; + PVRAM_SURFACE_INFO pVramSurfaceInfo; +} VRAM_SURFACE_INFO_PROPERTY_S,*PVRAM_SURFACE_INFO_PROPERTY_S; + + #define KS_VIDEO_FLAG_FRAME 0x0000L #define KS_VIDEO_FLAG_FIELD1 0x0001L #define KS_VIDEO_FLAG_FIELD2 0x0002L