Commit Graph

137 Commits

Author SHA1 Message Date
Nikolay Sivov 2062dd95d7 mf: Block samplegrabber stream event calls after stream is removed.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-03-11 15:56:11 +01:00
Nikolay Sivov 97f949b9c6 mf: Shutdown samplegrabber event queue on sink shutdown.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-03-11 15:56:08 +01:00
Nikolay Sivov 82eecc50b5 mf: Implement MFGetTopoNodeCurrentType().
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-03-10 20:05:37 +01:00
Nikolay Sivov d6e828d5f2 mf: Implement IsMediaTypeSupported() for simple type handler.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-03-10 20:05:37 +01:00
Nikolay Sivov 50af05674c mf: Partially implement sample copier transform.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-03-09 22:16:30 +01:00
Nikolay Sivov 044520a4f7 mf/tests: Fix a test failure on older versions.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-03-04 09:51:32 +01:00
Nikolay Sivov 18cf1debeb mf: Implement MFGetSupportedMimeTypes()/MFGetSupportedSchemes().
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-03-04 09:51:30 +01:00
Nikolay Sivov be08f2c203 mf: Match session state names with events.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-03-03 14:20:25 +01:00
Nikolay Sivov 186b6a6fa7 mf: Implement transition to closed state together with sink finalization.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-03-03 14:20:25 +01:00
Nikolay Sivov 23012b1304 mf: Correctly respond to start attempt from closed state.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-03-03 14:20:25 +01:00
Nikolay Sivov 15a9ab9409 mf: Handle shutdown state in GetFullTopology().
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-03-03 14:20:25 +01:00
Nikolay Sivov de95a03029 mf: Fix GetClock() for shutdown state.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-03-02 13:06:08 +01:00
Nikolay Sivov 5ec5eb0790 mf: Add a helper to check for session shutdown state.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-03-02 13:06:04 +01:00
Nikolay Sivov 0b4e460184 mf: Implement GetFullTopology().
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-03-02 13:05:56 +01:00
Nikolay Sivov ddfb56c0b7 mf: Implement Stop() command for media session.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-02-28 16:39:02 +01:00
Nikolay Sivov d4cc70e1b6 mf: Allow restarting from paused state.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-02-28 16:39:02 +01:00
Nikolay Sivov 43fd6bd94a mf: Implement Pause() command for media session.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-02-28 16:39:02 +01:00
Nikolay Sivov 74e7e45d9f mf: Track stream sinks state to maintain session state.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-02-28 16:39:02 +01:00
Nikolay Sivov 9122d73ccd mf: Implement two-step session transition to running state.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-02-28 16:39:02 +01:00
Nikolay Sivov 9eb7337a58 mf: Add support for MESessionCapabilitiesChanged event.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-02-28 16:39:02 +01:00
Nikolay Sivov c61219625c mf: Query for optional event generator for sinks.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-02-28 16:39:02 +01:00
Nikolay Sivov 4fc32ab657 mf: Keep a list of output streams.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-02-28 16:39:02 +01:00
Nikolay Sivov 5dc6db5fd3 mf: Use generic enum for object states.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-02-28 16:39:02 +01:00
Nikolay Sivov adb420ee0d mf: Use separate list for source streams.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-02-28 16:39:02 +01:00
Nikolay Sivov a93dde5ad8 mf: Create separate topology object and use it as current.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-02-28 16:39:02 +01:00
Nikolay Sivov 9d004b8466 mf: Subscribe for next pipeline object event after processing current one.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-02-28 16:39:02 +01:00
Nikolay Sivov f4280cc04d mf: Add support for returning slowest/fastest rates for session.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-02-28 16:39:02 +01:00
Nikolay Sivov f2465d92b8 mf/tests: Add some tests for SAR time source.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-02-26 22:33:25 +01:00
Nikolay Sivov 1e55b2c252 mf: Add MFCreateSimpleTypeHandler().
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-02-24 18:41:16 +01:00
Nikolay Sivov a6d048f633 mf: Request another sample from sample grabber in clock-ignoring mode.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-02-21 13:48:44 +01:00
Nikolay Sivov 431afba5cf mf: Shut down quality manager on session shutdown.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-02-21 13:48:44 +01:00
Nikolay Sivov f396d80df5 mf: Use more descriptive name for one of the impl_from_* helpers.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-02-20 16:16:53 +01:00
Nikolay Sivov 0eda16206a mf: Implement timer functionality for presentation clock.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-02-20 16:16:53 +01:00
Nikolay Sivov afe4b134cf mf: Simplify clock notification handling.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-01-27 14:42:29 +01:00
Nikolay Sivov fef1d403c5 mf: Add MFCreateVideoRendererActivate().
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-11-04 22:43:01 +01:00
Sven Baars 96062c4c79 mf: Leave instead of enter a critical section.
Signed-off-by: Sven Baars <sven.wine@gmail.com>
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-10-21 17:11:43 +02:00
Nikolay Sivov 5a919ad67c mf/tests: Add a test for SAR time source.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-10-08 15:31:09 +02:00
Nikolay Sivov d5b79e6a79 mf: Adjust sample grabber sink flags in rateless mode.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-10-08 15:31:07 +02:00
Nikolay Sivov c1c77f22bc mf: Copy preferred types when cloning nodes.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-10-08 15:31:05 +02:00
Nikolay Sivov 34c52b946a mf/tests: Use separate session instance for events tests.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-10-08 15:31:02 +02:00
Nikolay Sivov eeed0262e2 mf: Add IMFMediaSourceTopologyProvider for sequencer source stub.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-10-07 23:39:16 +02:00
Nikolay Sivov bc7ae4d83c mf: Clone node connections when cloning topology.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-10-07 23:39:13 +02:00
Nikolay Sivov 88c8578459 mf: Add RegisterMFTs() implementation.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-10-07 23:39:11 +02:00
Nikolay Sivov 7692394231 mf: Add IMFLocalMFTRegistration stub.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-10-07 23:39:05 +02:00
Nikolay Sivov 4e8d7ece69 mf: Return earlier for clock state change calls when time source is not set.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-10-04 22:11:20 +02:00
Nikolay Sivov 3bd1e1edf7 mf: Set presentation clock for sinks, subscribe to sink events.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-10-04 22:11:20 +02:00
Nikolay Sivov 01bab1876d mf: Send MF_TOPOSTATUS_STARTED_SOURCE status notification after all sources were started successfully.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-10-04 22:11:20 +02:00
Nikolay Sivov 82f03261b8 mf: Rearrange topology queueing logic to simplify status notifications.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-10-04 22:11:20 +02:00
Nikolay Sivov 7c5fcfffe7 mf: Unify trace formats for session methods.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-10-04 22:11:20 +02:00
Nikolay Sivov 3471b779a5 mf: Add async command for stopping the session.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-10-04 22:11:20 +02:00