Commit Graph

1650 Commits

Author SHA1 Message Date
Zebediah Figura 11af7a02bf quartz/filtergraph: Get rid of tracing for outer IUnknown methods.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-05-18 12:09:20 +02:00
Zebediah Figura 06674113f9 quartz/tests: Relax an intermittently failing test.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-05-18 12:09:17 +02:00
Zebediah Figura 1e9d3ff322 quartz/tests: Fix a test failure in Windows 7 and higher.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-05-18 12:09:15 +02:00
Zebediah Figura 6b9bc1bff5 quartz/tests: Fix a crash in test_renderless_formats().
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-05-18 12:09:13 +02:00
Zebediah Figura 9e26bc8116 quartz/tests: Test enumerating DMOs.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-05-15 23:21:57 +02:00
Zebediah Figura d83167f75c quartz: Pass the matching filter count to IEnumRegFiltersImpl_Construct().
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-05-15 23:21:52 +02:00
Zebediah Figura 87e1df02af quartz/tests: Fix a leak in test_fm2_enummatchingfilters().
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-05-15 23:21:50 +02:00
Zebediah Figura e1c57c27cd quartz/tests: Test filter mapper interfaces.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-05-15 23:21:48 +02:00
Nikolay Sivov 033713b0ae quartz/dsoundrenderer: Remove dead method call.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-05-15 23:14:34 +02:00
Zebediah Figura 3145b67273 quartz/tests: Fix a crash in test_allocate_surface_helper().
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-05-14 20:59:36 +02:00
Zebediah Figura 040227e5b3 quartz/vmr9: Allocate the surface array in allocate_surfaces().
Avoid allocating it twice if we try multiple formats.

Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-05-13 08:50:15 +02:00
Zebediah Figura e15c13c592 quartz/vmr9: Set the stream count to 4 in IVMRWindowlessControl9::SetVideoClippingWindow().
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-05-13 08:50:15 +02:00
Zebediah Figura 5dbede68f8 quartz/vmr9: Add IVMRMixerControl9.
Needed by Sniper Fury and Modern Combat 5.

Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-05-13 08:50:15 +02:00
Zebediah Figura 2d77107823 quartz/vmr9: Implement IVMRFilterConfig9::GetNumberOfStreams().
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-05-13 08:50:15 +02:00
Zebediah Figura 14decee4ca quartz/vmr9: Partially implement IVMRFilterConfig9::SetNumberOfStreams().
Devil May Cry 3 expects this to succeed, although it only uses one stream.

Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-05-13 08:50:15 +02:00
Zebediah Figura 32be179a96 quartz/vmr9: Check for D3DDEVCAPS2_CAN_STRETCHRECT_FROM_TEXTURES.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-05-12 23:07:44 +02:00
Zebediah Figura fa32c8e36d quartz/vmr9: Destroy the window when set to windowless or renderless mode.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-05-12 23:07:44 +02:00
Zebediah Figura 3c0b0cc834 quartz/vmr9: Render to the clipping window in windowless mode.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-05-12 23:07:44 +02:00
Zebediah Figura 93913d3a44 quartz/vmr9: Rename hWndClippingWindow to clipping_window.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-05-12 23:07:44 +02:00
Zebediah Figura 6502ac993d quartz/vmr9: Remove a redundant check from VMR9_SurfaceAllocator_InitializeDevice().
This check is already made in allocate_surfaces().

Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-05-12 23:07:44 +02:00
Zebediah Figura 45789e00da quartz/vmr9: Allow the aspect ratio parameters to be NULL in IVMRWindowlessControl9::GetNativeVideoSize().
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-05-12 23:07:44 +02:00
Zebediah Figura c7c91b93ad quartz/vmr9: Perform image stretching in Present() instead of StretchRect().
This fixes resizing the window after connection time, especially when using a
custom destination rect.

Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-05-11 22:07:52 +02:00
Zebediah Figura b0c2e524dc quartz/vmr9: Get rid of VMR9_SurfaceAllocator_UpdateDeviceReset().
It's not clear that this ever did something useful, but at least since
d6a70366e this had the effect of always resetting immediately after creating
the device.

Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-05-11 22:07:52 +02:00
Zebediah Figura 848b85b657 quartz: Get rid of the texture drawing path.
StretchRect() should be good enough for presenting both kinds of surfaces.

Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-05-11 22:07:52 +02:00
Zebediah Figura 5f602b46f3 quartz: Set VMR9AllocationInfo dimension members to the video dimensions.
These will be identical to the source rect at connection time, but not
necessarily if we ever need to recreate the surfaces (due to a lost device, for
example), and we still want to use the source image dimensions in that case.

Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-05-11 22:07:52 +02:00
Zebediah Figura fd159a3563 quartz/tests: Add some tests for windowless video size.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-05-11 22:07:52 +02:00
Zebediah Figura 3464834443 quartz/tests: Fix a test failure on 32-bit Windows.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-05-11 22:07:52 +02:00
Zebediah Figura 79c78b7951 quartz/tests: Add tests for IBasicVideo.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-05-08 13:34:14 +02:00
Zebediah Figura 8f6d4b1c5f quartz: Implement IBasicVideo::IsUsingDefaultSource().
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-05-08 13:34:12 +02:00
Zebediah Figura 82420a8d3c quartz: Resize the destination rect only if we are using the default destination rect.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-05-08 13:34:10 +02:00
Zebediah Figura 013c024b2b quartz: Get rid of the resize callback.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-05-08 13:34:07 +02:00
Zebediah Figura 69011b3711 quartz: Get rid of the SetDefault*Rect callbacks.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-05-08 13:34:05 +02:00
Zebediah Figura 14b7035054 quartz: Merge the BaseControlVideo object into the video_window object.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-05-07 11:26:40 +02:00
Zebediah Figura 833829cb31 quartz: Move the source and destination rectangles to the BaseControlVideo structure.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-05-07 11:26:37 +02:00
Zebediah Figura 779edf4def quartz: Get rid of the IsDefault*Rect callbacks.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-05-07 11:26:34 +02:00
Zebediah Figura 1ba3f252b5 quartz: Retrieve the video format directly from the pin.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-05-07 11:26:32 +02:00
Zebediah Figura 855f17f349 quartz: Rename "baseControlWindow" to "window".
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-05-07 11:26:25 +02:00
Zebediah Figura d70d1cda38 quartz/vmr9: Resize the window in vmr_connect().
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-05-06 10:43:17 +02:00
Zebediah Figura 0f6d8846eb quartz/vmr9: Factor out get_bitmap_header().
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-05-06 10:43:14 +02:00
Zebediah Figura fb6ad569d7 quartz/videorenderer: Resize the window in video_renderer_connect().
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-05-06 10:43:07 +02:00
Zebediah Figura e5729cf8eb quartz/videorenderer: Set the source rect at connection time.
Filter state should not be modified in IPin::QueryAccept().

Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-05-06 10:43:02 +02:00
Zebediah Figura 665ac338ca quartz/videorenderer: Factor out get_bitmap_header().
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-05-06 10:42:55 +02:00
Zebediah Figura 913e6ef805 quartz/vmr9: Add a stub IVMRMixerBitmap9 interface.
Needed by Sniper Fury and Modern Combat 5.

Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-05-05 10:51:57 +02:00
Zebediah Figura e7ed2798e8 quartz/vmr9: Call IVMRSurfaceAllocator9::TerminateDevice() when destroying the filter.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-05-05 10:51:55 +02:00
Zebediah Figura 9181a12e62 quartz/vmr9: Track the IVMRSurfaceAllocatorNotify9 reference count separately.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-05-05 10:51:52 +02:00
Zebediah Figura 05adf7bed2 quartz/tests: Add tests for the separate reference count of IVMRSurfaceAllocatorNotify9.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-05-05 10:51:50 +02:00
Zebediah Figura 7da087b76a quartz/vmr9: Remove the "force" parameter of VMR9_maybe_init().
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-05-02 13:55:36 +02:00
Zebediah Figura 1cb4b642f3 quartz/vmr9: Do not call VMR9_maybe_init() in vmr_start_stream().
We have already connected if we got here, and we can only have failed to
allocate surfaces if we had no clipping window, which cannot have changed in the
meantime.

Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-05-02 13:55:33 +02:00
Zebediah Figura a54597fd78 quartz/vmr9: Forbid setting the video clipping window while connected.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-05-02 13:55:31 +02:00
Zebediah Figura f1de733a03 quartz/vmr9: Validate the window in IVMRWindowlessControl9::SetVideoClippingWindow().
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-05-02 13:55:29 +02:00