Nikolay Sivov
d1662e4beb
mf/session: Expose rate control interfaces.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-11-09 11:16:39 +01:00
Nikolay Sivov
dab54bd849
mf/tests: Add some more tests for session rate control.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-11-09 11:16:38 +01:00
Nikolay Sivov
f2bb763c9c
mf/session: Get rid of some interface pointers casts.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-11-08 10:49:26 +01:00
Nikolay Sivov
d8bbbfd589
mf/session: Implement IsRateSupported().
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-11-08 10:49:26 +01:00
Andrew Eikum
43993feb2c
mf/session: Forward MR_STREAM_VOLUME_SERVICE requests to SAR node.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-10-28 17:51:53 +02:00
Alexandre Julliard
088a787a2c
makefiles: Make -mno-cygwin the default.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-09-20 22:45:48 +02:00
Nikolay Sivov
b14ba22a2c
mf/evr: Remove duplicated check in GetStreamSinkCount() (Coverity).
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-09-16 22:22:44 +02:00
Francois Gouget
bc20705c29
mf: Remove WINAPI on static functions where not needed.
...
Signed-off-by: Francois Gouget <fgouget@free.fr>
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-09-03 21:43:03 +02:00
Michael Stefaniuc
3fa19c8c75
mf/tests: Avoid cast from COM object to interface.
...
Signed-off-by: Michael Stefaniuc <mstefani@winehq.org>
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-08-26 10:39:50 +02:00
Nikolay Sivov
d3b9ff2efd
mf/tests: Add some tests for EVR stream services.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-08-02 22:57:38 +02:00
Nikolay Sivov
b3e321dfd5
mf/session: Fail start requests when no topology was set.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-07-21 17:44:34 +02:00
Nikolay Sivov
10ba5a90fc
mf/session: Add a helper to send events while completing commands.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-07-21 17:44:34 +02:00
Nikolay Sivov
64e1e4d62d
mf/session: Use better failure code for rendering node service requests.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-07-19 12:23:13 +02:00
Nikolay Sivov
8b6f276290
mf/session: Forward MR_POLICY_VOLUME_SERVICE service requests to the SAR node.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-07-19 12:23:11 +02:00
Nikolay Sivov
1a4136a9bc
mf/evr: Query d3d device manager via MR_VIDEO_RENDER_SERVICE service.
...
Default presenter responds to MR_VIDEO_ACCELERATION_SERVICE as well, but we'll
have to be compatible to integrate with custom presenters.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-07-08 21:12:58 +02:00
Giovanni Mascellani
adffa11609
mf/sar: Allow requesting more than a sample per period.
...
The IAudioClient implementation from both Windows and winepulse.drv
never sets the event more than once per period, which is usually
around 10 ms long. Some codecs produce audio samples shorter than
10 ms, so it is critical that the SAR is able to process more than
a sample per period.
This is not currently the case: a new sample is requested only in
audio_renderer_render, which is executed (at most) once per period.
This results in the SAR not being able to keep up with the audio
client, and eventually underrunning.
With this patch the SAR keeps a count of how many frames are
currently queued, and a new sample is immediately requested if
the internal queue has less than a buffer worth of frames.
This patch fixes audio stuttering problems in the logo videos
of Borderlands 3, Deep Rock Galactic and Mutant Year Zero.
Signed-off-by: Giovanni Mascellani <gmascellani@codeweavers.com>
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-07-06 17:49:21 +02:00
Nikolay Sivov
396df44c7b
mf/session: Fix typo in a trace message.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-06-23 20:44:58 +02:00
Nikolay Sivov
7dba45f6ec
mf/session: Treat only started/paused/stopped as valid states for start command.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-06-23 15:14:43 +02:00
Nikolay Sivov
5eec2141dc
mf/session: Complete start command when called from invalid state.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-06-23 15:14:43 +02:00
Rémi Bernon
d78e5d999c
mf/session: Complete session_start command even if already started.
...
Seek is not implemented but not completing the command makes pending or
later queued commands to not be executed.
This partially fixes Guilty Gear Strive being stuck on character
selection screen.
Signed-off-by: Rémi Bernon <rbernon@codeweavers.com>
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-06-23 15:14:43 +02:00
Nikolay Sivov
04a26628d1
mf/session: Fix pause command handling from invalid states.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-06-23 15:14:43 +02:00
Nikolay Sivov
cba7616d1a
mf/session: Send failed event when clearing topologies from closed state.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-06-23 15:14:43 +02:00
Giovanni Mascellani
da171b8f90
mf/sar: Query for current padding before requesting sample buffer.
...
According to both MSDN and our impementation, GetBufferSize returns the
size of the buffer, but it doesn't guarantee that all of it is available.
In order to know how much of it is available, the caller must also call
GetCurrentPadding and subtract that number to the buffer size. Failing
to do so might result in GetBuffer returning an error.
Signed-off-by: Giovanni Mascellani <gmascellani@codeweavers.com>
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-06-22 17:57:47 +02:00
Nikolay Sivov
bab4f2939e
mf: Use CRT allocation functions.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-06-17 20:01:37 +02:00
Nikolay Sivov
09bb5d949f
mf/session: Reset topology status back to READY when stopped.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-06-15 20:42:25 +02:00
Nikolay Sivov
f0ebd66189
mf/session: Reset per-node end of stream flags when stopped.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-06-15 20:42:25 +02:00
Giovanni Mascellani
6a68e345f8
mf/session: Reset END_OF_PRESENTATION flags when stopped.
...
Signed-off-by: Giovanni Mascellani <gmascellani@codeweavers.com>
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-06-15 20:42:25 +02:00
Nikolay Sivov
0b774df387
mf: Move presentation clock implementation to a separate file.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-06-15 20:42:25 +02:00
Giovanni Mascellani
bcd2b99d95
mf/session: Fix computing fastest and slowest presentation rates.
...
Signed-off-by: Giovanni Mascellani <gmascellani@codeweavers.com>
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-06-08 22:28:44 +02:00
Giovanni Mascellani
6ac1cd51bd
mf/samplegrabber: Handle paused state.
...
The following behaviors from Windows are implemented:
* Transitions from STOPPED to PAUSED are forbidden;
* Sample requests are only emitted for transitions from STOPPED to
RUNNING (i.e., not when transitioning from PAUSED);
* Transition events are emitted again when transitioning from a
state to the same state, except when such state is PAUSED.
Signed-off-by: Giovanni Mascellani <gmascellani@codeweavers.com>
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-06-03 17:42:19 +02:00
Nikolay Sivov
33ea3fc806
mf/topology: Implement MF_CONNECT_RESOLVE_INDEPENDENT_OUTPUTTYPES connection method.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-05-31 17:53:51 +02:00
Nikolay Sivov
20a1eb3b25
mf/session: Do not drop pending commands when clearing current presentation.
...
Calling Start() short after SetTopology() has a good chance of getting lost,
because clearing logic will drop all pending commands. This is easy to reproduce
with IMFPMediaPlayer, which works reliably on Windows.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-05-28 21:53:07 +02:00
Nikolay Sivov
7d51f493b8
mf/evr: Implement Flush() for streams.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-05-07 22:22:49 +02:00
Nikolay Sivov
4992fddc00
mf/evr: Post sink marker events.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-05-06 18:53:48 +02:00
Nikolay Sivov
9d307bb3c2
mf/evr: Pass stream start/end messages to the mixer.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-05-06 18:53:48 +02:00
Alexandre Julliard
5d82baf974
winecrt0: Add a default implementation DllRegisterServer()/DllUnregisterServer().
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-04-30 22:59:50 +02:00
Alexandre Julliard
bd6b53740c
winecrt0: Add a default implementation for DllCanUnloadNow().
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-04-30 22:59:50 +02:00
Nikolay Sivov
51a0cdf52d
mf/evr: Add slowest/fastest rate support methods.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-04-26 12:20:47 +02:00
Nikolay Sivov
71f8e0d328
mf/evr: Add IMFRateSupport stub.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-04-26 12:20:46 +02:00
Nikolay Sivov
2a6f0a4093
mf/evr: Handle mixer sample requests during sink state transitions.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-04-26 12:20:44 +02:00
Nikolay Sivov
b0118c7c7d
mf/evr: Return current device manager as a service.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-04-26 12:20:42 +02:00
Nikolay Sivov
f1fd0b46f9
mf/tests: Add some tests for EVR sink services.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-04-20 21:07:10 +02:00
Nikolay Sivov
0dbbe8da25
mf/evr: Set initial output window size for the presenter.
...
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
0e43ee2746
mf/evr: Return current clock for MR_VIDEO_RENDER_SERVICE requests.
...
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
55110df7eb
mf/evr: Reinitialize presenter on clock change.
...
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
079c51f692
mf/tests: Fix mediatype instance leak (Coverity).
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-04-12 19:35:11 +02:00
Nikolay Sivov
662095c6b3
mf/session: Forward more events to the application.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-04-12 19:34:35 +02:00
Nikolay Sivov
6ff7575ae8
mf/session: Forward MEReconnect* events to the application.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-04-12 19:34:33 +02:00
Nikolay Sivov
a2728cdece
mf/session: Handle shutdown state on GetService().
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-04-12 19:34:31 +02:00
Nikolay Sivov
aaf520cf5e
mf/tests: Add some SAR supported interfaces checks.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-04-12 19:34:28 +02:00
Nikolay Sivov
b75301b471
mf/topology: Copy input topology attributes on Load().
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-04-12 19:34:24 +02:00
Nikolay Sivov
c3c0e2a440
mf: Add MFRequireProtectedEnvironment().
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-04-05 15:07:01 +02:00
Derek Lesho
706fd3dcce
mf/session: Prefer transform-provided sample path.
...
Signed-off-by: Derek Lesho <dlesho@codeweavers.com>
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-04-01 18:34:06 +02:00
Nikolay Sivov
4634fd4ccb
mf/session: Handle MF_TOPONODE_DISABLE_PREROLL on sink nodes.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-03-29 09:26:28 +02:00
Nikolay Sivov
ec5bd49bf8
mf/session: Consider audio block alignment when creating output buffers for transforms.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-03-19 11:06:35 +01:00
Alexandre Julliard
93e23c5d40
mf: Use --prefer_native instead of DLL_WINE_PREATTACH.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-03-02 10:54:42 +01:00
Nikolay Sivov
b9ceaa6fed
mf/tests: Skip all tests on Vista.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-02-23 15:48:13 +01:00
Nikolay Sivov
1d1665efb3
mf/tests: Skip some tests on missing function.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-02-22 18:40:27 +01:00
Nikolay Sivov
34dbb2c859
mf/tests: Add a sample copier test for sample fields handling.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-02-19 22:54:09 +01:00
Nikolay Sivov
d24ce1374c
mf/topology: Improve error handling when connecting sample copier node (Coverity).
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-02-02 21:09:40 +01:00
Nikolay Sivov
10f9a88de0
mf: Add missing const for vtable structures.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-02-02 21:09:37 +01:00
Nikolay Sivov
e9248486d7
mf/tests: Add some more tests for video processor transform.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-02-01 17:10:24 +01:00
Nikolay Sivov
08088da4db
mf: Implement NotifyTopology() for the standard quality manager.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-02-01 17:10:17 +01:00
Nikolay Sivov
144dcc1a26
mf: Subscribe standard quality manager to clock state change events.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-02-01 17:10:14 +01:00
Nikolay Sivov
a30d43c60b
mf: Add shutdown state for the standard quality manager.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-02-01 17:10:09 +01:00
Nikolay Sivov
9446458f75
mf/session: Add a stub for IMFTopologyNodeAttributeEditor.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-01-29 13:47:16 +01:00
Nikolay Sivov
be3bab5efb
mf/tests: Use interface check helper more.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-01-29 13:46:36 +01:00
Nikolay Sivov
ee8e83bd45
mf/sar: Handle shutdown state in rendering callback.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-01-27 21:04:38 +01:00
Nikolay Sivov
02c859e435
mf/sar: Release pending items when audio client is released.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-01-27 21:04:36 +01:00
Nikolay Sivov
c55dbcdb9a
mf: Add a helper to get associated topology node object.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-01-15 16:14:39 +01:00
Nikolay Sivov
79776e4540
mf/topoloader: Add copier transform automatically for D3D-aware outputs.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-12-01 13:33:35 +01:00
Nikolay Sivov
deda3f8172
mf/topoloader: Set MF_TOPONODE_MEDIASTART for all source nodes.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-12-01 13:30:50 +01:00
Nikolay Sivov
902af3d17a
mf/topoloader: Make sure MF_TOPONODE_STREAMID is set for all outputs.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-12-01 13:30:48 +01:00
Nikolay Sivov
a50bd9d12f
mf/topoloader: Set MF_TOPONODE_TRANSFORM_OBJECTID for created transforms when CLSID is available.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-12-01 13:30:45 +01:00
Nikolay Sivov
a343a31710
mf/topoloader: Set MF_TOPONODE_DECODER for the decoders.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-12-01 13:30:43 +01:00
Derek Lesho
7c9e6a1c96
mf/topoloader: Unstub IMFTopologyLoader::Load.
...
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-11-30 19:01:56 +01:00
Derek Lesho
d61e9f7535
mf/topoloader: Implement source node to sink node branch resolver.
...
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-11-30 19:01:56 +01:00
Derek Lesho
eb28343c47
mf/topoloader: Move node connection responsibility to connection function.
...
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-11-30 19:01:56 +01:00
Derek Lesho
de8930ff52
mf/topoloader: Add partial topology resolution tests.
...
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-11-30 19:01:56 +01:00
Derek Lesho
133ba763e1
mf/samplegrabber: Evaluate type compatibility by comparison to the initial type.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-11-27 11:34:03 +01:00
Nikolay Sivov
9177e80de8
mf/session: Propagate allocator initialization failure code (Coverity).
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-11-26 23:25:24 +01:00
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
98f5112c1a
mf/session: Fix comment for the stop helper.
...
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
95f3bed326
mf/tests: Add another test for SAR time source.
...
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
73c3c8e031
mf/tests: Relax error code test for IsMediaTypeSupported() of SAR.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-11-23 21:05:04 +01:00
Nikolay Sivov
01563ba91a
mf/session: Shutdown current topology when clearing presentation.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-11-20 19:01:05 +01:00
Nikolay Sivov
39cac934ef
mf/session: Keep a reference to the original activation object when binding sink nodes.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-11-20 19:01:05 +01:00
Nikolay Sivov
b3461c4864
mf/session: Shutdown and release presentation clock on session shutdown.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-11-20 19:01:05 +01:00
Nikolay Sivov
07139b0be2
mf/samplegrabber: Implement IMFRateSupport.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-11-19 21:23:22 +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
Derek Lesho
86e6c0bc28
mf/session: Call session_command_complete after NotifyTopology command.
...
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-11-16 22:24:45 +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
71e13d44f9
mf/tests: Use a helper for supported intefaces checks.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-11-13 21:55:47 +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
e272e1a1c3
mf/session: Implement support for sinks that provide sample allocators.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-11-12 13:58:27 +01:00
Nikolay Sivov
9008b2c9b7
mf/session: Query and initialize sample allocators for capable output nodes.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-11-12 13:58:25 +01:00
Nikolay Sivov
3b230b58c8
mf/session: Forward MEQualityNotify event to the quality manager.
...
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
fa0beb858e
mf/session: Notify quality manager on input/output processing.
...
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
fd22009339
mf/session: Notify quality manager when setting new topology.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-11-11 21:14:58 +01:00