Commit graph

58 commits

Author SHA1 Message Date
Nikolay Sivov
315cf3b60f evr/mixer: Improve GetService() handling of unsupported interfaces/services.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-11-17 17:19:41 +01:00
Nikolay Sivov
8e82c72083 evr/mixer: Set timestamp and duration for output samples.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-11-17 17:19:39 +01:00
Nikolay Sivov
6ae872e855 evr/mixer: Fix output filling behaviour regarding sample properties.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-11-16 17:52:02 +01:00
Nikolay Sivov
8b9b16151d evr/mixer: Fix method function name for consistency.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-11-13 21:55:44 +01:00
Nikolay Sivov
409392dfb7 evr/mixer: Add partial implementation of sample processing.
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
292b54f3ae evr/mixer: Reuse full set of type attributes for output types.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-11-09 21:28:02 +01:00
Nikolay Sivov
21355680e5 evr/mixer: Add IMFClockStateSink stub.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-10-26 20:26:00 +01:00
Nikolay Sivov
b8507acf53 evr/mixer: Request more sample on successful ProcessOutput().
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-10-23 20:16:53 +02:00
Nikolay Sivov
2d87981637 evr/mixer: Send sample requests when switching to streaming mode.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-10-23 20:16:53 +02:00
Nikolay Sivov
8c4723c5bd evr/mixer: Only accept single output buffer in ProcessOutput().
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
775daad7ef evr/mixer: Fill output surfaces when not streaming.
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
d63ff3403b evr/mixer: Implement GetOutputStatus().
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
5496b88917 evr/mixer: Implement GetInputStatus().
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
14003b00f5 evr/mixer: Maintain streaming state flag.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-10-21 10:51:14 +02:00
Nikolay Sivov
e2a4b8a563 evr/mixer: Drop input samples on flush.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-10-21 10:51:13 +02:00
Nikolay Sivov
c1e57ea291 evr/mixer: Ignore draining command.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-10-21 10:51:11 +02:00
Nikolay Sivov
70399c4e4a evr/mixer: Create dxva processor when output type is set.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-10-21 10:51:09 +02:00
Nikolay Sivov
35663e6a7f evr/mixer: Keep dxva device handle around.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-10-21 10:51:07 +02:00
Nikolay Sivov
ab2a0d7f63 evr/mixer: Map render target type to video processor guid that supports it.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-10-19 22:18:19 +02:00
Nikolay Sivov
60bf1b2548 evr/mixer: Keep one input sample per stream.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-10-19 22:18:17 +02:00
Nikolay Sivov
db8f859114 evr: Partially implement MFCreateVideoSampleFromSurface().
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-10-14 21:33:17 +02:00
Nikolay Sivov
d6e5fa7bd3 evr/mixer: Keep original media type instances for inputs.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-10-13 18:18:57 +02:00
Nikolay Sivov
b8e003c0e0 evr/mixer: Implement SetOutputType().
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-10-12 18:44:17 +02:00
Nikolay Sivov
11594f563f evr/mixer: Use regular media type interface for the output stream.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-10-12 18:44:15 +02:00
Nikolay Sivov
7ab646ad48 evr/mixer: Use regular media type interface for input streams.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-10-12 18:44:11 +02:00
Nikolay Sivov
14d2b04478 evr/mixer: Add SetOutputBounds().
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-10-12 18:44:07 +02:00
Nikolay Sivov
24c9d77cee evr/mixer: Add support for MFT_SET_TYPE_TEST_ONLY for inputs.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-10-09 16:21:33 +02:00
Nikolay Sivov
9cb5077096 evr/mixer: Keep per-stream zorder configuration.
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
0b8b00216f evr/mixer: Keep per-stream output rectangles.
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
c303b08ba0 evr/mixer: Add IMFQualityAdvise stub.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-10-01 21:48:20 +02:00
Nikolay Sivov
5542942c8e evr/mixer: Store input type attributes.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-10-01 21:48:20 +02:00
Nikolay Sivov
305aaec877 evr/mixer: Fix error handling in output types collection helper.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-09-18 22:07:58 +02:00
Nikolay Sivov
deac29d411 evr/mixer: Handle uninitialized input case in GetOutputAvailableType().
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-09-17 20:54:16 +02:00
Nikolay Sivov
23a879ec0e evr/mixer: Add another set of attributes.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-09-09 20:30:31 +02:00
Nikolay Sivov
8827eb6a83 evr/mixer: Return initial mixing preferences.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-09-08 22:30:44 +02:00
Nikolay Sivov
cc66d5de6a evr/mixer: Use same max input count symbol for GetStreamLimits().
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-09-07 21:07:34 +02:00
Nikolay Sivov
f949087624 evr: Create and initialize mixer transform attributes.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-09-04 21:16:49 +02:00
Gijs Vermeulen
7c229f647b evr: Fix typo in video_mixer_init_dxva_videodesc() (Coverity).
Signed-off-by: Gijs Vermeulen <gijsvrm@gmail.com>
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-08-19 10:29:18 +02:00
Nikolay Sivov
cdf8118ab3 evr/mixer: Request EVR event sink.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-07-09 17:41:25 +02:00
Nikolay Sivov
52f8191b93 evr: Respond to IMFVideoMixerControl in mixer's GetService().
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-07-08 21:06:10 +02:00
Nikolay Sivov
1caf8ade07 evr: Add aggregation support for default mixer object.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-07-01 20:33:07 +02:00
Nikolay Sivov
7a2dc025a3 evr: Store background color property for the mixer.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-06-29 21:07:43 +02:00
Nikolay Sivov
43eebcd3e6 evr: Add input type validation through dxva.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-06-29 21:07:43 +02:00
Nikolay Sivov
881336569c evr: Add IMFVideoProcessor stub.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-06-29 21:07:43 +02:00
Nikolay Sivov
9341252535 evr: Forward some known interface queries for MR_VIDEO_MIXER_SERVICE.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-06-26 20:59:17 +02:00
Nikolay Sivov
cd1cf07c80 evr: Add IMFVideoPositionMapper stub.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-06-25 23:08:30 +02:00
Nikolay Sivov
a9431eb0a2 evr: Add IMFVideoMixerBitmap stub.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-06-25 23:08:30 +02:00
Nikolay Sivov
e4791f6f9b evr: Add IMFGetService stub for the mixer.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-06-25 23:08:30 +02:00
Nikolay Sivov
6ea77ccfeb evr: Implement input type validation for the mixer.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-06-24 18:34:16 +02:00
Nikolay Sivov
3ba3d228fb evr: Implement MFT_MESSAGE_SET_D3D_MANAGER for default mixer.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-06-24 18:34:16 +02:00