Commit Graph

350 Commits

Author SHA1 Message Date
Nikolay Sivov ce37290a5a mfplat: Release queue subscriber on queue release.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-04-14 17:04:35 +02:00
Rémi Bernon e9a29249b8 mfplat: Release queue subscriber on Shutdown.
Signed-off-by: Rémi Bernon <rbernon@codeweavers.com>
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-04-14 17:04:35 +02:00
Nikolay Sivov 3d6669cca3 mfplat: Use RTWQ* type in BeginGetEvent().
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-04-14 17:04:35 +02:00
Connor McAdams 55228c2b2c mfplat: Add corresponding 'IYUV' type alongside 'I420'.
Add references the 'IYUV' mediatype wherever 'I420' is referenced, as
they are identical.

Signed-off-by: Connor McAdams <cmcadams@codeweavers.com>
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-04-13 19:20:46 +02:00
Rémi Bernon 4904d90870 mfplat: Read queue subscriber within the critical section.
Signed-off-by: Rémi Bernon <rbernon@codeweavers.com>
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-04-12 21:10:04 +02:00
Nikolay Sivov 8511670b37 mfplat/tests: Add some more tests for IsCompressedFormat().
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-04-08 12:14:31 +02:00
Nikolay Sivov 0d383fe182 mfplat: Add Lock()/Unlock() for d3d11 buffers.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-03-30 12:26:37 +02:00
Giovanni Mascellani 767c200f47 winegstreamer: Implement a stub IMFRateControl for the media source.
Signed-off-by: Giovanni Mascellani <gmascellani@codeweavers.com>
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-03-26 16:48:30 +01:00
Giovanni Mascellani 6e4c7d4dba winegstreamer: Implement a stub IMFRateSupport for the media source.
Signed-off-by: Giovanni Mascellani <gmascellani@codeweavers.com>
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-03-26 16:48:30 +01:00
Giovanni Mascellani 0a0bf3cf21 winegstreamer: Implement a stub IMFGetService for the media source.
Signed-off-by: Giovanni Mascellani <gmascellani@codeweavers.com>
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-03-26 16:48:30 +01:00
Nikolay Sivov 49886f0312 mfplat/tests: Add media source rate service tests.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Giovanni Mascellani <gmascellani@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-03-26 16:48:30 +01:00
Nikolay Sivov d1d1e3f56f rtworkq: Partially implement shared queues.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-03-25 17:56:55 +01:00
Nikolay Sivov 78ab395594 mfplat: Implement Lock2DSize() for d3d11 buffers.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-03-25 12:48:48 +01:00
Nikolay Sivov 81c7633154 mfplat: Rename media buffer structure to better reflect its usage.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-03-25 12:48:48 +01:00
Nikolay Sivov ca52f07565 mfplat: Always initialize output arguments in GetScanline0AndPitch() for d3d9 buffers.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-03-25 12:48:48 +01:00
Nikolay Sivov 01059d5946 mfplat: Implement GetScanline0AndPitch() for d3d11 buffers.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-03-25 12:48:48 +01:00
Nikolay Sivov 9932a1943b mfplat: Implement Lock2D()/Unlock2D() for d3d11 buffer.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-03-25 12:48:48 +01:00
Nikolay Sivov cd397d1aa6 mfplat: Use texture pointer for DXGI surface buffer.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-03-24 20:43:49 +01:00
Nikolay Sivov 31b88c38b0 mfplat: Implement GetContiguousLength() for d3d9 buffer.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-03-24 20:43:49 +01:00
Nikolay Sivov 264732a8c6 mfplat: Implement GetContiguousLength() for d3d11 buffer.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-03-24 20:43:49 +01:00
Nikolay Sivov dae643d2ed mfplat: Fix SetCurrentLength() for d3d11 buffer.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-03-24 20:43:49 +01:00
Nikolay Sivov ff056c3f86 mfplat: Fix SetCurrentLength() for d3d9 buffer.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-03-24 20:43:49 +01:00
Nikolay Sivov e66bfc8351 mfplat/tests: Add a test for d3d11 texture buffer updates.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-03-24 20:43:49 +01:00
Nikolay Sivov 80b6555ed4 mfplat: Remove duplicated GUID entry from attribute tracing.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-03-23 20:58:39 +01:00
Jacek Caban ee587da9e5 include: Use nameless unions in dxva2api.idl helpers.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=50836
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-03-22 21:48:41 +01:00
Jacek Caban b39b9eea39 include: Don't default to WINE_NO_NAMELESS_EXTENSION for Wine build.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-03-22 21:48:38 +01:00
Alexandre Julliard de2a6d9b38 mfplat: Use --prefer-native instead of DLL_WINE_PREATTACH.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-02-23 10:06:28 +01:00
Nikolay Sivov fc3deb6cd8 mfplat: Unify trace format for device manager methods.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-02-15 21:11:28 +01:00
Nikolay Sivov 31202993a0 mfplat/allocator: Handle bind flags and usage attributes.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-02-15 21:11:28 +01:00
Nikolay Sivov 715c91cf78 mfplat: Handle tracked sample release condition separately from refcount update.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-02-15 16:20:42 +01:00
Nikolay Sivov 3cef5238bd mfplat: Fix use-after-free when releasing sample allocator.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-02-15 16:20:42 +01:00
Nikolay Sivov 14f6c09508 mfplat/allocator: Improve initialization handling.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-02-10 20:04:46 +01:00
Nikolay Sivov 9ec297e283 mfplat/tests: Fix a crash on Vista.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-02-04 15:41:02 +01:00
Nikolay Sivov d2a30424ef mfplat/allocator: Add support for MF_SA_BUFFERS_PER_SAMPLE.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-02-03 21:02:47 +01:00
Nikolay Sivov d100d92f93 mfplat/allocator: Keep a reference to initialization attributes.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-02-03 21:02:45 +01:00
Nikolay Sivov 467a96e9e5 mfplat/tests: Add some tests for sample allocator using D3D9 device.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-02-03 21:02:41 +01:00
Nikolay Sivov 0e7836c0ac mfplat/allocator: Add initial implementation of sample allocator.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-02-03 21:02:38 +01:00
Nikolay Sivov 3bf4896669 mfplat: Add a stub implementation of DXGI surface buffer.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-02-03 21:02:33 +01:00
Nikolay Sivov f920f633d7 mfplat/tests: Add a workaround for test failures on Windows 7 VMs.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-02-03 21:02:28 +01:00
Nikolay Sivov b9dd3272ff mfplat/tests: Switch to a different texture format to enable more tests on older versions.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-02-03 21:02:22 +01:00
Nikolay Sivov 5668c1ce5f mfplat: Added MFMapDX9FormatToDXGIFormat().
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-02-03 21:02:18 +01:00
Nikolay Sivov 50c66e0aec mfplat: Move sample implementation to a separate file.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-02-03 21:02:12 +01:00
Nikolay Sivov 5ae005a3fa mfplat/tests: Test texture parameters used by sample allocator.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-02-02 21:09:35 +01:00
Nikolay Sivov be5b34b1ee mfplat/tests: Add some tests for D3D11-aware sample allocator.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-02-02 21:09:35 +01:00
Nikolay Sivov 2e64af01dd mfplat: Add a few MF_SA_* attributes for tracing.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-02-01 17:10:21 +01:00
Nikolay Sivov f72f1ff952 mfplat/tests: Get source events in async mode.
Fixes test crashes on Windows 7, that happen on synchronous GetEvent().

Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-01-08 17:55:01 +01:00
Zebediah Figura 1452e47f0a mfplat: Zero-initialize the device manager object.
This fixes a crash for me when reallocating "handles", triggered by the mfplat tests.

Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-12-04 09:37:44 +01:00
Nikolay Sivov 940adfdd56 mfplat/mediatype: Do not add user data when converting from WAVE_FORMAT_EXTENSIBLE.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-12-01 13:30:41 +01:00
Nikolay Sivov c512748e22 mfplat: Remove duplicated attribute from tracing.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-12-01 13:30:39 +01:00
Nikolay Sivov 3a9ecc5878 mfplat/mediatype: Store extra format data as MF_MT_USER_DATA when initializing from WAVEFORMATEX.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-11-30 19:01:56 +01:00