Commit Graph

280 Commits

Author SHA1 Message Date
Nikolay Sivov 67bd377af2 mfplat: Make sure async event delivery is triggered with EndGetEvent().
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-06-10 12:17:17 +02:00
Nikolay Sivov 1778775f47 mfplat: Add sample grabber attributes to debug tracing helper.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-05-30 21:53:27 +02:00
Nikolay Sivov 7b014ff049 mfplat: Add timestamp support for system time source.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-05-24 21:56:04 +02:00
Nikolay Sivov 5904eb8419 mfplat: Create system clock instance per system time source.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-05-20 18:31:39 +02:00
Nikolay Sivov ac2038ef30 mfplat: Return properties for system time source.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-05-20 18:31:38 +02:00
Nikolay Sivov e1d23a336e mfplat: Handle null destination for GetItem().
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-05-17 20:02:30 +02:00
Michael Stefaniuc 40fef0fb71 mfplat: Print the debug strings and not the pointers.
Signed-off-by: Michael Stefaniuc <mstefani@winehq.org>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-05-13 23:04:31 +02:00
Nikolay Sivov ea96db6557 mfplat: Write flags when registering MFT.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-05-07 08:47:28 -05:00
Nikolay Sivov b0bd57f953 mfplat: Write attribute store when registering MFT.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-05-07 08:47:25 -05:00
Nikolay Sivov 52f374ad50 mfplat: Implement IsEndOfStream() for file stream.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-05-06 07:13:54 -05:00
Nikolay Sivov 6da78ff6dd mfplat: Implement Read() for file-based stream.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-05-06 07:13:54 -05:00
Nikolay Sivov 59599486c8 mfplat: Improve SetGUID() traces.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-05-06 07:13:54 -05:00
Nikolay Sivov 9092f1f3da mfplat: Add topology attributes guids.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-05-06 07:13:54 -05:00
Michael Stefaniuc de74a92eab mfplat/tests: Remove a duplicated ok() check.
Also fix the text of the first ok() call.

