Alistair Leslie-Hughes : include/mfreadwrite.idl: Add interface IMFSinkWriter.
Alexandre Julliard
julliard at winehq.org
Fri May 19 15:59:54 CDT 2017
Module: wine
Branch: master
Commit: 3f01ab4c39ffa50e26916a5f33d82dec1a2e42dc
URL: http://source.winehq.org/git/wine.git/?a=commit;h=3f01ab4c39ffa50e26916a5f33d82dec1a2e42dc
Author: Alistair Leslie-Hughes <leslie_alistair at hotmail.com>
Date: Fri May 19 04:03:32 2017 +0000
include/mfreadwrite.idl: Add interface IMFSinkWriter.
Signed-off-by: Alistair Leslie-Hughes <leslie_alistair at hotmail.com>
Signed-off-by: Alexandre Julliard <julliard at winehq.org>
---
include/mfreadwrite.idl | 40 ++++++++++++++++++++++++++++++++++++++++
1 file changed, 40 insertions(+)
diff --git a/include/mfreadwrite.idl b/include/mfreadwrite.idl
index a146552..c8816cd 100644
--- a/include/mfreadwrite.idl
+++ b/include/mfreadwrite.idl
@@ -31,6 +31,26 @@ enum
MF_SOURCE_READER_CURRENT_TYPE_INDEX = 0xffffffff
};
+typedef struct _MF_SINK_WRITER_STATISTICS
+{
+ DWORD cb;
+ LONGLONG llLastTimestampReceived;
+ LONGLONG llLastTimestampEncoded;
+ LONGLONG llLastTimestampProcessed;
+ LONGLONG llLastStreamTickReceived;
+ LONGLONG llLastSinkSampleRequest;
+ QWORD qwNumSamplesReceived;
+ QWORD qwNumSamplesEncoded;
+ QWORD qwNumSamplesProcessed;
+ QWORD qwNumStreamTicksReceived;
+ DWORD dwByteCountQueued;
+ QWORD qwByteCountProcessed;
+ DWORD dwNumOutstandingSinkSampleRequests;
+ DWORD dwAverageSampleRateReceived;
+ DWORD dwAverageSampleRateEncoded;
+ DWORD dwAverageSampleRateProcessed;
+} MF_SINK_WRITER_STATISTICS;
+
interface IMFMediaSource;
[
@@ -53,5 +73,25 @@ interface IMFSourceReader : IUnknown
HRESULT GetPresentationAttribute([in] DWORD index, [in] REFGUID guid, [out] PROPVARIANT *attr);
};
+[
+ object,
+ uuid(3137f1cd-fe5e-4805-a5d8-fb477448cb3d),
+ local
+]
+interface IMFSinkWriter : IUnknown
+{
+ HRESULT AddStream([in] IMFMediaType *type, [out] DWORD *index);
+ HRESULT SetInputMediaType([in] DWORD index, [in] IMFMediaType *type, [in] IMFAttributes *parameters);
+ HRESULT BeginWriting(void);
+ HRESULT WriteSample([in] DWORD index, [in] IMFSample *sample);
+ HRESULT SendStreamTick([in] DWORD index, [in] LONGLONG timestamp);
+ HRESULT PlaceMarker([in] DWORD index, [in] void *context);
+ HRESULT NotifyEndOfSegment([in] DWORD index);
+ HRESULT Flush([in] DWORD index);
+ HRESULT Finalize(void);
+ HRESULT GetServiceForStream([in] DWORD index, [in] REFGUID service, [in] REFIID riid, [out] void **object);
+ HRESULT GetStatistics([in] DWORD index, [out] MF_SINK_WRITER_STATISTICS *stats);
+};
+
cpp_quote( "HRESULT WINAPI MFCreateSourceReaderFromMediaSource(IMFMediaSource *source, IMFAttributes *attributes," )
cpp_quote( " IMFSourceReader **reader);" )
More information about the wine-cvs
mailing list