Commit Graph

208 Commits

Author SHA1 Message Date
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 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 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 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 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 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
Zebediah Figura c7a447b67a strmbase: Rename "pConnectedTo" to "peer".
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-09-27 13:26:52 +02:00
Zebediah Figura d44d83b684 quartz: Get rid of the no longer used base parser.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-09-23 10:10:08 +02:00
Zebediah Figura 1317102f6c strmbase: Get rid of the "debug_info" parameter to strmbase_filter_init().
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-08-28 08:44:35 +02:00
Zebediah Figura fb504baaa8 strmbase: Build with msvcrt.
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-08-05 18:49:31 +02:00
Zebediah Figura 444f9b7ba2 strmbase: Rename pfnOnStopStreaming to renderer_stop_stream.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-07-03 10:56:03 +02:00
Zebediah Figura fa5c24e933 strmbase: Rename pfnOnStartStreaming to renderer_start_stream.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-07-03 10:56:00 +02:00
Zebediah Figura 48b475ad00 strmbase: Remove several unused callbacks.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-07-03 10:55:57 +02:00
Zebediah Figura 881f938067 strmbase: Split RenderEvent into separate events for advising and flushing.
While it's certainly possible to use one event for both purposes, it's a
little less clear, and it makes it a little more difficult to do other waits
that need to be interrupted by flushing. For example, the video renderer
should block in Receive() after rendering the sample until the filter is run.

Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-07-02 10:00:29 +02:00
Zebediah Figura 659b93c7da strmbase: Rename "evComplete" to "state_event" for clarity.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-07-02 10:00:29 +02:00
Zebediah Figura b583452af3 strmbase/renderer: Store the sink pin inline in the BaseRenderer structure.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-06-21 08:06:06 +02:00
Zebediah Figura 2dafbe079e strmbase/renderer: Remove some duplicated locks.
The pin and filter locks are always equal.

Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-06-21 08:06:03 +02:00
Zebediah Figura 5e63f7f93a quartz: Use strmbase IUnknown methods for IVideoWindow.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-06-12 16:11:06 +02:00
Zebediah Figura fbd9133ee5 strmbase: Get rid of the "lpVtbl" parameter to BaseControlVideo_Init().
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-06-12 16:10:57 +02:00
Zebediah Figura cb0b2d81d2 quartz: Use strmbase IUnknown methods for IBasicVideo.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-06-12 16:10:51 +02:00
Zebediah Figura 105539f735 quartz/videorenderer: Use strmbase filter aggregation support.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-06-04 23:05:25 +02:00
Zebediah Figura 31a5cb5f05 strmbase: Support aggregation in the base filter.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-06-04 23:05:25 +02:00
Zebediah Figura 75af3556a8 quartz/videorenderer: Don't expose IAMFilterMiscFlags.
This reverts 822c3fe9ea.

Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-05-21 18:08:37 +02:00
Zebediah Figura dea50a98e8 quartz/videorenderer: Use strmbase_renderer_cleanup().
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-05-16 10:00:33 +02:00
Zebediah Figura 4f16a137da strmbase: Correct pin IDs for renderers.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-03-12 10:53:40 +01:00
Michael Stefaniuc fd99282319 quartz: There is no point in tracing the GUID pointer too.
Signed-off-by: Michael Stefaniuc <mstefani@redhat.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-08-10 22:22:52 +09:00
Jan Schmidt 9f924276a6 quartz: Return the fullscreen status in Videorenderer.
Signed-off-by: Jan Schmidt <jan@centricular.com>
Signed-off-by: Andrew Eikum <aeikum@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-07-21 12:30:21 +09:00
Michael Stefaniuc 6b16727803 quartz: Use wine_dbgstr_rect() to trace RECTs.
Signed-off-by: Michael Stefaniuc <mstefani@redhat.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-04-19 21:06:10 +09:00
Michael Stefaniuc f96aab3f22 quartz: Use SetRect instead of open coding it.
Signed-off-by: Michael Stefaniuc <mstefani@redhat.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-04-13 23:01:07 +09:00
Francois Gouget 78bf626d20 quartz: Remove unneeded NONAMELESSXXX directives. 2015-03-18 19:38:55 +09:00
Erich E. Hoover ee94725c8e quartz: Fix race condition on EndFlush between csRenderLock and filter.csFilter. 2014-08-05 17:41:31 +02:00
Frédéric Delanoy ec5da171e6 quartz: Use BOOL type where appropriate. 2013-10-25 13:36:01 +02:00
Christian Costa 0c0b229717 quartz: Fix case in some methods name. 2012-11-27 20:55:05 +01:00
Andrew Talbot 17cc65a0df quartz: Remove unused variables. 2012-11-22 11:54:42 +01:00
Christian Costa c82d96fded quartz: Don't say we have a menu to AdjustWindowRectEx since the created window doesn't have one. 2012-10-10 10:37:11 +02:00
Christian Costa 266e79d05f quartz: Use target rect if set otherwise default to source rect in VideoRenderer_AutoShowWindow. 2012-10-10 10:37:06 +02:00
Christian Costa 03086e87ff quartz: Fill right RECT structure in SetDefaultTargetRec. 2012-10-09 18:32:25 +02:00
Michael Stefaniuc 02216db8ca quartz: Move VideoRenderer_create() to avoid forward declarations. 2012-07-02 10:58:34 +02:00
Michael Stefaniuc 37cfaa2d02 quartz: Standardize COM aggregation for VideoRenderer. 2012-07-02 10:58:34 +02:00
Michael Stefaniuc eb6388c4a5 quartz: Don't set the VideoRenderer object on creation failure. 2012-07-02 10:58:34 +02:00
Michael Stefaniuc d28971a23e quartz: COM cleanup for IAMFilterMiscFlags in VideoRenderer. 2012-07-02 10:58:34 +02:00
Aric Stewart f38318705c strmbase: Track internal window styles in baseWindow.WindowStyles. 2012-04-26 19:28:03 +02:00
Aric Stewart 7d5c4ec1f8 strmbase: Have BaseControlVideo use BaseDispatch. 2012-04-20 19:15:11 +02:00
Aric Stewart c7b12c10d8 strmbase: Have BaseControlWindow use BaseDispatch. 2012-04-20 19:15:08 +02:00
Francois Gouget a3da9a7ab4 quartz: Mark a bunch of functions as static. 2012-04-20 12:00:16 +02:00
Aric Stewart 6aafd2f1de quartz: Correct a critical section lock reversal issue found by Marcus Meissner (Coverity). 2012-04-19 19:28:10 +02:00
Aric Stewart dbf910b053 quartz: Change VideoRenderer to use strmbase's BaseControlVideo. 2012-04-03 12:20:15 +02:00
Aric Stewart 75300a7e32 quartz: Convert VideoRenderer to use strmbase's BaseControlWindow. 2012-04-03 12:20:03 +02:00
Aric Stewart 896be1355b quartz: Convert VideoRenderer to use strmbase BaseRenderer. 2012-04-03 12:18:44 +02:00
Aric Stewart 8830470a8c quartz: Have the VideoRenderer use strmbase BaseWindow. 2012-04-03 12:10:45 +02:00
Aric Stewart 29d3c75442 strmbase: COM cleanup for BaseFilter. 2012-03-26 18:15:48 +02:00
Michael Stefaniuc 810b619e2b quartz: Print the debug string and not the pointer to it. 2012-03-26 18:15:24 +02:00
Aric Stewart cdf9c4f223 strmbase: Rename MediaSeekingPassThru to RendererPosPassThru to match standard strmbase naming. 2012-03-15 19:50:39 +01:00
Aric Stewart 026037ab69 strmbase: Move the MediaSeekingPassThru functions from quartz into strmbase. 2012-03-15 19:49:21 +01:00
Marcus Meissner 82cd229cc2 quartz: Removed const from const REFIID (Coverity). 2011-03-14 19:31:29 +01:00
Maarten Lankhorst 351165e30d quartz: Fix a race condition in videorenderer endflush. 2010-12-14 16:01:17 +01:00
Maarten Lankhorst ab7986390a quartz: Always update time when Run is called. 2010-12-06 19:15:56 +01:00
Maarten Lankhorst 02986df061 quartz: Make video renderer use unicode calls. 2010-12-03 14:28:30 +01:00
Maarten Lankhorst 89161a8ded quartz: Make sure video window is actually destroyed. 2010-12-03 14:28:29 +01:00
Maarten Lankhorst d4185badf1 quartz: Unregister window class after shutdown. 2010-11-29 19:43:32 +01:00
Maarten Lankhorst ab2e5c0499 quartz: Add support for fullscreen mode in video renderer. 2010-11-25 11:49:08 +01:00
Maarten Lankhorst f63950d023 quartz: Change VideoRenderer_Run to handle EndOfStream slightly better. 2010-11-25 11:49:06 +01:00
Maarten Lankhorst 5c3cddf351 quartz: Make window behavior of video renderer act more like windows. 2010-11-11 17:08:52 +01:00
Maarten Lankhorst 5dd27f7597 quartz: Reset state change after flushing.
This fixes IBasicVideo:GetCurrentImage.
2010-11-11 12:25:26 +01:00
Maarten Lankhorst 06ca6fb184 quartz: Fix stub for GetVideoPaletteEntries. 2010-11-11 12:25:22 +01:00
Maarten Lankhorst 7fbc8814d8 quartz: Use quality control in video renderer. 2010-11-10 12:16:18 +01:00
Maarten Lankhorst a5798fc96c quartz: Fix video renderer EndOfStream. 2010-11-10 12:14:19 +01:00
Maarten Lankhorst bb8ccbd507 quartz: On flushing, always signal blocked event handle. 2010-11-10 12:14:12 +01:00
Maarten Lankhorst adabc4ae92 quartz: Use media time instead of stream time in video renderer. 2010-11-10 12:13:59 +01:00
Maarten Lankhorst b6fd7bc133 quartz: Add IQualityControl to video renderer. 2010-11-08 13:30:27 +01:00
Maarten Lankhorst 822c3fe9ea quartz: Add IAMFilterMiscFlags to video renderer. 2010-11-05 11:24:33 +01:00
Maarten Lankhorst 6072a3b5ac quartz: Fix EC_COMPLETE handling on video renderer. 2010-11-05 11:24:22 +01:00
Aric Stewart 7e8751b2e1 strmbase: More properly standardized pin implementations for NewSegment. 2010-11-01 14:53:29 +01:00
Aric Stewart 7602829c4f strmbase: Add GetMediaType and GetMediaTypeVersion to BasePin function table.
Allows for more widespread use of the BasePinImpl version of EnumMediaTypes.
2010-10-14 17:54:51 +02:00
Aric Stewart 3c2dfd186a strmbase: Standardize "class" function into functions tables in the structs.
This allows the standardization of the "class" functions to use the 
class as the argument and will aid in expanding the implementation of 
these functions.
2010-10-14 17:54:51 +02:00
Aric Stewart 602d44a12c strmbase: Move mediaSeeking to strmbase SourceSeeking. 2010-10-12 11:44:17 +02:00
Aric Stewart 791087089c strmbase: Add an implementation of BaseFilterImpl_EnumPins. 2010-10-08 11:04:09 +02:00
Aric Stewart 1d42659c40 strmbase: Implement BaseFilter in strmbase. 2010-10-08 11:04:04 +02:00
Aric Stewart 66e1ad8a96 strmbase: Move InputPin implementation to strmbase. 2010-10-06 20:46:48 +02:00
Aric Stewart 0410e50e00 strmbase: Move BasePin implementation to strmbase. 2010-10-06 20:46:48 +02:00
Aric Stewart bb110c7749 strmbase: Move enumpins from quartz to strmbase. 2010-10-06 20:46:47 +02:00
Maarten Lankhorst 81b15f35bf quartz: Add MediaSeekingPassThru to video renderer. 2010-10-05 13:02:24 +02:00
Aric Stewart e2b3a7f479 quartz: Improve video window sizing on first sample.
Preserve sizes set by the application and defer erasing as it is not
needed and can cause deadlock between threads with child video windows.
2010-09-28 17:33:19 +02:00
Aric Stewart 97343b0f00 quartz: Allow for proper setting of the video window to WS_CHILD.
If the set_WindowStyle comes before the set_Owner then the style was not 
being set properly (WS_CHILD cannot be set on a window with a NULL 
parent). So reset the window style when the set_Owner command comes in 
to make the new style allowable.
2010-09-24 17:00:15 +02:00
Maarten Lankhorst f830c544ac quartz: Accept tiny discontinuities in video renderer without printing out an error. 2010-07-28 13:32:33 +02:00
Michael Stefaniuc 63512e8e98 quartz: Avoid using the long type. 2010-05-20 13:47:44 +02:00
Maarten Lankhorst 02956bf798 quartz: Remove invalid check from put_WindowStyleEx in video renderer. 2010-05-20 12:45:02 +02:00
Maarten Lankhorst ab9cbecf1b quartz: Respect autoshow in video renderer. 2010-05-20 12:44:57 +02:00
Maarten Lankhorst 4c23814c48 quartz: Support negative heights in video renderer. 2010-05-20 12:43:45 +02:00
Maarten Lankhorst 231396de90 quartz: Add support for windowstate in video renderer. 2010-05-19 13:16:34 +02:00
Maarten Lankhorst 44827a0336 quartz: Implement IBasicVideo get_AvgTimePerFrame. 2010-05-18 08:50:47 +02:00
Michael Stefaniuc a3269bdc40 quartz: Change long to LONG in control.idl. 2009-03-11 13:03:31 +01:00
Henri Verbeet 166db1e934 quartz: Use a more appropriate size for the video renderer window. 2009-02-19 12:54:00 +01:00
Michael Stefaniuc cc7fc4abef quartz: Remove superfluous pointer casts. 2009-01-29 14:06:01 +01:00