Nikolay Sivov : include: Add some more EVR mixer interfaces.
Alexandre Julliard
julliard at winehq.org
Thu Jun 25 16:14:25 CDT 2020
Module: wine
Branch: master
Commit: 1f57af100f43c9ecd0d30b0f1200f5c605b18297
URL: https://source.winehq.org/git/wine.git/?a=commit;h=1f57af100f43c9ecd0d30b0f1200f5c605b18297
Author: Nikolay Sivov <nsivov at codeweavers.com>
Date: Thu Jun 25 17:57:57 2020 +0300
include: Add some more EVR mixer interfaces.
Signed-off-by: Nikolay Sivov <nsivov at codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard at winehq.org>
---
include/Makefile.in | 1 +
include/evr9.idl | 114 ++++++++++++++++++++++++++++++++++++++++++++++++++++
2 files changed, 115 insertions(+)
diff --git a/include/Makefile.in b/include/Makefile.in
index 9f70e72b4c..90fb873f20 100644
--- a/include/Makefile.in
+++ b/include/Makefile.in
@@ -276,6 +276,7 @@ SOURCES = \
evntprov.h \
evntrace.h \
evr.idl \
+ evr9.idl \
excpt.h \
exdisp.idl \
exdispid.h \
diff --git a/include/evr9.idl b/include/evr9.idl
new file mode 100644
index 0000000000..1572d87838
--- /dev/null
+++ b/include/evr9.idl
@@ -0,0 +1,114 @@
+/*
+ * Copyright 2020 Nikolay Sivov for CodeWeavers
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2.1 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
+ */
+
+import "unknwn.idl";
+import "evr.idl";
+import "dxva2api.idl";
+
+typedef struct MFVideoAlphaBitmapParams
+{
+ DWORD dwFlags;
+ COLORREF clrSrcKey;
+ RECT rcSrc;
+ MFVideoNormalizedRect nrcDest;
+ FLOAT fAlpha;
+ DWORD dwFilterMode;
+} MFVideoAlphaBitmapParams;
+
+typedef struct MFVideoAlphaBitmap
+{
+ BOOL GetBitmapFromDC;
+ union
+ {
+ HDC hdc;
+ IDirect3DSurface9 *pDDS;
+ } bitmap;
+ MFVideoAlphaBitmapParams params;
+} MFVideoAlphaBitmap;
+
+[
+ object,
+ uuid(814c7b20-0fdb-4eec-af8f-f957c8f69edc),
+ local
+]
+interface IMFVideoMixerBitmap : IUnknown
+{
+ HRESULT SetAlphaBitmap(
+ [in] const MFVideoAlphaBitmap *bitmap
+ );
+ HRESULT ClearAlphaBitmap(void);
+ HRESULT UpdateAlphaBitmapParameters(
+ [in] const MFVideoAlphaBitmapParams *params
+ );
+ HRESULT GetAlphaBitmapParameters(
+ [out] MFVideoAlphaBitmapParams *params
+ );
+}
+
+[
+ object,
+ uuid(6AB0000C-FECE-4d1f-A2AC-A9573530656E),
+ pointer_default(unique)
+]
+interface IMFVideoProcessor : IUnknown
+{
+ HRESULT GetAvailableVideoProcessorModes(
+ [out] UINT *count,
+ [out, size_is(*count)] GUID **modes
+ );
+ HRESULT GetVideoProcessorCaps(
+ [in] GUID *mode,
+ [out] DXVA2_VideoProcessorCaps *caps
+ );
+ HRESULT GetVideoProcessorMode(
+ [out] GUID *mode
+ );
+ HRESULT SetVideoProcessorMode(
+ [in] GUID *mode
+ );
+ HRESULT GetProcAmpRange(
+ [in] DWORD prop,
+ [out] DXVA2_ValueRange *range
+ );
+ HRESULT GetProcAmpValues(
+ [in] DWORD flags,
+ [out] DXVA2_ProcAmpValues *values
+ );
+ HRESULT SetProcAmpValues(
+ [in] DWORD flags,
+ [in] DXVA2_ProcAmpValues *values
+ );
+ HRESULT GetFilteringRange(
+ [in] DWORD prop,
+ [out] DXVA2_ValueRange *range
+ );
+ HRESULT GetFilteringValue(
+ [in] DWORD prop,
+ [out] DXVA2_Fixed32 *value
+ );
+ HRESULT SetFilteringValue(
+ [in] DWORD prop,
+ [in] DXVA2_Fixed32 *value
+ );
+ HRESULT GetBackgroundColor(
+ [out] COLORREF *color
+ );
+ HRESULT SetBackgroundColor(
+ [in] COLORREF color
+ );
+}
More information about the wine-cvs
mailing list