Commit Graph

85 Commits

Author SHA1 Message Date
Zebediah Figura 18f561a783 strmbase: Get rid of the "vtbl" parameter to strmbase_filter_init().
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-12-05 23:36:16 +01:00
Zebediah Figura 3a7f54947e strmbase/transform: Hold the streaming lock for the entirety of Receive().
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-12-02 10:42:10 +01:00
Zebediah Figura 3b7ce56908 strmbase: Don't hold the filter lock while calling IPin::NewSegment().
It's not safe to hold the filter lock from a streaming thread, and
anyway we aren't protecting anything that needs locking.

Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-12-02 10:42:04 +01:00
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 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 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
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 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 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 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 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 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 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 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 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 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
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 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 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 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 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 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 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 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 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 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 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 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 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