Commit Graph

1853 Commits

Author SHA1 Message Date
Zebediah Figura 75b8dcd29f quartz/filtergraph: Implement the IDispatch methods for IMediaEvent.
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-02-02 10:55:13 +01:00
Zebediah Figura 8a2cdd7aa6 quartz/filtergraph: Implement the IDispatch methods for IMediaPosition.
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-02-02 10:55:13 +01:00
Zebediah Figura e68a1009ad quartz/filtergraph: Implement the IDispatch methods for IMediaControl.
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-02-02 10:55:13 +01:00
Zebediah Figura 3105c22d0d quartz/vmr9: Pass the already retrieved caps pointer to VMR9_SurfaceAllocator_SetAllocationSettings().
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-02-02 10:55:13 +01:00
Zebediah Figura 0e4620dcd4 quartz/vmr9: Get rid of a broken check for hardware acceleration support in VMR9DefaultAllocatorPresenterImpl_create().
It doesn't check for hardware acceleration for the adapter that we're actually
going to use, and we don't actually care what the swapchain format is anyway. If
the device doesn't support hardware acceleration we'll fail later when trying to
actually create it.

Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-02-02 10:55:13 +01:00
Fabian Maurer 20ea5b8251 quartz/tests: Avoid "misleading indentation" warnings.
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-01-31 18:38:53 +01:00
Alexandre Julliard f0cd33c69e include: Add support for defining Win32 types as 'long' where possible.
Add -DWINE_NO_LONG_TYPES to modules that still have compilation
warnings with long types.

Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-01-27 20:38:22 +01:00
Zebediah Figura 9156e124f3 strmbase: Try sink types before source types.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=50668
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-12-23 09:59:00 +01:00
Zebediah Figura 5a461804b0 quartz/tests: Test that sink pins are enumerated first.
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-12-23 09:58:47 +01:00
Zebediah Figura 15a01af70b quartz/tests: Test querying connection state inside of IPin::ReceiveConnection().
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-12-22 10:23:39 +01:00
Alex Henrie 8e081d32bd quartz: Fix memory leaks on error paths in FilterMapper3_RegisterFilter (cppcheck).
Signed-off-by: Alex Henrie <alexhenrie24@gmail.com>
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-12-20 21:15:55 +01:00
Akihiro Sagawa bbdb658402 quartz: Fix a race in IMediaFilter::Pause().
Before finishing async run, graph->stream_start isn't stable.
This will cause graph->current_pos to be out of playback duration.
Since graph->current_pos is out of the range, the playback will
be stopped.

Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=52200
Signed-off-by: Akihiro Sagawa <sagawa.aki@gmail.com>
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-12-10 22:00:18 +01:00
Andrew Eikum 0dea2b615e quartz: Allow time format change while running.
Signed-off-by: Andrew Eikum <aeikum@codeweavers.com>
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-11-29 23:25:46 +01:00
Zebediah Figura 0b79e2caa6 quartz/dsoundrender: Send EC_COMPLETE in IBaseFilter::Run() when not connected.
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-11-01 21:03:04 +01:00
Andrew Eikum 6e11378df2 strmbase: Send EC_COMPLETE in IBaseFilter::Run() for unconnected renderers.
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-11-01 21:03:02 +01:00
Zebediah Figura 74b595162c quartz/tests: Test receiving EC_COMPLETE when not connected.
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-11-01 21:02:58 +01:00
Zebediah Figura e22e34ecf4 quartz: Avoid accessing the advise_sink structure after it is queued.
It could already have been removed and freed.

Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-10-21 20:32:50 +02:00
Zebediah Figura bf5b35f19b quartz: Use the performance counter for the system clock.
Native probably uses timeGetTime() as a source. That doesn't actually match the
performance counter on Windows, but it does on Wine, and accessing the counter
directly is slightly more efficient anyway.

Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=51684
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-10-21 20:32:48 +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
Michael Stefaniuc 21c4a25437 quartz: Forward dsound_render_qc_Release() to a release method.
Signed-off-by: Michael Stefaniuc <mstefani@winehq.org>
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-08-30 22:49:58 +02:00
Francois Gouget e950ec2c3b quartz: Remove WINAPI on static functions where not needed.
Signed-off-by: Francois Gouget <fgouget@free.fr>
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-08-30 22:49:58 +02:00
Zebediah Figura 9a4a722fcc quartz: Always return S_FALSE from DllCanUnloadNow().
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-08-26 09:34:00 +02:00
Zebediah Figura 5d4083aba2 quartz/tests: Add more strict tests for accurate duration retrieval.
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-07-22 13:16:53 +02:00
Zebediah Figura 4e74fdcebe quartz: Free outstanding advise requests when destroying a system clock.
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-07-20 12:13:40 +02:00
Zebediah Figura ff231dad75 quartz/tests: Check that system clock measurements are in sequence instead of comparing absolute time.
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-07-20 12:13:38 +02:00
Zebediah Figura 4df1a5831c quartz: Use a condition variable to wake up the system clock advise thread.
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-07-20 12:13:35 +02:00
Zebediah Figura 6c0ddfee9d quartz: Factor out more of AdviseTime() and AdvisePeriodic().
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-07-20 12:13:29 +02:00
Zebediah Figura 7f1623bc62 quartz: Do not print an incorrect state warning in MediaFilter_GetState() if a filter has been run asynchronously.
This is a valid case in which the filter state may or may not match the graph
state.

Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-06-29 22:43:21 +02:00
Tim Clem 83ae1ff59a quartz: Remove the source filter on failure in IGraphBuilder::RenderFile().
Signed-off-by: Tim Clem <tclem@codeweavers.com>
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-06-29 22:43:21 +02:00
Tim Clem d9b95ac0df quartz/tests: Test IGraphBuilder::RenderFile() cleanup on failure.
Signed-off-by: Tim Clem <tclem@codeweavers.com>
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-06-29 22:43:21 +02:00
Akihiro Sagawa 1b107ec03e quartz: Notify EC_USERABORT event when closing video window.
Signed-off-by: Akihiro Sagawa <sagawa.aki@gmail.com>
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-06-07 10:00:07 +02:00
Akihiro Sagawa 567f930583 quartz: Hide video window on WM_CLOSE.
Signed-off-by: Akihiro Sagawa <sagawa.aki@gmail.com>
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-06-07 10:00:07 +02:00
Akihiro Sagawa b0458a318f quartz/tests: Test the close button of the video window.
Signed-off-by: Akihiro Sagawa <sagawa.aki@gmail.com>
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-06-07 10:00:07 +02:00
Akihiro Sagawa ae41ce2d93 quartz/tests: Introduce commit_allocator helper in vmr7.c.
Signed-off-by: Akihiro Sagawa <sagawa.aki@gmail.com>
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-06-07 10:00:07 +02:00
Anton Baskanov 4a9936e318 quartz/dsoundrender: Defer EC_COMPLETE until running.
Signed-off-by: Anton Baskanov <baskanov@gmail.com>
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-05-27 21:12:55 +02:00
Anton Baskanov a2504b8ec7 quartz/dsoundrender: Don't reset EOS on paused->running state transition.
Signed-off-by: Anton Baskanov <baskanov@gmail.com>
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-05-27 21:12:52 +02:00
Anton Baskanov 82b86d4704 strmbase: Defer EC_COMPLETE until the renderer is running.
Signed-off-by: Anton Baskanov <baskanov@gmail.com>
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-05-27 21:12:49 +02:00
Anton Baskanov 2ad44002da quartz: Check for IMediaPosition when counting renderers.
The new test failures are expected since the renderers are now actually
considered renderers by the filter graph.

