Commit Graph

1438 Commits

Author SHA1 Message Date
Zebediah Figura 0f8dbcdf80 strmbase: Get rid of the BaseRendererFuncTable typedef.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-10-27 19:13:30 +01:00
Zebediah Figura 487ea5df22 strmbase: Get rid of the BaseRenderer typedef.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-10-27 19:13:25 +01:00
Zebediah Figura 48aa8326f9 strmbase: Get rid of the "vtbl" parameter to strmbase_renderer_init().
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-10-23 10:25:57 +02:00
Zebediah Figura 601142bda6 quartz/videorenderer: Use the renderer_init_stream() callback.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-10-23 10:25:54 +02:00
Zebediah Figura eca7b245f0 quartz/videorenderer: Get rid of hEvent.
This event was at various times used for several different purposes. The only
current use is apparently to prevent stale samples from being rendered after
IPin::EndFlush() completes, but in practice there's actually no foolproof way
to prevent this race in the video renderer. On the other hand, as long as the
filter driving the graph can ensure this, there's no need to do so.

Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-10-23 10:25:49 +02:00
Zebediah Figura 524783dfeb quartz/filtergraph: Clarify stream time tracking.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-10-22 23:04:27 +02:00
Zebediah Figura 13dbe644ce quartz/filtergraph: Pause the graph even if AM_SEEKING_NoFlush is used.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-10-22 23:04:27 +02:00
Zebediah Figura facbd0585c quartz/filtergraph: Set the current position in IMediaFilter::Stop().
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-10-22 23:04:26 +02:00
Zebediah Figura 539fa6922b quartz/filtergraph: Store the current position and return it in IMediaSeeking::GetCurrentPosition().
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-10-22 23:04:26 +02:00
Zebediah Figura 1c0985013e quartz/filtergraph: Iterate filters directly in IMediaSeeking::SetPositions().
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-10-22 23:04:26 +02:00
Zebediah Figura 0705b0f182 quartz/filtergraph: Correctly handle AM_SEEKING_ReturnTime in IMediaSeeking::SetPositions().
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-10-21 17:11:43 +02:00
Zebediah Figura c1f2e8476d quartz/filtergraph: Remove the no longer used "stop_position" field from IFilterGraphImpl.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-10-21 17:11:43 +02:00
Zebediah Figura a0043c1c5c quartz/filtergraph: Correctly implement IMediaSeeking::GetStopPosition().
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-10-21 17:11:43 +02:00
Zebediah Figura 88c41a3999 quartz/tests: Add more tests for seeking.
Partly to further prove incorrect the patches currently in Staging.

Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-10-21 17:11:43 +02:00
Zebediah Figura 445d2d9617 quartz/tests: Add more tests for stream start time.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-10-21 17:11:43 +02:00
Zebediah Figura 3f7fdcfd63 strmbase: Get rid of the unused "lock" parameter to BaseControlWindow_Init().
We don't use a lock, and while it's true we probably should be, we already
have access to one.

Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-10-18 18:05:53 +02:00
Zebediah Figura 229a8dfbcd quartz/videorenderer: Get rid of CreateRenderingSubsystem().
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-10-18 18:05:50 +02:00
Zebediah Figura ebf82cd686 quartz/tests: Relax system clock timing tests a bit.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-10-18 18:05:46 +02:00
Zebediah Figura 9cef48941e quartz/videorenderer: Get the window DC in VideoRenderer_SendSampleData().
Partly because we cannot depend on the filter being destroyed on the same
thread as it was allocated from.

Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-10-17 10:49:53 +02:00
Zebediah Figura a17f2ecb69 strmbase: Get rid of BaseWindowImpl_OnSize().
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-10-17 10:49:37 +02:00
Zebediah Figura b0b2c7d699 strmbase: Get rid of the "pfnGetClassWindowStyles" callback.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-10-17 10:49:29 +02:00
Zebediah Figura a0aa542a26 strmbase: Get rid of the "pfnOnReceiveMessage" callback.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-10-16 13:39:30 +02:00
Zebediah Figura 55b2251fef strmbase: Get rid of the "pfnPossiblyEatMessage" callback.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-10-16 12:31:35 +02:00
Zebediah Figura 2b45d0fefe quartz/filtergraph: Ensure that the thread has a message queue before posting messages to it.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-10-15 17:19:59 +02:00
Zebediah Figura 44cbb55815 quartz/tests: Increase the timeout in test_media_event().
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-10-15 17:19:56 +02:00
Zebediah Figura 2b9596a626 quartz/tests: Wait longer in test_render_with_multithread().
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-10-15 17:19:54 +02:00
Zebediah Figura 4d4e3e4045 quartz/tests: Filter out extraneous messages in test_video_window_messages().
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-10-15 17:19:52 +02:00
Zebediah Figura d4a0c0f502 quartz/tests: Bail out if connecting returns E_FAIL.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=47911
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-10-15 17:19:46 +02:00
Zebediah Figura d2b2e60ada strmbase: Avoid leaking references to the sink's peer in IVideoWindow::SetWindowForeground().
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-10-09 10:00:44 +02:00
Zebediah Figura cc3f73be74 strmbase: More properly implement IVideoWindow::SetWindowForeground().
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-10-09 10:00:41 +02:00
Zebediah Figura a3d3b399ff strmbase: Properly implement IVideoWindow::get_WindowState().
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-10-09 10:00:39 +02:00
Zebediah Figura ab98626afa strmbase: Don't move or activate the window in IVideoWindow::put_WindowStyle().
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-10-09 10:00:35 +02:00
Zebediah Figura 6ef97acd1b strmbase: IVideoWindow::get_Visible() returns OATRUE, not TRUE.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-10-09 10:00:32 +02:00
Zebediah Figura 7272891efb strmbase: IVideoWindow::get_AutoShow() returns OATRUE, not TRUE.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-10-09 10:00:30 +02:00
Zebediah Figura 47ec8ce911 strmbase: Do not activate the window when changing its position.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=10440
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-10-08 08:57:09 +02:00
Zebediah Figura 9b98246e82 strmbase: Correctly implement IVideoWindow::put_Owner().
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-10-08 08:57:07 +02:00
Zebediah Figura ed1c18e8c9 strmbase: IVideoWindow::SetWindowForeground takes OATRUE, not TRUE.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-10-08 08:57:04 +02:00
Zebediah Figura 9cb8fd4e6b quartz/tests: Add tests for IVideoWindow on the video renderer.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-10-08 08:57:01 +02:00
Zebediah Figura c4e3f4180d quartz: Use strmbase_dump_media_type() where appropriate.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-10-07 10:00:46 +02:00
Zebediah Figura c6f818e9a6 quartz/vmr9: Implement IOverlay::GetWindowHandle().
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-10-04 23:16:25 +02:00
Zebediah Figura af162fad4f quartz/vmr9: Add a stub IOverlay interface to the sink pin.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-10-04 23:16:25 +02:00
Zebediah Figura 35788e301e quartz/tests: Add some tests for VMR9 pin connection.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-10-04 23:16:25 +02:00
Zebediah Figura 64b1a5ef48 quartz/tests: Add some tests for VMR7 pin connection.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-10-04 23:16:25 +02:00
Zebediah Figura b3e325f36b strmbase: Move tracking of the stream start time to the renderer.
Only renderers should ever need to care about this.

Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-10-04 23:16:25 +02:00
Zebediah Figura ff5644174e quartz/vmr9: Create the window on the same thread as the filter.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-10-03 09:45:56 +02:00
Zebediah Figura 3b5198c828 quartz/videorenderer: Create the window on the same thread as the filter.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-10-03 09:45:54 +02:00
Zebediah Figura 5994c8cc85 quartz/filtergraph: Create filters on a separate thread if requested.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-10-03 09:45:49 +02:00
Zebediah Figura e584a5b4c4 quartz/tests: Add a test for filter graph threading.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-10-03 00:37:43 +02:00
Zebediah Figura 7fda84e72b quartz/videorenderer: Implement IOverlay::GetWindowHandle().
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-10-03 00:37:41 +02:00
Zebediah Figura c581404d31 quartz/videorenderer: Add a stub IOverlay interface to the sink pin.
This is not used by any application I know of, but is useful for testing.

Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-10-03 00:37:38 +02:00