Module: wine Branch: stable Commit: e3f35a674bd38995448a3daf5893ce8b120dc0ae URL: http://source.winehq.org/git/wine.git/?a=commit;h=e3f35a674bd38995448a3daf58...
Author: Alistair Leslie-Hughes leslie_alistair@hotmail.com Date: Thu Feb 23 00:17:23 2017 -0700
include: Add mfreadwrite.idl.
Signed-off-by: Alistair Leslie-Hughes leslie_alistair@hotmail.com Signed-off-by: Alex Henrie alexhenrie24@gmail.com Signed-off-by: Alexandre Julliard julliard@winehq.org (cherry picked from commit f45f088d865c6fd341a6648742566098a36fb95d) Signed-off-by: Michael Stefaniuc mstefani@winehq.org
---
include/Makefile.in | 1 + include/mfreadwrite.idl | 46 ++++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 47 insertions(+)
diff --git a/include/Makefile.in b/include/Makefile.in index 9f615cd..0b5e6ad 100644 --- a/include/Makefile.in +++ b/include/Makefile.in @@ -88,6 +88,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..3f53ff9 --- /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 *sampleflags, + [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, IMFAttributes *attributes," ) +cpp_quote( " IMFSourceReader **reader);" )