[v2 PATCH 1/2] include: Add mfreadwrite.idl
Alistair Leslie-Hughes
leslie_alistair at hotmail.com
Tue Feb 14 00:34:22 CST 2017
Signed-off-by: Alistair Leslie-Hughes <leslie_alistair at hotmail.com>
---
include/Makefile.in | 1 +
include/mfreadwrite.idl | 46 ++++++++++++++++++++++++++++++++++++++++++++++
2 files changed, 47 insertions(+)
create mode 100644 include/mfreadwrite.idl
diff --git a/include/Makefile.in b/include/Makefile.in
index 80fa362..4fbfd16 100644
--- a/include/Makefile.in
+++ b/include/Makefile.in
@@ -89,6 +89,7 @@ IDL_SRCS = \
mediaobj.idl \
metahost.idl \
mfobjects.idl \
+ mfreadwrite.idl \
mimeinfo.idl \
mimeole.idl \
mlang.idl \
diff --git a/include/mfreadwrite.idl b/include/mfreadwrite.idl
new file mode 100644
index 0000000..d044841
--- /dev/null
+++ b/include/mfreadwrite.idl
@@ -0,0 +1,46 @@
+/*
+ * Copyright (C) 2017 Alistair Leslie-Hughes
+ *
+ * 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 "objidl.idl";
+import "oaidl.idl";
+import "mfobjects.idl";
+
+interface IMFMediaSource;
+
+[
+ object,
+ uuid(70ae66f2-c809-4e4f-8915-bdcb406b7993),
+ local
+]
+interface IMFSourceReader : IUnknown
+{
+ HRESULT GetStreamSelection([in] DWORD index, [out] BOOL *selected);
+ HRESULT SetStreamSelection([in] DWORD index, [in] BOOL selected);
+ HRESULT GetNativeMediaType([in] DWORD index, [in] DWORD typeindex, [out] IMFMediaType **type);
+ HRESULT GetCurrentMediaType([in] DWORD index, [out] IMFMediaType **type);
+ HRESULT SetCurrentMediaType([in] DWORD index, [in, out] DWORD *reserved, [in] IMFMediaType *type);
+ HRESULT SetCurrentPosition([in] REFGUID format, [in] REFPROPVARIANT position);
+ HRESULT ReadSample([in] DWORD index, [in] DWORD flags, [out] DWORD *actualindex, [out] DWORD *Streamflags,
+ [out] LONGLONG *timestamp, [out] IMFSample **sample);
+ HRESULT Flush([in] DWORD index);
+ HRESULT GetServiceForStream([in] DWORD index, [in] REFGUID service, [in] REFIID riid, [out] void **object);
+ HRESULT GetPresentationAttribute([in] DWORD index, [in] REFGUID guid, [out] PROPVARIANT *attr);
+};
+
+cpp_quote("HRESULT WINAPI MFCreateSourceReaderFromMediaSource(IMFMediaSource *source,")
+cpp_quote(" IMFAttributes *attributes, IMFSourceReader **reader);")
--
1.9.1
More information about the wine-patches
mailing list