Commit Graph

398 Commits

Author SHA1 Message Date
Zebediah Figura 6773179a94 strmbase: Move tracking of EOS state to the base renderer.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-11-27 09:47:23 +01:00
Zebediah Figura 8a05fe0fb5 strmbase: Get rid of BaseOutputPinImpl_Deliver().
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-11-27 09:47:16 +01:00
Zebediah Figura 8bfd6d3285 strmbase/transform: Check whether the source is connected in TransformFilter_Input_Receive().
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-11-25 20:47:43 +01:00
Zebediah Figura b0b56001fe strmbase: Simplify SendFurther().
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-11-25 20:47:43 +01:00
Zebediah Figura bd83b11a23 strmbase: Return a strmbase_pin pointer from the filter_get_pin() callback.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-11-25 20:47:43 +01:00
Zebediah Figura 6072c66c5a strmbase/renderer: Exit BaseRendererImpl_Receive() immediately if flush_event was signaled.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-11-22 09:03:33 +01:00
Nikolay Sivov 462d8ae419 strmbase: Remove unused function.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-11-20 09:13:36 +01:00
Zebediah Figura e438824ab3 strmbase: Get rid of the BaseInputPinFuncTable typedef.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-11-20 09:09:12 +01:00
Zebediah Figura 580ca7557d strmbase: Get rid of the BaseInputPin typedef.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-11-20 09:09:08 +01:00
Zebediah Figura cc78d10405 strmbase: Avoid unnecessary use of IPin::ConnectedTo().
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-11-19 09:23:29 +01:00
Zebediah Figura 2a6037e263 strmbase: Forbid (dis)connecting pins if the filter is not stopped.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-11-19 09:23:16 +01:00
Zebediah Figura 03f0479c34 strmbase: Rename the "mtCurrent" field of struct strmbase_pin to "mt".
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-11-19 09:23:09 +01:00
Zebediah Figura 21ac839711 strmbase: Get rid of the unused segment fields from struct strmbase_pin.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-11-18 19:12:14 +01:00
Zebediah Figura 70d2ba7482 strmbase: Get rid of the unused "cs" parameter to strmbase_video_init().
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-11-18 19:12:14 +01:00
Zebediah Figura cdeb55a8f9 strmbase/transform: Reimplement IQualityControl for the source pin.
There is not enough common code between renderers and transforms to be worth
duplicating.

