Commit Graph

56 Commits

Author SHA1 Message Date
Nikolay Sivov d19467a8b3 mf/evr: Translate EC_DISPLAY_CHANGED notification to MEStreamSinkDeviceChanged events.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-11-23 21:05:05 +01:00
Nikolay Sivov 15346b36cc mf/evr: Derive stream attributes from mixer input attributes.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-11-18 20:28:05 +01:00
Nikolay Sivov a76a90e7d2 mf/evr: Add support for per-stream attributes.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-11-18 20:28:05 +01:00
Nikolay Sivov f3b0fc6ae0 mf/evr: Add IMFQualityAdvise stub.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-11-13 21:55:50 +01:00
Nikolay Sivov 176ca7b87b mf/evr: Set display window to the presenter if it was specified on sink creation.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-11-12 13:58:29 +01:00
Nikolay Sivov d2ce23f461 mf/evr: Handle user events from the presenter.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-11-11 21:14:58 +01:00
Nikolay Sivov d493ba166e mf/evr: Handle sample requests from the mixer.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-11-11 21:14:58 +01:00
Nikolay Sivov 8c9988d8d4 mf/evr: Accept samples when prerolling.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-11-09 21:28:00 +01:00
Nikolay Sivov 3641c80244 mf/evr: Notify presenter on new input.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-10-30 16:11:04 +01:00
Nikolay Sivov 41fe1ac058 mf/evr: Pass incoming samples to the mixer.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-10-30 16:11:01 +01:00
Biswapriyo Nath 8c51bcb8a1 mf/evr: Initialize variables which are checked conditionally.
Signed-off-by: Biswapriyo Nath <nathbappai@gmail.com>
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-10-27 20:39:05 +01:00
Nikolay Sivov 0ca0b5a5ef mf/evr: Implement OnClockSetRate().
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-10-26 20:26:04 +01:00
Nikolay Sivov 8680afcc06 mf/evr: Notify mixer and presenter on clock state changes.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-10-26 20:26:02 +01:00
Nikolay Sivov fe70e7beb5 mf/evr: Set the device manager for sample allocators.
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 b8d10aa46c mf/evr: Create sample allocators on demand.
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 5a68001d69 mf/evr: Implement stream state change events.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-10-16 22:01:04 +02:00
Nikolay Sivov 4e11368295 mf/evr: Implement NotifyPreroll().
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-10-16 22:01:01 +02:00
Nikolay Sivov bd86e93416 mf/evr: Add per-stream lock.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-10-16 22:00:59 +02:00
Nikolay Sivov 602a3085e3 mf/evr: Add default attributes on sink creation.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-10-15 20:19:21 +02:00
Nikolay Sivov f0c2b0d2fc mf/evr: Add attributes store for the sink.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-10-15 20:19:19 +02:00
Nikolay Sivov 421924ae0a mf/evr: Trigger media type negotiation through presenter for reference stream.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-10-13 18:18:54 +02:00
Nikolay Sivov 4bdaeaeb48 mf/evr: Do not use IMFVideoMediaType when setting mixer types.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-10-13 18:18:52 +02:00
Nikolay Sivov e2bcf44080 mf/evr: Implement IsMediaTypeSupported().
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 430c179fe8 mf/evr: Set stream media type to the mixer.
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 7b54ce1e07 mf/evr: Implement GetMediaTypeByIndex().
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 6408aa3ab7 mf/evr: Implement GetMediaTypeCount().
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 30e5405aca mf/evr: Create sample allocator for each stream.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-10-08 19:45:35 +02:00
Nikolay Sivov bcee4fbb94 mf/evr: Add IMFGetService stub for the streams.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-10-08 19:45:35 +02:00
Nikolay Sivov 29aecbef64 mf/evr: Provide device manager to the mixer.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-10-08 19:45:35 +02:00
Nikolay Sivov bdbae2ff5a mf/evr: Partially implement InitializeRenderer().
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-10-08 19:45:35 +02:00
Nikolay Sivov 6019f3c179 mf: Implement MFCreateVideoRenderer().
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-10-05 20:52:02 +02:00
Nikolay Sivov 3d8d05dbeb mf/evr: Add GetMajorType() for the stream sink.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-09-08 22:30:42 +02:00
Nikolay Sivov 3625f76250 mf/evr: Add a IMFMediaTypeHandler stub for input video streams.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-09-08 22:30:40 +02:00
Nikolay Sivov 98fab7e0ac mf/evr: Create stream sinks for default mixer inputs.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-09-08 22:30:37 +02:00
Nikolay Sivov 951240cb13 mf/evr: Add events support for video stream sinks.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-09-07 21:07:41 +02:00
Nikolay Sivov 629882e161 mf/evr: Implement stream sinks management functionality.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-09-07 21:07:39 +02:00
Nikolay Sivov c1c4856205 mf/evr: Actually use custom mixer when available.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-09-07 21:07:37 +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