Signed-off-by: Michael Stefaniuc <mstefani@winehq.org>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-05-03 21:14:59 +02:00
Nikolay Sivov 8c69a77032 mf: Implement file scheme handler.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-05-03 16:31:24 +02:00
Nikolay Sivov 0ece679210 mfplat/tests: Add some tests for calling scheme handler directly.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-05-02 23:38:21 +02:00
Nikolay Sivov 75def3a11e mfplat: Use file url scheme as a fallback.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-05-02 23:38:07 +02:00
Nikolay Sivov 1cf021f45e mfplat: Implement async file stream creation API.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-05-02 23:37:30 +02:00
Nikolay Sivov ec991fbf29 mfplat: Add more attribute guids.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-04-30 20:08:38 +02:00
Nikolay Sivov dda9037c37 mfplat: Copy attributes when cloning presentation descriptor.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-04-30 20:08:09 +02:00
Nikolay Sivov 4837234e84 mfplat: Improve method traces.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-04-29 18:46:25 +02:00
Nikolay Sivov 60f610660d mfplat: Improve thread safety for IStream-based stream.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-04-29 18:46:25 +02:00
Nikolay Sivov 2e9a036f9a mfplat: Add partial implementation of ConvertToContiguousBuffer().
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-04-26 13:38:36 +02:00
Nikolay Sivov 4c9517ee0d mfplat/tests: Add a test for stream descriptor major type behavior.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-04-18 18:47:18 +02:00
Nikolay Sivov 622a84c637 mfplat/tests: Add some return value checks (Coverity).
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-04-08 09:55:22 +02:00
Nikolay Sivov 88924d6a41 mfplat: Output warning for unexpected result object passed for periodic callback (Coverity).
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-04-08 09:55:22 +02:00
Nikolay Sivov 53f0a25e6d mfplat: Fix early return from GetString() (Coverity).
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-04-08 09:55:22 +02:00
Nikolay Sivov bf8d536c22 mfplat: Use attributes helpers for events.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-04-02 19:28:00 +02:00
Nikolay Sivov fee85530dc mfplat: Trace known format ids in MFCalculateImageSize().
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-04-02 19:27:58 +02:00
Nikolay Sivov 49491a1a3c mfplat: Use attributes helpers for samples.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-04-02 19:27:56 +02:00
Nikolay Sivov b4c28a7085 mfplat: Use attributes helpers for presentation descriptor.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-04-02 19:27:53 +02:00
Nikolay Sivov e4e9d3a2f3 mfplat: Use attributes helpers for stream descriptor.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-04-01 21:54:31 +02:00
Nikolay Sivov 7a13f42786 mfplat: Add per-method helpers for attributes, use them for media type.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-04-01 21:54:31 +02:00
Nikolay Sivov 86656f8604 mfplat: Add symbolic names for event id tracing.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-04-01 21:54:31 +02:00
Nikolay Sivov 261995d166 mfplat: Partially implement MFCreateWaveFormatExFromMFMediaType() for PCM format.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-04-01 21:54:31 +02:00
Nikolay Sivov 6e34275f84 mfplat: Add traces for attributes methods of IMFMediaType.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-03-29 21:13:43 +01:00
Nikolay Sivov 9c146f2856 mfplat: Use correct callback for CreateObjectFromURL().
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-03-29 21:13:43 +01:00
Nikolay Sivov 663af65eb9 mfplat: Fix EndCreateObject*() when events are used.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-03-29 21:13:43 +01:00
Nikolay Sivov 17613e0a03 mfplat: Use current stream position when async request is made.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-03-27 09:24:28 +01:00
Nikolay Sivov c46bdc9473 mfplat: Fix return value for IsCompressedFormat().
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-03-26 13:46:58 +01:00
Nikolay Sivov b00be28968 mfplat: Return capabilities for file stream.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-03-26 13:46:54 +01:00
Nikolay Sivov b74b59915d mfplat: Keep file handle open for file stream.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-03-26 13:46:50 +01:00
Nikolay Sivov 493b375f00 mfplat: Use existing helper for BeginWrite() too.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-03-25 10:21:39 +01:00
Nikolay Sivov 10338fc7e8 mfplat: Implement MFCreateMFByteStreamWrapper().
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-03-25 10:21:39 +01:00
Nikolay Sivov 65e369444d mfplat: Add tracing for media formats guids.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-03-25 10:21:39 +01:00
Nikolay Sivov 1d6634b2b2 mfplat: Add more attributes guids.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-03-25 10:13:55 +01:00
Nikolay Sivov fe66e0f766 mfplat: Create dummy descriptor using public API.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-03-25 10:13:53 +01:00
Nikolay Sivov e079edf8a8 mfplat: Add IMFGetService stub for file-based bytestream.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-03-22 09:20:57 +01:00
Nikolay Sivov 12812772a0 mfplat: Set default attributes for file-based bytestream object.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-03-22 09:20:55 +01:00
Nikolay Sivov e3c76d773b mfplat: Set capabilities flags for IStream-based bytestream object.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-03-22 09:20:53 +01:00
Nikolay Sivov e8c4c1db0c mfplat: Implement IStream-based bytestream object.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-03-22 09:20:47 +01:00
Nikolay Sivov 16477a0922 mfplat: Implement media type wrapping.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-03-22 09:20:40 +01:00
Nikolay Sivov 52cca8e8e3 mfplat: Remove typedef for attributes structure.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-03-22 09:20:30 +01:00
Nikolay Sivov 71bf156e1b mfplat: Print warning instead of fixme for unsupported interfaces in attributes object.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-03-22 09:20:28 +01:00
Nikolay Sivov 6dc7503b23 mfplat: Implement attributes deserialization.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-03-21 19:32:17 +01:00
Nikolay Sivov 7dfc5db155 mfplat: Implement attributes serialization.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-03-21 19:32:17 +01:00
Nikolay Sivov f3a72d4e91 mfplat: Implement MFCompareFullToPartialMediaType().
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-03-21 19:32:17 +01:00
Nikolay Sivov abcea9a35a mfplat: Implement MFCalculateImageSize().
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-03-21 19:32:16 +01:00
Nikolay Sivov 9caaebf2fc mfplat: Forward CopyAllItems() for presentation descriptor.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-03-21 19:32:16 +01:00
Nikolay Sivov 762a9ae4c7 mfplat: Implement GetMajorType() for stream descriptor.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-03-21 19:32:16 +01:00
Nikolay Sivov d3e819a5a7 mfplat/tests: Add stream descriptor tests.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-03-21 19:32:16 +01:00
Nikolay Sivov 2825103770 mfplat: Add event attributes guids.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-03-20 08:58:02 +01:00
Nikolay Sivov 999abe0f85 mfplat: Add media source attribute guids.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-03-20 08:57:48 +01:00
Nikolay Sivov dd67345ea4 mfplat/tests: Skip more tests on older systems.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-03-18 16:52:56 +01:00
Nikolay Sivov 1fb58907c0 mfplat: Add some sample attributes guids.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-03-18 16:52:48 +01:00
Nikolay Sivov 23237173b9 mfplat: Add sample timestamp and duration methods.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-03-18 16:52:45 +01:00
Nikolay Sivov 98500d8dbb mfplat: Take a shortcut when comparing attribute with mismatching type.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-03-18 16:52:41 +01:00
Nikolay Sivov ced0a1de7e mfplat: Get rid of variant coercion calls.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-03-18 16:52:37 +01:00
Nikolay Sivov 780378b203 mfplat: Implement Compare() for attributes.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-03-18 16:52:35 +01:00
Francois Gouget 82060ae8df mfplat/tests: A wording tweak in a win_skip() messages.
Signed-off-by: Francois Gouget <fgouget@free.fr>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-03-18 10:11:59 +01:00
Jactry Zeng c9027a8d03 mfplat: Implement CompareItem() for attributes.
Signed-off-by: Jactry Zeng <jzeng@codeweavers.com>
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-03-15 20:02:58 +01:00
Jactry Zeng 706d4d8eb4 mfplat: Add support for blob attribute values.
Signed-off-by: Jactry Zeng <jzeng@codeweavers.com>
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-03-15 20:02:55 +01:00
Jactry Zeng 2035055a5a mfplat: Add support for GUID attributes.
Signed-off-by: Jactry Zeng <jzeng@codeweavers.com>
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-03-15 20:02:53 +01:00
Jactry Zeng 462d7ed1b6 mfplat: Implement IMFAttributes::CopyAllItems().
Signed-off-by: Jactry Zeng <jzeng@codeweavers.com>
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-03-15 20:02:50 +01:00
Nikolay Sivov 3bbbb876fa mfplat: Implement LockStore()/UnlockStore().
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-03-15 20:02:48 +01:00
Nikolay Sivov 0f36ace004 mfplat: Add descriptor attributes GUIDs.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-03-15 20:02:45 +01:00
Jactry Zeng 20ab5230f6 mfplat: Implement IMFAttributes::DeleteAllItems().
Signed-off-by: Jactry Zeng <jzeng@codeweavers.com>
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-03-14 15:58:02 +01:00
Jactry Zeng 57ac2649f8 mfplat: Implement IMFAttributes::{SetUnknown, GetUnknown}.
Signed-off-by: Jactry Zeng <jzeng@codeweavers.com>
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-03-14 15:58:02 +01:00
Jactry Zeng e00bfc4c91 mfplat: Add support for string attributes.
Signed-off-by: Jactry Zeng <jzeng@codeweavers.com>
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-03-14 15:58:02 +01:00
Jactry Zeng 535ec306a4 mfplat: Implement IMFAttributes::{SetDouble, GetDouble}.
Signed-off-by: Jactry Zeng <jzeng@codeweavers.com>
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-03-14 15:58:02 +01:00
Jactry Zeng e8a9cd2e06 mfplat: Implement IMFAttributes::GetCount().
Signed-off-by: Jactry Zeng <jzeng@codeweavers.com>
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-03-14 15:58:02 +01:00
Jactry Zeng c127fab80e mfplat: Add support for integer attribute values.
Signed-off-by: Jactry Zeng <jzeng@codeweavers.com>
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-03-14 15:58:02 +01:00
Jactry Zeng a80b603c03 mfplat: Implement IMFAttributes::GetItemByIndex().
Signed-off-by: Jactry Zeng <jzeng@codeweavers.com>
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-03-14 15:58:02 +01:00
Jactry Zeng 50a57f8613 mfplat: Implement IMFAttributes::DeleteItem().
Signed-off-by: Jactry Zeng <jzeng@codeweavers.com>
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-03-14 15:58:01 +01:00
Jactry Zeng 7edec69cd7 mfplat: Implement IMFAttributes::{SetItem,GetItem}.
Signed-off-by: Jactry Zeng <jzeng@codeweavers.com>
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-03-14 15:58:01 +01:00
Jactry Zeng fc4ebe1590 mfplat: Initialize attribute array.
Signed-off-by: Jactry Zeng <jzeng@codeweavers.com>
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-03-14 15:58:01 +01:00
Nikolay Sivov c0e458eebb mfplat: Add a helper to have readable attribute names in traces.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-03-14 15:58:01 +01:00
Nikolay Sivov 78936b9285 mfplat: Forward CopyAllItems() for stream descriptor.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-03-13 11:00:17 +01:00
Nikolay Sivov e8df24941d mfplat: Forward CopyAllItems() for events.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-03-13 11:00:13 +01:00
Nikolay Sivov e3b048c162 mfplat: Add support for work item priority.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-03-13 11:00:00 +01:00
Nikolay Sivov 1654116dd2 mfplat: Use newer threadpool environment structure.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-03-13 10:59:55 +01:00
Francois Gouget 1b9573c84e mfplat/tests: Fix the trailing '\n's in ok() messages.
Signed-off-by: Francois Gouget <fgouget@free.fr>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-03-12 20:32:47 +01:00
Nikolay Sivov 61f76829f4 mfplat: Implement equality test for media types.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-03-12 10:53:40 +01:00
Nikolay Sivov 922698a9e0 mfplat: Implement async object creation from URL.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-03-12 10:53:40 +01:00
Nikolay Sivov 7a025d8318 mfplat: Implement CreateObjectFromURL().
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-03-12 10:53:40 +01:00
Nikolay Sivov d34d43bdf4 mfplat: Implement async method of creating objects from bytestreams.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-03-11 17:54:23 +01:00
Nikolay Sivov 577974871a mfplat: Implement CreateObjectFromByteStream().
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-03-11 17:54:21 +01:00
Nikolay Sivov c3c503d4c5 mfplat: Link to mfuuid.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-03-11 17:54:17 +01:00
Nikolay Sivov 14e63ff912 mfplat: Free event value on release.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-03-11 17:53:55 +01:00
Nikolay Sivov 8098edb6c6 mfplat: Close event handle on async result release.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-03-11 17:53:51 +01:00
Nikolay Sivov f78bd03a75 mfplat/tests: Remove a test crashing on XP/Vista.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-03-11 17:53:34 +01:00
Jactry Zeng a1e117b79e mfplat: Unlock section after finishing.
Signed-off-by: Jactry Zeng <jzeng@codeweavers.com>
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-03-08 10:33:45 +01:00
Nikolay Sivov f91cadcd94 mfplat: Set sample flags.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-03-08 10:33:45 +01:00
Nikolay Sivov f9bb5f4a57 mfplat: Forward CopyAllItems() for samples.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-03-08 10:33:45 +01:00
Nikolay Sivov 0b2db93910 mfplat: Forward CopyAllItems() for media type as well.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-03-08 10:33:45 +01:00
Nikolay Sivov b80ace81fc mfplat: Forward media type methods to attribute storage.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-03-08 10:33:45 +01:00
Nikolay Sivov 2ed529ca6d include: Define MFT category GUIDs.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-03-06 18:28:20 +01:00
Nikolay Sivov 3865a8c9d5 mfplat: Implement time source state changes.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-03-06 18:28:20 +01:00
Nikolay Sivov 58a93786e2 mfplat: Add a stub for system time source.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-03-06 18:28:20 +01:00
Nikolay Sivov 3fb0b48e1e mfplat: Fix a leak on error path (Coverity).
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-03-06 18:28:20 +01:00
Nikolay Sivov cb4d45adfd mfplat: Fix potential invalid memory access (Coverity).
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-03-06 18:28:20 +01:00
Nikolay Sivov 851113b06f mfplat: Implement buffer collection for sample.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-03-05 20:41:02 +01:00
Nikolay Sivov 7343fc9e69 mfplat: Move sample implementation together with buffers.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-03-05 20:41:02 +01:00
Nikolay Sivov 4fd32ad054 mfplat: Move buffer implementation to separate file.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-03-05 20:41:02 +01:00
Nikolay Sivov 8de65329b8 mfplat: Implement MFCreatePresentationDescriptor().
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-03-05 20:41:02 +01:00
Nikolay Sivov bc55b6fdaf mfplat: Implement media type handler functionality for stream descriptor.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-03-04 16:47:21 +01:00
Nikolay Sivov 0eeb409432 mfplat: Keep stream descriptor identifier.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-03-04 16:47:19 +01:00
Nikolay Sivov d5634ac150 mfplat: Return stub interface for stream descriptor type handler.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-03-04 16:47:17 +01:00
Nikolay Sivov 76a6f1aa94 mfplat: Move stream descriptor implementation to separate file.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-03-04 16:47:15 +01:00
Nikolay Sivov f4e849468e mfplat: Move media type object code to separate file.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-03-04 16:47:12 +01:00
Nikolay Sivov eff5a7aebc mfplat: Implement media event queue.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-03-04 16:46:43 +01:00
Nikolay Sivov b22b28e231 mfplat: Implement periodic callbacks.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-03-04 16:46:31 +01:00
Jactry Zeng e09bc9a0b1 mfplat: Add MFCreateMFByteStreamOnStreamEx() stub.
Signed-off-by: Jactry Zeng <jzeng@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-03-01 17:48:26 +01:00
Nikolay Sivov 5e1b3b2f5a mfplat: Fail to create user queues on uninitialized platform.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-03-01 17:48:26 +01:00
Nikolay Sivov 48b713efab mfplat: Cleanup user queues.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-03-01 17:48:26 +01:00
Nikolay Sivov a23e658a01 mfplat: Add support for scheduled items.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-03-01 17:48:26 +01:00
Nikolay Sivov 1a53a655d1 mfplat: Implement waiting items with ability to cancel.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-03-01 17:48:26 +01:00
Nikolay Sivov 859f9bacc2 mfplat/tests: Add some tests for serial queues.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-03-01 17:48:26 +01:00
Nikolay Sivov c0759107e7 mfplat: Add basic support for submitting work items.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-03-01 17:48:26 +01:00
Nikolay Sivov 3a433af207 mfplat: Add a helper to create async result objects.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-03-01 17:48:26 +01:00
Nikolay Sivov 493c2c323e mfplat: Add MFAllocateWorkQueueEx().
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-03-01 17:48:26 +01:00
Nikolay Sivov 7a120b0b2c mfplat: Initialize system queues on startup.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-03-01 17:48:26 +01:00
Nikolay Sivov f42b3a1f10 mfplat/tests: Add a test for deferred item posting.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-03-01 17:48:26 +01:00
Gijs Vermeulen 40af5dfdd3 mfplat: Implement MFHeap[Alloc|Free].
Signed-off-by: Gijs Vermeulen <gijsvrm@gmail.com>
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-02-22 12:30:07 +01:00
Nikolay Sivov a606abf245 mfplat: Implement MFCreateCollection().
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-02-22 12:29:59 +01:00
Nikolay Sivov b4c5dd49a3 mfplat: Implement MFInvokeCallback().
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-02-21 16:06:16 +01:00
Nikolay Sivov 9fdb1fd96e mfplat: Add trivial implementation of MFCopyImage().
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-02-19 20:39:31 +01:00
Nikolay Sivov 1fb58ab2fb mfplat: Add basic support for user queue object lifetime management.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-02-19 20:39:26 +01:00
Nikolay Sivov 3d463b8ff5 mfplat: Hold platform lock for async results lifetime.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-02-19 20:39:19 +01:00
Nikolay Sivov e87faa1ad2 mfplat/tests: Remove initialization from tests that don't need it.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-02-19 20:39:12 +01:00
Nikolay Sivov 9a6fcdf42f mfplat: Implement MFCreateAsyncResult().
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-02-18 16:03:07 +01:00
Alistair Leslie-Hughes 7907ccfdcb mfplat: Implement MFGetSystemTime.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=46300
Signed-off-by: Alistair Leslie-Hughes <leslie_alistair@hotmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-02-13 21:17:27 +01:00
Józef Kucia 7176f9b2d2 mfplat: Fix memory allocation in mfsourceresolver_CreateObjectFromByteStream() (Coverity).
Signed-off-by: Józef Kucia <jkucia@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-11-30 19:36:51 +01:00
Sven Baars 7a3f08c7a3 mfplat: Improve CreatePresentationDescriptor stub in IMFMediaSource.
Signed-off-by: Sven Baars <sven.wine@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-11-26 16:41:47 +01:00
Sven Baars 11011a6a38 mfplat: Improve CreateObjectFromByteStream stub in IMFSourceResolver.
Signed-off-by: Sven Baars <sven.wine@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-11-23 20:17:45 +01:00
Sven Baars d7b05b219d mfplat: Implement MFCreateMediaEvent.
Signed-off-by: Sven Baars <sven.wine@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-11-15 13:44:24 +01:00
Alistair Leslie-Hughes b6d8ea6253 mfplat/tests: Use correct interface macro.
Signed-off-by: Alistair Leslie-Hughes <leslie_alistair@hotmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-11-08 07:59:05 +01:00
Sven Baars 5bd465acd9 mfplat: Add MFCreateFile stub.
Signed-off-by: Sven Baars <sven.wine@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-11-06 10:46:20 +01:00
Sven Baars b8b4c041ea mfplat: Add IMFAttributes interface to IMFByteStream.
Signed-off-by: Sven Baars <sven.wine@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-11-06 10:46:16 +01:00
Sven Baars ae220de098 mfplat: Move IMFAttributes interface up to avoid forward declarations.
Signed-off-by: Sven Baars <sven.wine@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-11-06 10:46:15 +01:00