dmcompos/tests: Build without -DWINE_NO_LONG_TYPES.
[wine.git] / include / evr9.idl
blob0e846db5e537dc4aead9541642e921f1211f2f8a
1 /*
2 * Copyright 2020 Nikolay Sivov for CodeWeavers
4 * This library is free software; you can redistribute it and/or
5 * modify it under the terms of the GNU Lesser General Public
6 * License as published by the Free Software Foundation; either
7 * version 2.1 of the License, or (at your option) any later version.
9 * This library is distributed in the hope that it will be useful,
10 * but WITHOUT ANY WARRANTY; without even the implied warranty of
11 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
12 * Lesser General Public License for more details.
14 * You should have received a copy of the GNU Lesser General Public
15 * License along with this library; if not, write to the Free Software
16 * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
19 import "unknwn.idl";
20 import "evr.idl";
21 import "dxva2api.idl";
23 typedef struct MFVideoAlphaBitmapParams
25 DWORD dwFlags;
26 COLORREF clrSrcKey;
27 RECT rcSrc;
28 MFVideoNormalizedRect nrcDest;
29 FLOAT fAlpha;
30 DWORD dwFilterMode;
31 } MFVideoAlphaBitmapParams;
33 typedef struct MFVideoAlphaBitmap
35 BOOL GetBitmapFromDC;
36 union
38 HDC hdc;
39 IDirect3DSurface9 *pDDS;
40 } bitmap;
41 MFVideoAlphaBitmapParams params;
42 } MFVideoAlphaBitmap;
44 typedef enum
46 MFVideoAlphaBitmap_EntireDDS = 0x1,
47 MFVideoAlphaBitmap_SrcColorKey = 0x2,
48 MFVideoAlphaBitmap_SrcRect = 0x4,
49 MFVideoAlphaBitmap_DestRect = 0x8,
50 MFVideoAlphaBitmap_FilterMode = 0x10,
51 MFVideoAlphaBitmap_Alpha = 0x20,
52 MFVideoAlphaBitmap_BitMask = 0x3f
53 } MFVideoAlphaBitmapFlags;
56 object,
57 uuid(814c7b20-0fdb-4eec-af8f-f957c8f69edc),
58 local
60 interface IMFVideoMixerBitmap : IUnknown
62 HRESULT SetAlphaBitmap(
63 [in] const MFVideoAlphaBitmap *bitmap
65 HRESULT ClearAlphaBitmap(void);
66 HRESULT UpdateAlphaBitmapParameters(
67 [in] const MFVideoAlphaBitmapParams *params
69 HRESULT GetAlphaBitmapParameters(
70 [out] MFVideoAlphaBitmapParams *params
75 object,
76 uuid(6ab0000c-fece-4d1f-a2ac-a9573530656e),
77 pointer_default(unique)
79 interface IMFVideoProcessor : IUnknown
81 HRESULT GetAvailableVideoProcessorModes(
82 [out] UINT *count,
83 [out, size_is(*count)] GUID **modes
85 HRESULT GetVideoProcessorCaps(
86 [in] GUID *mode,
87 [out] DXVA2_VideoProcessorCaps *caps
89 HRESULT GetVideoProcessorMode(
90 [out] GUID *mode
92 HRESULT SetVideoProcessorMode(
93 [in] GUID *mode
95 HRESULT GetProcAmpRange(
96 [in] DWORD prop,
97 [out] DXVA2_ValueRange *range
99 HRESULT GetProcAmpValues(
100 [in] DWORD flags,
101 [out] DXVA2_ProcAmpValues *values
103 HRESULT SetProcAmpValues(
104 [in] DWORD flags,
105 [in] DXVA2_ProcAmpValues *values
107 HRESULT GetFilteringRange(
108 [in] DWORD prop,
109 [out] DXVA2_ValueRange *range
111 HRESULT GetFilteringValue(
112 [in] DWORD prop,
113 [out] DXVA2_Fixed32 *value
115 HRESULT SetFilteringValue(
116 [in] DWORD prop,
117 [in] DXVA2_Fixed32 *value
119 HRESULT GetBackgroundColor(
120 [out] COLORREF *color
122 HRESULT SetBackgroundColor(
123 [in] COLORREF color