Commit graph

249 commits

Author SHA1 Message Date
Nikolay Sivov
e308d81a61 mf/topoloader: Add a structure for iterative branch resolution.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-07-15 20:06:38 +02:00
Nikolay Sivov
16d44b61d1 mf/topoloader: Clone source nodes as a first layer of resulting topology.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-07-15 20:06:38 +02:00
Nikolay Sivov
8e343024b5 mf/topoloader: Switch to public interface for initial topology validation.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-07-15 20:06:38 +02:00
Nikolay Sivov
67a840dc5c mf/evr: Let mixer request necessary services.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-07-09 17:41:27 +02:00
Nikolay Sivov
34d4535292 mf/evr: Return mixer's transform for MR_VIDEO_MIXER_SERVICE requests.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-07-09 17:41:23 +02:00
Nikolay Sivov
03401edef8 mf/evr: Add support for LookupService() for MR_VIDEO_RENDER_SERVICE/IMediaEventSink.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-07-09 17:41:20 +02:00
Nikolay Sivov
1fc9827602 mf/evr: Add IMFTopologyServiceLookup stub.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-07-09 17:41:18 +02:00
Nikolay Sivov
747c8a38c4 mf/evr: Implement setting/getting sink clock.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-07-09 17:41:16 +02:00
Nikolay Sivov
65d3383be9 mf/evr: Do not set user context for activator object.
Window handle is passed as an attribute.

Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-07-09 17:41:12 +02:00
Nikolay Sivov
612f96ae27 mf/evr: Forward presenter service requests to the presenter.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-07-08 21:06:18 +02:00
Nikolay Sivov
58f7c7823b mf/evr: Forward mixer service requests to the mixer.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-07-08 21:06:16 +02:00
Nikolay Sivov
f557a5ee56 mf/evr: Add IMFGetService stub.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-07-08 21:06:06 +02:00
Nikolay Sivov
115ac28399 mf/evr: Add a stub for clock state sink.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-07-08 21:06:02 +02:00
Nikolay Sivov
68204a86a2 mf/evr: Add events queue support for the sink.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-07-07 19:24:27 +02:00
Nikolay Sivov
8ce49878bc mf/evr: Add IMFVideoRenderer stub.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-07-07 19:24:27 +02:00
Nikolay Sivov
835611ef3e mf/evr: Create presenter object on activation.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-07-07 19:24:27 +02:00
Nikolay Sivov
502341aa76 mf/evr: Create mixer object on activation.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-07-07 19:24:27 +02:00
Nikolay Sivov
3a973ca827 mf: Make freeing function optional for object activator.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-07-07 19:24:27 +02:00
Nikolay Sivov
ca27d5b4ec mf/evr: Track shutdown state.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-07-06 21:08:56 +02:00
Nikolay Sivov
1f2cf87def mf/evr: Return sink flags.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-07-06 21:08:56 +02:00
Nikolay Sivov
1cdcfaf688 mf/evr: Add IMFMediaSinkPreroll stub.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-07-06 21:08:56 +02:00
Nikolay Sivov
045a2ff430 mf: Add a sink stub for EVR.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-07-06 21:08:56 +02:00
Nikolay Sivov
0c8babdbcc mf: Set clipping window attribute for EVR activator.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-06-19 18:34:40 +02:00
Nikolay Sivov
68b5a0574c mf/session: Handle source buffering events.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-06-02 12:37:28 +02:00
Nikolay Sivov
af4d5c96d4 mf/topology: Remove logic already present in stream resize helper.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-05-22 16:52:02 +02:00
Nikolay Sivov
e196619f69 mf/topology: Setting tee node input type does not create input stream.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-05-22 16:51:59 +02:00
Nikolay Sivov
710cc2bcfb mf/samplegrabber: Test shutdown state under the lock for methods that modify item queue.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-05-15 17:39:35 +02:00
Nikolay Sivov
7a44796de4 mf/samplegrabber: Remove now unnecessary shutdown state check.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-05-15 17:39:33 +02:00
Nikolay Sivov
51dcfe4634 mf/samglegrabber: Dump pending items on shutdown.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-05-15 17:39:30 +02:00
Derek Lesho
b9ec2719fc mf/samplegrabber: Attach markers to previously queued sample, not the next.
Signed-off-by: Derek Lesho <dlesho@codeweavers.com>
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-05-15 17:39:27 +02:00
Nikolay Sivov
5f5549f154 mf/sar: Use MF_AUDIO_RENDERER_ATTRIBUTE_SESSION_ID to initialize audio client.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-05-14 20:59:36 +02:00
Nikolay Sivov
d3b3b2f4b9 mf/sar: Use MF_AUDIO_RENDERER_ATTRIBUTE_FLAGS attribute to configure audio client.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-05-14 20:59:36 +02:00
Nikolay Sivov
3000b6ea1a mf/sar: Implement stream flushing.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-05-13 22:07:32 +02:00
Nikolay Sivov
3d51816d1c mf/sar: Implement sample processing.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-05-13 22:07:32 +02:00
Nikolay Sivov
cbf156b780 mf: Preroll on sink start.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-05-13 22:07:32 +02:00
Nikolay Sivov
bd1bfd2c8a mf: Avoid unnecessary prerolling calls in SAR.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-05-13 22:07:32 +02:00
Nikolay Sivov
333e3a53d5 mf: Add flags field for additional SAR state.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-05-13 22:07:32 +02:00
Nikolay Sivov
fafe82c6cc mf: Add internal placeholder command for end-of-presentation.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-05-11 21:24:59 +02:00
Nikolay Sivov
40c60b7eb8 mf: Serialize session commands.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-05-11 21:24:59 +02:00
Nikolay Sivov
59ae49446e mf: Move locking from individual command helpers to command callback.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-05-11 21:24:59 +02:00
Nikolay Sivov
a9e2044a11 mf: Add a helper to set paused state for the session.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-05-11 21:24:59 +02:00
Nikolay Sivov
b68a765b95 mf: Add a helper to set closed state for the session.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-05-11 21:24:59 +02:00
Nikolay Sivov
741016dd32 mf: Add a helper for session commands without parameters.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-05-11 21:24:58 +02:00
Nikolay Sivov
35242aa417 mf: Fix timer instance leak on error path in SetTimer().
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-05-06 19:02:06 +02:00
Derek Lesho
1962a1f969 mf: Add missing ::Release of clock timer.
Signed-off-by: Derek Lesho <dlesho@codeweavers.com>
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-05-05 20:53:02 +02:00
Nikolay Sivov
17db99e318 mfuuid: Add file scheme handler CLSID to static library.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-04-27 11:41:42 +02:00
Nikolay Sivov
7948b25192 mf: Make sure to request another sample for sample grabber after current timed sample.
Based on patch by Derek Lesho.

Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-04-24 22:03:16 +02:00
Nikolay Sivov
a12b5fe084 mf: Handle null marker context for sample grabber stream.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-04-24 22:03:16 +02:00
Nikolay Sivov
3b6699822a mf: Add missing IMFMediaEventGenerator query support for SAR stream.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-04-23 15:12:21 +02:00
Nikolay Sivov
c17994c218 mf: Add missing IMFMediaEventGenerator query support for sample grabber stream.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-04-23 15:12:18 +02:00