[PATCH 2/2] [include] add missing IWMSyncReader2 interfaces
Signed-off-by: Vijay Kiran Kamuju <infyquest(a)gmail.com> --- include/wmsdkidl.idl | 72 ++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 72 insertions(+) diff --git a/include/wmsdkidl.idl b/include/wmsdkidl.idl index bb7bfee4f8..1a0b3e4a29 100644 --- a/include/wmsdkidl.idl +++ b/include/wmsdkidl.idl @@ -209,6 +209,14 @@ typedef struct _WMStreamPrioritizationRecord WORD wStreamNumber; BOOL fMandatory; } WM_STREAM_PRIORITY_RECORD; + +typedef struct _WMT_TIMECODE_EXTENSION_DATA +{ + WORD wRange; + DWORD dwTimecode; + DWORD dwUserbits; + DWORD dwAmFlags; +} WMT_TIMECODE_EXTENSION_DATA; #include <poppack.h> typedef struct _WM_PORT_NUMBER_RANGE @@ -1056,6 +1064,69 @@ interface IWMSyncReader : IUnknown [in] IStream *pStream); } +[ + object, + uuid(9f762fa7-a22e-428d-93c9-ac82f3aafe5a), + pointer_default( unique ), + local +] +interface IWMReaderAllocatorEx : IUnknown +{ + HRESULT AllocateForStreamEx( + [in] WORD wStreamNum, + [in] DWORD cbBuffer, + [out] INSSBuffer **ppBuffer, + [in] DWORD dwFlags, + [in] QWORD cnsSampleTime, + [in] QWORD cnsSampleDuration, + [in] void *pvContext); + + HRESULT AllocateForOutputEx( + [in] WORD wOutputNum, + [in] DWORD cbBuffer, + [out] INSSBuffer **ppBuffer, + [in] DWORD dwFlags, + [in] QWORD cnsSampleTime, + [in] QWORD cnsSampleDuration, + [in] void *pvContext); +} + +[ + object, + uuid(faed3d21-1b6b-4af7-8bc6-3e189bbc187b), + pointer_default( unique ), + local +] +interface IWMSyncReader2 : IWMSyncReader +{ + HRESULT SetRangeByTimecode( + [in] WORD wStreamNum, + [in] WMT_TIMECODE_EXTENSION_DATA *pStart, + [in] WMT_TIMECODE_EXTENSION_DATA *pEnd); + + HRESULT SetRangeByFrameEx( + [in] WORD wStreamNum, + [in] QWORD qwFrameNumber, + [in] LONGLONG cFramesToRead, + [out] QWORD *pcnsStartTime); + + HRESULT SetAllocateForOutput( + [in] DWORD dwOutputNum, + [in] IWMReaderAllocatorEx *pAllocator); + + HRESULT GetAllocateForOutput( + [in] DWORD dwOutputNum, + [out] IWMReaderAllocatorEx **ppAllocator); + + HRESULT SetAllocateForStream( + [in] DWORD dwStreamNum, + [in] IWMReaderAllocatorEx *pAllocator); + + HRESULT GetAllocateForStream( + [in] DWORD dwStreamNum, + [out] IWMReaderAllocatorEx **ppAllocator); +} + [ object, uuid(96406bd5-2b2b-11d3-b36b-00c04f6108ff), @@ -1791,6 +1862,7 @@ cpp_quote("HRESULT WINAPI WMCheckURLExtension(LPCWSTR);") cpp_quote("HRESULT WINAPI WMCheckURLScheme(LPCWSTR);") cpp_quote("HRESULT WINAPI WMCreateWriter(IUnknown*,IWMWriter**);") cpp_quote("HRESULT WINAPI WMCreateReader(IUnknown*,DWORD,IWMReader**);") +cpp_quote("HRESULT WINAPI WMCreateSyncReader(IUnknown*,DWORD,IWMSyncReader**);") cpp_quote("EXTERN_GUID(WMMEDIASUBTYPE_Base, 0x00000000,0x0000,0x0010,0x80,0x00,0x00,0xaa,0x00,0x38,0x9b,0x71);") cpp_quote("EXTERN_GUID(WMMEDIATYPE_Video, 0x73646976,0x0000,0x0010,0x80,0x00,0x00,0xaa,0x00,0x38,0x9b,0x71);") -- 2.21.0
participants (1)
-
Vijay Kiran Kamuju