Signed-off-by: Anton Baskanov <baskanov@gmail.com>
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-05-25 21:13:01 +02:00
Anton Baskanov 926a5c778e quartz/tests: Test that IMediaPosition is also checked when renderers are counted.
Signed-off-by: Anton Baskanov <baskanov@gmail.com>
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-05-25 21:13:01 +02:00
Zebediah Figura 9172ca5baa quartz/tests: Fix some test failures related to thread timing.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-05-17 22:05:36 +02:00
Zebediah Figura 44472fae6b quartz/tests: Avoid testing the result of GetQueueStatus().
It's very unreliable; our window can receive messages not related to the ones we're trying to test.

Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-05-17 22:05:33 +02:00
Zebediah Figura 226897bec7 quartz/tests: Use CRT memory allocators.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-05-17 17:42:15 +02:00
Zebediah Figura 11c336b4a9 quartz/tests: Remove the no longer used TestFilterImpl structure.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-05-17 17:42:15 +02:00
Zebediah Figura 67330f9055 quartz/dsoundrender: Remove the no longer used "play_time" field.
This was used to implement IReferenceClock::GetTime(), which was reimplemented
in 63a6b308e9.

Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-05-13 10:40:27 +02:00
Connor McAdams 2c5314d007 winegstreamer: Delay duration query until caps have been acquired.
Signed-off-by: Connor McAdams <cmcadams@codeweavers.com>
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-04-30 10:34:18 +02:00
Anton Baskanov 9b30d09282 quartz/dsoundrender: Don't let writepos advance past playpos.
Fixes audio stuttering during video playback in multiple games (e.g.
Commandos 2, Alien Nations, Dino Crisis Demo).

Signed-off-by: Anton Baskanov <baskanov@gmail.com>
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-04-27 21:02:46 +02:00
Anton Baskanov 86cbfa4bea quartz: Use a separate critical section for events.
This undoes dc836b85c1.

Signed-off-by: Anton Baskanov <baskanov@gmail.com>
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-04-12 19:32:15 +02:00
Jacek Caban 598a12a9ab quartz: Use nameless unions.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-03-24 20:46:24 +01:00
Jacek Caban b39b9eea39 include: Don't default to WINE_NO_NAMELESS_EXTENSION for Wine build.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-03-22 21:48:38 +01:00
Zebediah Figura 26476fcf48 strmbase: Return void from renderer_disconnect.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-03-12 12:13:52 +01:00