Commit Graph

60 Commits

Author SHA1 Message Date
Nikolay Sivov e57e19c236 evr/presenter: Add missing break in get_FramesDrawn() (Coverity).
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-11-08 17:33:17 +01:00
Nikolay Sivov 7462d77f0b evr/presenter: Remove logic related to picture aspect ratio adjustment.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-11-08 17:33:14 +01:00
Nikolay Sivov e16c9a8604 evr/presenter: Add presented frames counter.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-11-03 21:06:48 +01:00
Nikolay Sivov 3c1a02eb97 evr/presenter: Fix a crash when releasing partially initialized object.
This happens when presenter is unable to create d3d device.

Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-10-29 15:20:15 +02:00
Nikolay Sivov c94f86dac3 evr/presenter: Handle shutdown state in more methods.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-10-28 17:52:11 +02:00
Nikolay Sivov 3de246a383 evr/presenter: Handle type invalidation calls without attached mixer.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-10-27 22:40:50 +02:00
Andrew Eikum 7980d049e8 evr/presenter: Invalidate media type on destination rectangle change.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-10-26 22:52:00 +02:00
Nikolay Sivov a1c057c9a7 evr/presenter: Remove scaling by zoom rectangle.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-10-26 22:52:00 +02:00
Nikolay Sivov 7c6c054427 evr: Trace normalized rectangle arguments.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-10-25 18:52:12 +02:00
Nikolay Sivov 595eded230 evr/presenter: Make sure to use positive stride for output mixer types.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-05-31 17:54:09 +02:00
Nikolay Sivov a00a09c470 evr/presenter: Use correct sample size attribute value when setting output mixer type.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-05-31 17:54:05 +02:00
Nikolay Sivov 2764d3e3ba evr/presenter: Add missing allocation error path.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-04-19 20:08:48 +02:00
Nikolay Sivov 79e2d5d350 evr/presenter: Fix sample queue loop present condition.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-04-19 20:08:48 +02:00
Nikolay Sivov 9973081f70 evr/presenter: Set sample size attributes when configuring mixer output.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-04-19 20:08:48 +02:00
Nikolay Sivov e10e4795d2 evr/presenter: Set MF_MT_MINIMUM_DISPLAY_APERTURE when configuring mixer output.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-04-19 20:08:48 +02:00
Nikolay Sivov 7705226802 evr/presenter: Set vertex processing flag for created d3d9 device.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-04-16 22:39:46 +02:00
Nikolay Sivov b7ac7ebbd6 evr/presenter: Add IMFQualityAdviseLimits stub.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-04-16 22:39:46 +02:00
Nikolay Sivov 195f735cbe evr: Use CRT functions for heap allocations.
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 c06e7ba729 evr/presenter: Add aspect ratio preserving scaling.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-11-24 20:20:33 +01:00
Nikolay Sivov 1f1842e027 evr/presenter: Set frame size and aperture attributes for mixer output type.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-11-24 20:20:31 +01:00
Nikolay Sivov 4b87269d00 evr/presenter: Implement sample presenting functionality.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-11-17 17:19:49 +01:00
Nikolay Sivov 81ba626545 evr/presenter: Add IDirect3DDeviceManager9 as a supported interface.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-11-17 17:19:45 +01:00
Nikolay Sivov fcb08263a5 evr/presenter: Fix error code for unsupported services.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-11-17 17:19:43 +01:00
Nikolay Sivov 26aae271bb evr/presenter: Expose all interfaces for MR_VIDEO_RENDER_SERVICE.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-11-16 17:52:10 +01:00
Nikolay Sivov b6c01ee2f8 evr/presenter: Add IMFQualityAdvise stub.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-11-13 21:55:39 +01:00
Nikolay Sivov 02d982de38 evr/presenter: Create a swapchain for given output window.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-11-13 21:55:37 +01:00
Nikolay Sivov e19938f9db evr/presenter: Add IQualProp stub.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-11-13 21:55:35 +01:00
Nikolay Sivov 03a10db214 evr/presenter: Add sample allocator notification callback.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-11-10 17:19:44 +01:00
Nikolay Sivov 38d75c4294 evr/presenter: Notify renderer host about mixer latency.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-11-10 17:19:44 +01:00
Nikolay Sivov e4ec280ec7 evr/presenter: Add a helpe for input processing.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-11-10 17:19:44 +01:00
Nikolay Sivov 603b00fe55 evr/presenter: Create sample allocator on object creation.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-11-10 17:19:44 +01:00
Nikolay Sivov c528ef47eb evr/presenter: Fix error handling on object creation.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-11-09 21:38:06 +01:00
Nikolay Sivov 813596f64c evr/presenter: Implement GetCurrentMediaType().
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-11-05 20:46:35 +01:00
Nikolay Sivov bf8a9613c5 evr/presenter: Create dedicated thread to handle presentation time.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-11-05 20:46:33 +01:00
Nikolay Sivov 30727decff evr/presenter: Set mixer output type on type negotiation.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-10-30 16:10:52 +01:00
Nikolay Sivov 529eb28488 evr/presenter: Add IMFVideoPositionMapper stub.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-10-22 22:02:02 +02:00
Nikolay Sivov 6163b3331f evr/presenter: Initialize aspect ratio mode.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-10-07 11:24:21 +02:00
Nikolay Sivov 59f3337a39 evr/presenter: Update cached native size on format negotiation.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-10-07 11:24:19 +02:00
Nikolay Sivov 95dcc559fc evr/presenter: Request original reference frame size when attaching the mixer.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-10-07 11:24:17 +02:00
Nikolay Sivov adc4dd674a evr/presenter: Validate passed handle on SetVideoWindow().
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-10-06 21:47:56 +02:00
Nikolay Sivov c01a9bae61 evr/presenter: Check for null argument in GetVideoWindow().
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-10-06 21:47:56 +02:00
Nikolay Sivov 9b1bd73188 evr/presenter: Return default flags for GetRenderingPrefs().
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-10-06 21:47:56 +02:00
Nikolay Sivov 94b2db85b6 evr/presenter: Set VIDEO_ZOOM_RECT on SetVideoPosition().
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-10-05 20:52:16 +02:00
Nikolay Sivov f859a4d048 evr/presenter: Check video window in SetVideoPosition().
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-10-05 20:52:12 +02:00
Nikolay Sivov a419b3eb79 evr/presenter: Better validate input rectangles in SetVideoPosition().
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-10-05 20:52:06 +02:00
Nikolay Sivov 93de829b13 evr/presenter: Validate mixer's device id.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-10-05 20:51:56 +02:00
Nikolay Sivov 82c64b9c95 evr/presenter: Add missing method stubs.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-10-02 19:01:43 +02:00
Nikolay Sivov 3981be4128 evr/presenter: Maintain video position rectangles.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-10-02 19:01:41 +02:00
Nikolay Sivov 77e04e221a evr/presenter: Keep video window handle.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-10-02 19:01:39 +02:00
Nikolay Sivov 69e777c804 evr/presenter: Expose IMFVideoDisplayControl as a service.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-10-02 19:01:37 +02:00