This fixes a regression introduced by db7eb3327. The wrong impl_from_*()
helper was used in IQualityControl::Notify().

Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-11-04 12:14:32 +01:00
Zebediah Figura 9a760f9479 strmbase: Retrieve the filter clock from the pin pointer.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-10-28 18:31:58 +01:00
Zebediah Figura db7eb33275 strmbase: Pass a strmbase_pin pointer to QualityControlImpl_Create().
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-10-28 18:31:54 +01:00
Zebediah Figura 8655691a8a strmbase/renderer: Use base filter state change methods.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-10-28 18:31:49 +01:00
Zebediah Figura 2fcc7e7292 strmbase/transform: Use base filter state change methods.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-10-27 19:13:38 +01:00
Zebediah Figura 7c8c0a1d2e strmbase: Introduce filter state callbacks.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-10-27 19:13:36 +01:00
Zebediah Figura f7232d4e2c strmbase: Rename the "pFuncsTable" field of struct strmbase_filter to "ops".
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-10-27 19:13:34 +01:00
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 1454a661e5 strmbase: Move strmbase_renderer_init() to avoid forward declarations.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-10-27 19:13:19 +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 675af1eb33 strmbase: Introduce renderer_init_stream().
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-10-23 10:25:52 +02:00
Zebediah Figura 132ce049e6 strmbase: Return S_FALSE from IBaseFilter::Pause() when performing asynchronous state change.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-10-23 10:25:47 +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 3e7a804790 strmbase: Get rid of the unused "hDC" field of the BaseWindow structure.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-10-17 10:49:58 +02:00
Zebediah Figura f3a766bfe4 strmbase: Get rid of the unused "hInstance" field of the BaseWindow structure.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-10-17 10:49:42 +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 d1a879fb9d strmbase: Properly implement IVideoWindow::get_WindowStyle().
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-10-16 13:39:32 +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 a29b1d58b7 strmbase: Get rid of BaseWindowImpl_OnReceiveMessage().
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-10-16 13:39:27 +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 0854f67d09 strmbase: Get rid of the unused BaseWindowImpl_GetDefaultRect() function.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-10-16 12:31:31 +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 058926db97 strmbase: Fix implementation of IVideoWindow::get_Caption().
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-10-08 08:56:53 +02:00
Zebediah Figura b33f058308 strmbase: Introduce a helper to more thoroughly trace media type.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-10-07 10:00:35 +02:00
Zebediah Figura a9b87a8216 strmbase: Introduce a helper to trace reference time.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-10-07 10:00:30 +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 428c5b28e3 strmbase: Send WM_CLOSE instead of calling DestroyWindow() directly.
We are not guaranteed to destroy the filter on the same thread it was created
on.

Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-10-03 09:45:51 +02:00
Zebediah Figura 5757a07fc2 strmbase: Add a callback to expose renderer pin interfaces.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-10-03 00:37:35 +02:00
Zebediah Figura 94efc8b25b strmbase: Don't send EC_COMPLETE in IBaseFilter::Run().
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-10-03 00:37:32 +02:00
Zebediah Figura 25609bd412 strmbase: Set the filter debug info only if valid.
Fixes using binaries compiled with Wine's strmbase with Windows 8 and higher.

Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-09-30 11:49:51 +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 802ebaf9db strmbase: Don't execute OnStartStreaming() or OnStopStreaming() callbacks if the sink is unconnected.
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 71fdcf3ba8 qcap: Use BasePinImpl_QueryInterface().
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-09-26 10:24:26 +02:00
Zebediah Figura 8601e2243f strmbase: Use BasePinImpl_QueryInterface().
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-09-26 10:24:17 +02:00
Zebediah Figura fa280172e8 strmbase: Introduce BasePinImpl_QueryInterface().
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-09-26 10:24:07 +02:00
Zebediah Figura be5c7ed591 qcap/smartteefilter: Use BasePinImpl_EnumMediaTypes().
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-09-25 16:28:02 +02:00
Zebediah Figura b0e47ab9e7 strmbase: Pass an unsigned index to pin_get_media_type().
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-09-25 16:27:57 +02:00
Zebediah Figura f46fe6d371 strmbase: Rename pfnGetMediaType() to pin_get_media_type().
And remove the unnecessary calling convention.

Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-09-25 16:27:54 +02:00
Zebediah Figura 9f1909be89 strmbase: Rename pfnCheckMediaType() to pin_query_accept().
And remove the unnecessary calling convention.

Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-09-25 16:27:51 +02:00
Zebediah Figura 8619eb9838 strmbase: Get rid of the BasePin typedef.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-09-24 09:08:20 +02:00
Zebediah Figura 750efd19a7 strmbase: Get rid of the "enumMediaFunction" field from IEnumMediaTypesImpl.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-09-24 09:08:12 +02:00
Zebediah Figura bf01248ccb strmbase: Get rid of the version fields from IEnumMediaTypesImpl.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-09-24 09:08:08 +02:00
Zebediah Figura b68498c875 strmbase: Don't expose EnumMediaTypes_Construct().
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-09-24 09:08:03 +02:00
Zebediah Figura 765cb748a8 strmbase: Get rid of the BaseOutputPinFuncTable typedef.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-09-13 10:37:49 +02:00
Zebediah Figura c585931d61 strmbase: Get rid of the BaseOutputPin typedef.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-09-13 10:37:37 +02:00
Zebediah Figura aa88c5d65b strmbase: Get rid of the "pCritSec" member of BasePin.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-09-06 13:07:22 +02:00
Zebediah Figura 28a511554c strmbase: Store the filter as a strmbase_filter pointer in the BasePin structure.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-09-06 13:07:16 +02:00
Zebediah Figura 0a10566061 strmbase: Get rid of the no longer used pin constructor and destructor helpers.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-09-06 13:07:04 +02:00
Michael Stefaniuc 5f9d10561a strmbase: Don't cast from COM object to interface.
Signed-off-by: Michael Stefaniuc <mstefani@winehq.org>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-09-02 20:44:02 +02:00
Zebediah Figura eeb7bc58aa strmbase: Get rid of the BaseFilter typedef.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-08-29 20:08:14 +02:00
Zebediah Figura cfe3b05c83 strmbase: Get rid of the BaseFilterFuncTable typedef.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-08-29 20:08:14 +02:00
Zebediah Figura 0aa48ff150 strmbase: Zero-initialize the BaseRenderer structure in strmbase_renderer_init().
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-08-28 08:44:37 +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
Alexandre Julliard 2477aa7a10 makefiles: Default to an msvcrt build for static libraries.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-08-05 18:58:58 +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
Nikolay Sivov 86c7f17f96 strmbase: Remove unused function.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-07-02 10:00:29 +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 f834e4a459 strmbase: Do not set RenderEvent in IBaseFilter::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 c0712a97a6 strmbase: Wait for the presentation time in BaseRendererImpl_Receive().
Try to make the quality control object more clearly responsible for
calculating quality after the fact, and only that.

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 ac10f3de1f strmbase: Remove unused "ThreadSignal" event.
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 af35e10c14 strmbase: Fix implementation of IEnumMediaTypes::Skip().
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=47291
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-07-01 14:41:06 +02:00
Zebediah Figura cf09b5a800 strmbase: Simplify IEnumMediaTypesImpl_Next().
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-07-01 14:41:02 +02:00
Zebediah Figura 0791cfb096 strmbase: Add default implementations of filter state change methods.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-06-24 10:08:30 +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 2d5c9d0666 strmbase/transform: Store the pins inline in the TransformFilter structure.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-06-21 08:06:00 +02:00
Zebediah Figura e483b4a336 strmbase: Use base pin reference counting methods.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-06-19 10:26:24 +02:00
Zebediah Figura 42b3fd84bb strmbase: Share pin and filter reference counts in base pin reference counting methods.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-06-19 10:26:21 +02:00
Zebediah Figura 6f7d1065d5 strmbase/renderer: Share pin and filter reference counts.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-06-18 08:57:24 +02:00
Zebediah Figura 7f3d463b45 strmbase/transform: Share pin and filter reference counts.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-06-17 09:21:10 +02:00
Zebediah Figura 17b118a09f qcap/avico: Store the source pin inline in the AviCompressor structure.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-06-14 09:16:19 +02:00
Zebediah Figura 79ed388e70 strmbase: Factor out strmbase_source_cleanup().
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-06-14 09:16:16 +02:00
Zebediah Figura 2922615d02 strmbase: Return void from OutputPin_Init().
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-06-14 09:16:12 +02:00
Zebediah Figura f2206d3db6 qcap/avico: Store the sink pin inline in the AviCompressor structure.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-06-13 20:55:35 +02:00
Zebediah Figura cec43c1822 strmbase: Factor out strmbase_sink_cleanup().
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-06-13 20:55:35 +02:00
Zebediah Figura a1d65ac38c strmbase: Return void from InputPin_Init().
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-06-13 20:55:35 +02:00
Zebediah Figura d16bc95b95 strmbase: Factor out strmbase_pin_init().
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-06-13 20:55:35 +02:00
Zebediah Figura 89cf4cba6e strmbase: Add default implementations of 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:01 +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 96b6f0e1d6 strmbase: Add default implementations of 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:47 +02:00
Zebediah Figura 690838a0e0 strmbase: Don't increment the pin reference count in filter_get_pin().
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-06-11 18:21:26 +02:00
Zebediah Figura 0ce5ab71b0 strmbase: Get rid of base IDispatch implementation.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-06-10 12:26:07 +02:00
Zebediah Figura ea0dfa7934 strmbase: Get rid of IBasicAudio implementation.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-06-10 12:26:05 +02:00
Zebediah Figura 5c494e1226 strmbase: Use the type info cache for IMediaPosition.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-06-10 12:25:57 +02:00
Zebediah Figura fad521f525 strmbase: Use the type info cache for IVideoWindow.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-06-10 12:25:54 +02:00
Zebediah Figura 384d3a45ab strmbase: Add a cached implementation of IDispatch and use it in IBasicVideo.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-06-10 12:25:49 +02:00
Zebediah Figura f500b1dc19 strmbase: Support aggregation in the base transform filter.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-06-06 17:40:44 +02:00
Zebediah Figura 0d0f1e0ff7 strmbase: Get rid of BaseRendererImpl_QueryInterface().
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-06-06 17:40:42 +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 d930dff4a8 strmbase/renderer: Add a QueryInterface() callback.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-05-31 10:10:22 +02:00
Zebediah Figura 4b839bdd6a strmbase: Reimplement BaseFilterImpl_QueryInterface() using a callback.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-05-30 20:20:09 +02:00
Zebediah Figura 1296526450 strmbase/renderer: Add a destructor callback.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-05-28 12:06:45 +02:00
Zebediah Figura b3065a8b02 strmbase/transform: Use BaseFilterImpl_Release().
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-05-27 14:37:31 +02:00
Zebediah Figura 3c98e11b60 strmbase: Reimplement BaseFilterImpl_Release() using a destructor callback.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-05-24 11:25:35 +02:00
Zebediah Figura 1fc5c6b75d strmbase: Remove unnecessary calling convention from the filter_get_pin() callback.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-05-24 11:25:35 +02:00
Zebediah Figura 8a8c5a8229 strmbase: Rename pfnGetPin to filter_get_pin.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-05-24 11:25:35 +02:00
Zebediah Figura 97546ca0b7 strmbase: Use an unsigned int for the GetPin() callback.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-05-24 11:25:35 +02:00
Zebediah Figura 85516dca9f strmbase/transform: Use BaseFilter_Destroy().
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-05-22 09:27:59 +02:00
Zebediah Figura 347fdce0ad strmbase: Return void from strmbase_filter_cleanup().
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-05-22 09:27:41 +02:00
Zebediah Figura 43444f4096 strmbase: Rename BaseFilter_Destroy() to strmbase_filter_cleanup().
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-05-22 09:27:19 +02:00
Zebediah Figura c1b8ffde91 strmbase/transform: Don't expose IQualityControl from the filter.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-05-20 12:20:28 +02:00
Zebediah Figura 2a52c54f43 strmbase/transform: Don't expose IMediaPosition from the filter.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-05-20 12:20:26 +02:00
Zebediah Figura 25c3bf9c10 strmbase/transform: Don't expose IMediaSeeking from the filter.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-05-20 12:20:23 +02:00
Zebediah Figura 17ab5f977d strmbase: Get rid of BaseRendererImpl_Release().
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-05-16 10:00:42 +02:00
Zebediah Figura 9ff3db5247 strmbase: Factor out 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:29 +02:00
Zebediah Figura 0f9e4cd660 strmbase: Get rid of the "filterVtbl" parameter to TransformFilter_Construct().
Reordering some functions to avoid forward declarations.

Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-05-15 09:36:15 +02:00
Zebediah Figura 38726831c4 strmbase: Return void from BaseFilter_Init().
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-05-15 09:36:08 +02:00
Zebediah Figura 8ba451f85b strmbase: Get rid of the ENUMMEDIADETAILS structure.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-05-15 09:36:02 +02:00
Zebediah Figura a2258e717c strmbase: Don't store the media type list locally.
It's just entirely unnecessary.

Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-05-15 09:35:56 +02:00
Zebediah Figura 51bce1ec8a strmbase: Use heap_alloc_zero() in enum_pins_create().
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-05-15 09:35:52 +02:00
Zebediah Figura dad885e2b9 strmbase: Get rid of the "pfnGetPinCount" callback.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-05-14 10:29:15 +02:00
Zebediah Figura 89242d8b94 strmbase: Determine the pin count using the GetPin() callback.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-05-14 10:29:12 +02:00
Zebediah Figura a95c1f300e strmbase: Remove function pointers from the IEnumPinsImpl structure.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-05-14 10:29:07 +02:00
Zebediah Figura df05902b96 strmbase: Get rid of the "pfnBreakConnect" field from BaseOutputPinFuncTable.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-05-13 12:48:18 +02:00
Zebediah Figura 9be7995448 strmbase: Get rid of the "pfnGetMediaTypeVersion" callback.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-05-10 16:04:25 +02:00
Zebediah Figura 7e6ab5e53c strmbase: Move "AttemptConnection" to the base source pin function table.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-05-10 15:54:15 +02:00
Zebediah Figura e48559b2bf strmbase: Move some internal definitions to strmbase_private.h.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-05-10 15:54:15 +02:00
Alexandre Julliard 71e7e73fc0 strmbase: Avoid using wine/unicode.h.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-05-03 16:30:39 +02:00
Francois Gouget 74c26131b9 strmbase: A spelling fix in a comment.
Signed-off-by: Francois Gouget <fgouget@free.fr>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-03-12 20:32:37 +01: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
Zebediah Figura f5a8694c1a strmbase/transform: Fix pin IDs.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-03-06 10:06:26 +01:00
Zebediah Figura 1cabe7e4a3 strmbase/transform: Get rid of superfluous npins field.
Also return the correct number of pins in TransformFilter_GetPinCount().

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