mirror of
https://github.com/reactos/reactos.git
synced 2024-12-23 11:03:31 +08:00
adding mixerocx.idl, vidcap.idl, videoacc.idl compatible with ms dxsdk 2004 dec
svn path=/trunk/; revision=26906
This commit is contained in:
parent
d9221af45a
commit
15e6e8404d
58
reactos/include/dxsdk/Videoacc.idl
Normal file
58
reactos/include/dxsdk/Videoacc.idl
Normal file
@ -0,0 +1,58 @@
|
|||||||
|
import "unknwn.idl";
|
||||||
|
|
||||||
|
cpp_quote("#if 0")
|
||||||
|
|
||||||
|
typedef void* LPVOID;
|
||||||
|
typedef void* LPGUID;
|
||||||
|
typedef void* LPDIRECTDRAWSURFACE;
|
||||||
|
typedef void* LPDDPIXELFORMAT;
|
||||||
|
typedef void* LPAMVAInternalMemInfo;
|
||||||
|
typedef void AMVAUncompDataInfo;
|
||||||
|
typedef void* LPAMVACompBufferInfo;
|
||||||
|
typedef void AMVABUFFERINFO;
|
||||||
|
typedef void AMVAEndFrameInfo;
|
||||||
|
typedef void* LPAMVAUncompBufferInfo;
|
||||||
|
typedef void AMVABeginFrameInfo;
|
||||||
|
typedef IUnknown* IMediaSample;
|
||||||
|
cpp_quote("#endif")
|
||||||
|
|
||||||
|
cpp_quote("#include <ddraw.h>")
|
||||||
|
cpp_quote("#include <amva.h>")
|
||||||
|
|
||||||
|
|
||||||
|
[
|
||||||
|
local,
|
||||||
|
object,
|
||||||
|
uuid(256A6A22-FBAD-11d1-82BF-00A0C9696C8F),
|
||||||
|
pointer_default(unique)
|
||||||
|
]
|
||||||
|
|
||||||
|
interface IAMVideoAccelerator : IUnknown
|
||||||
|
{
|
||||||
|
HRESULT GetVideoAcceleratorGUIDs([in] [out] LPDWORD pdwNumGuidsSupported, [in] [out] LPGUID pGuidsSupported);
|
||||||
|
HRESULT GetUncompFormatsSupported( [in] const GUID *pGuid, [in] [out] LPDWORD pdwNumFormatsSupported, [in] [out] LPDDPIXELFORMAT pFormatsSupported);
|
||||||
|
HRESULT GetInternalMemInfo([in] const GUID *pGuid, [in] const AMVAUncompDataInfo *pamvaUncompDataInfo, [in] [out] LPAMVAInternalMemInfo pamvaInternalMemInfo);
|
||||||
|
HRESULT GetCompBufferInfo([in] const GUID *pGuid, [in] const AMVAUncompDataInfo *pamvaUncompDataInfo, [in] [out] LPDWORD pdwNumTypesCompBuffers, [out] LPAMVACompBufferInfo pamvaCompBufferInfo);
|
||||||
|
HRESULT GetInternalCompBufferInfo([in] [out] LPDWORD pdwNumTypesCompBuffers, [out] LPAMVACompBufferInfo pamvaCompBufferInfo);
|
||||||
|
HRESULT BeginFrame([in] const AMVABeginFrameInfo *amvaBeginFrameInfo);
|
||||||
|
HRESULT EndFrame([in] const AMVAEndFrameInfo *pEndFrameInfo);
|
||||||
|
HRESULT GetBuffer([in] DWORD dwTypeIndex, [in] DWORD dwBufferIndex, [in] BOOL bReadOnly, [out] LPVOID *ppBuffer, [out] LONG *lpStride);
|
||||||
|
HRESULT ReleaseBuffer([in] DWORD dwTypeIndex, [in] DWORD dwBufferIndex);
|
||||||
|
HRESULT Execute([in] DWORD dwFunction, [in] LPVOID lpPrivateInputData, [in] DWORD cbPrivateInputData, [in] LPVOID lpPrivateOutputDat, [in] DWORD cbPrivateOutputData, [in] DWORD dwNumBuffers, [in] const AMVABUFFERINFO *pamvaBufferInfo);
|
||||||
|
HRESULT QueryRenderStatus([in] DWORD dwTypeIndex, [in] DWORD dwBufferIndex, [in] DWORD dwFlags);
|
||||||
|
HRESULT DisplayFrame([in] DWORD dwFlipToIndex, [in] IMediaSample *pMediaSample);
|
||||||
|
};
|
||||||
|
|
||||||
|
[
|
||||||
|
local,
|
||||||
|
object,
|
||||||
|
uuid(256A6A21-FBAD-11d1-82BF-00A0C9696C8F),
|
||||||
|
pointer_default(unique)
|
||||||
|
]
|
||||||
|
|
||||||
|
interface IAMVideoAcceleratorNotify : IUnknown
|
||||||
|
{
|
||||||
|
HRESULT GetUncompSurfacesInfo([in] const GUID *pGuid, [in] [out] LPAMVAUncompBufferInfo pUncompBufferInfo);
|
||||||
|
HRESULT SetUncompSurfacesInfo([in] DWORD dwActualUncompSurfacesAllocated);
|
||||||
|
HRESULT GetCreateVideoAcceleratorData([in] const GUID *pGuid, [out] LPDWORD pdwSizeMiscData, [out] LPVOID *ppMiscData);
|
||||||
|
};
|
@ -2,5 +2,8 @@
|
|||||||
<file>austream.idl</file>
|
<file>austream.idl</file>
|
||||||
<file>amstream.idl</file>
|
<file>amstream.idl</file>
|
||||||
<file>ddstream.idl</file>
|
<file>ddstream.idl</file>
|
||||||
|
<file>mixerocx.idl</file>
|
||||||
<file>mmstream.idl</file>
|
<file>mmstream.idl</file>
|
||||||
|
<file>vidcap.idl</file>
|
||||||
|
<file>Videoacc.idl</file>
|
||||||
</module>
|
</module>
|
42
reactos/include/dxsdk/mixerocx.idl
Normal file
42
reactos/include/dxsdk/mixerocx.idl
Normal file
@ -0,0 +1,42 @@
|
|||||||
|
import "unknwn.idl";
|
||||||
|
|
||||||
|
#define MIXER_DATA_ASPECT_RATIO 0x00000001
|
||||||
|
#define MIXER_DATA_NATIVE_SIZE 0x00000002
|
||||||
|
#define MIXER_DATA_PALETTE 0x00000004
|
||||||
|
#define MIXER_STATE_MASK 0x00000003
|
||||||
|
#define MIXER_STATE_UNCONNECTED 0x00000000
|
||||||
|
#define MIXER_STATE_CONNECTED_STOPPED 0x00000001
|
||||||
|
#define MIXER_STATE_CONNECTED_PAUSED 0x00000002
|
||||||
|
#define MIXER_STATE_CONNECTED_PLAYING 0x00000003
|
||||||
|
|
||||||
|
interface IMixerOCXNotify;
|
||||||
|
interface IMixerOCX;
|
||||||
|
|
||||||
|
[
|
||||||
|
object,
|
||||||
|
uuid(81A3BD31-DEE1-11d1-8508-00A0C91F9CA0),
|
||||||
|
pointer_default(unique)
|
||||||
|
]
|
||||||
|
interface IMixerOCXNotify : IUnknown
|
||||||
|
{
|
||||||
|
HRESULT OnInvalidateRect([in] LPCRECT lpcRect);
|
||||||
|
HRESULT OnStatusChange([in] ULONG ulStatusFlags);
|
||||||
|
HRESULT OnDataChange([in] ULONG ulDataFlags);
|
||||||
|
};
|
||||||
|
|
||||||
|
[
|
||||||
|
object,
|
||||||
|
uuid(81A3BD32-DEE1-11d1-8508-00A0C91F9CA0),
|
||||||
|
pointer_default(unique)
|
||||||
|
]
|
||||||
|
interface IMixerOCX : IUnknown
|
||||||
|
{
|
||||||
|
HRESULT OnDisplayChange([in] ULONG ulBitsPerPixel, [in] ULONG ulScreenWidth, [in] ULONG ulScreenHeight);
|
||||||
|
HRESULT GetAspectRatio([out] LPDWORD pdwPictAspectRatioX, [out] LPDWORD pdwPictAspectRatioY);
|
||||||
|
HRESULT GetVideoSize([out] LPDWORD pdwVideoWidth, [out] LPDWORD pdwVideoHeight);
|
||||||
|
HRESULT GetStatus([out] LPDWORD *pdwStatus);
|
||||||
|
HRESULT OnDraw([in] HDC hdcDraw, [in] LPCRECT prcDraw);
|
||||||
|
HRESULT SetDrawRegion([in] LPPOINT lpptTopLeftSC, [in] LPCRECT prcDrawCC, [in] LPCRECT lprcClip);
|
||||||
|
HRESULT Advise([in] IMixerOCXNotify *pmdns);
|
||||||
|
HRESULT UnAdvise();
|
||||||
|
};
|
60
reactos/include/dxsdk/vidcap.idl
Normal file
60
reactos/include/dxsdk/vidcap.idl
Normal file
@ -0,0 +1,60 @@
|
|||||||
|
|
||||||
|
import "unknwn.idl";
|
||||||
|
import "strmif.idl";
|
||||||
|
|
||||||
|
cpp_quote("#include \"ks.h\"")
|
||||||
|
cpp_quote("#ifndef _KS_")
|
||||||
|
typedef struct {
|
||||||
|
ULONG FromNode;
|
||||||
|
ULONG FromNodePin;
|
||||||
|
ULONG ToNode;
|
||||||
|
ULONG ToNodePin;
|
||||||
|
} KSTOPOLOGY_CONNECTION, *PKSTOPOLOGY_CONNECTION;
|
||||||
|
cpp_quote("#endif")
|
||||||
|
|
||||||
|
|
||||||
|
[
|
||||||
|
object,
|
||||||
|
local,
|
||||||
|
uuid(720D4AC0-7533-11D0-A5D6-28DB04C10000),
|
||||||
|
pointer_default(unique)
|
||||||
|
]
|
||||||
|
interface IKsTopologyInfo : IUnknown
|
||||||
|
{
|
||||||
|
HRESULT get_NumCategories([out] DWORD *pdwNumCategories);
|
||||||
|
HRESULT get_Category([in] DWORD dwIndex, [out] GUID *pCategory);
|
||||||
|
HRESULT get_NumConnections([out] DWORD *pdwNumConnections);
|
||||||
|
HRESULT get_ConnectionInfo([in] DWORD dwIndex, [out] KSTOPOLOGY_CONNECTION *pConnectionInfo);
|
||||||
|
HRESULT get_NodeName([in] DWORD dwNodeId, [out] WCHAR *pwchNodeName, [in] DWORD dwBufSize, [out] DWORD *pdwNameLen);
|
||||||
|
HRESULT get_NumNodes([out] DWORD *pdwNumNodes);
|
||||||
|
HRESULT get_NodeType([in] DWORD dwNodeId, [out] GUID *pNodeType);
|
||||||
|
HRESULT CreateNodeInstance([in] DWORD dwNodeId, [in] REFIID iid, [out] void **ppvObject);
|
||||||
|
}
|
||||||
|
|
||||||
|
[
|
||||||
|
object,
|
||||||
|
local,
|
||||||
|
uuid(11737C14-24A7-4bb5-81A0-0D003813B0C4),
|
||||||
|
pointer_default(unique)
|
||||||
|
]
|
||||||
|
interface IKsNodeControl :IUnknown
|
||||||
|
{
|
||||||
|
HRESULT put_NodeId([in] DWORD dwNodeId);
|
||||||
|
HRESULT put_KsControl([in] PVOID pKsControl);
|
||||||
|
}
|
||||||
|
|
||||||
|
[
|
||||||
|
object,
|
||||||
|
local,
|
||||||
|
uuid(1ABDAECA-68B6-4F83-9371-B413907C7B9F),
|
||||||
|
pointer_default(unique)
|
||||||
|
]
|
||||||
|
interface ISelector : IUnknown
|
||||||
|
{
|
||||||
|
HRESULT get_NumSources([out] DWORD *pdwNumSources);
|
||||||
|
HRESULT get_SourceNodeId([out] DWORD *pdwPinId);
|
||||||
|
HRESULT put_SourceNodeId([in] DWORD dwPinId);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue
Block a user