Commit Graph

365 Commits

Author SHA1 Message Date
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
Michael Stefaniuc 78a8445a2a strmbase: Remove redundant NULL check before CoTaskMemFree().
Signed-off-by: Michael Stefaniuc <mstefani@winehq.org>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-01-29 21:40:07 +01:00
Sven Baars c7f51d85ec strmbase: Fix some memory leaks (Valgrind).
Signed-off-by: Sven Baars <sven.wine@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-01-29 21:39:23 +01:00
Michael Stefaniuc ad576b6965 strmbase: Use the ARRAY_SIZE() macro.
Signed-off-by: Michael Stefaniuc <mstefani@winehq.org>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-11-15 23:12:57 +01:00
Zebediah Figura 0e29ac0581 strmbase: Fix implementation of IEnumPins_Skip().
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-09-27 11:03:41 +02:00
Michał Janiszewski b21c3b83dc strmbase: Remove unused function.
Signed-off-by: Michał Janiszewski <janisozaur@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-08-14 11:59:02 +02:00
Zebediah Figura d69a26b21b strmbase: Use CBaseFilter::FindPin().
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-07-06 19:44:27 +02:00
Zebediah Figura bf8637e42b strmbase: Avoid leaking pFilter in CBaseFilter::FindPin().
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-07-06 19:44:27 +02:00
Zebediah Figura 567be5b60e strmbase: Update comment for copying pin info.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-07-05 19:08:34 +02:00
Zebediah Figura 5b9ae5ad8d strmbase: Implement CBaseFilter::FindPin().
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-07-04 14:56:21 +02:00
Zebediah Figura c130ec5678 strmbase: Consistently trace the BasePin object.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-05-04 11:01:44 +02:00
Zebediah Figura 10ff8f3082 strmbase: Implement QueryAccept() on top of CheckMediaType() for output pins too.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-05-04 11:01:40 +02:00
Zebediah Figura af717f342b strmbase: Check that the output pin supports the given media type before connecting.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-05-04 11:01:35 +02:00
Huw Davies 9ca5384078 strmbase: Remove unnecessary WS_ICONIC.
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-10-30 21:30:45 +01:00
Michael Stefaniuc 37d8f36de6 strmbase: Remove an always true if condition (coccinellery).
Signed-off-by: Michael Stefaniuc <mstefani@redhat.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-02-15 16:33:54 +01:00
Akihiro Sagawa 40a596fa86 strmbase: Add validation checks when updating destination rectangle.
Signed-off-by: Akihiro Sagawa <sagawa.aki@gmail.com>
Signed-off-by: Andrew Eikum <aeikum@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-11-28 16:59:28 +01:00
Akihiro Sagawa 547f4bc2cf strmbase: Add validation checks when updating source rectangle.
Signed-off-by: Akihiro Sagawa <sagawa.aki@gmail.com>
Signed-off-by: Andrew Eikum <aeikum@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-11-28 16:59:23 +01:00
Akihiro Sagawa 69761ae71c strmbase: Shift source/destination rectangle when updating top or left property.
Signed-off-by: Akihiro Sagawa <sagawa.aki@gmail.com>
Signed-off-by: Andrew Eikum <aeikum@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-11-28 16:55:04 +01:00
Akihiro Sagawa 96d2593ead strmbase: Fix copy-paste error where calculating video destination height.
Spotted by Andrew Eikum.

Signed-off-by: Akihiro Sagawa <sagawa.aki@gmail.com>
Signed-off-by: Andrew Eikum <aeikum@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-11-28 16:55:00 +01:00
Nikolay Sivov 875b8a6d4a strmbase: Remove some of casts to interface pointers.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-11-25 19:50:25 +01:00
Nikolay Sivov 61105aee5b strmbase: Use wine_dbgstr_longlong() to trace REFERENCE_TIME arguments.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-11-25 19:50:23 +01:00
Nikolay Sivov 89763f0e95 strmbase: Allocate sample list as a part of queue structure.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-11-25 19:50:19 +01:00
Nikolay Sivov 16dead4dd2 strmbase: Remove a couple of redundant statements in Release() methods.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-11-25 19:50:17 +01:00
Akihiro Sagawa 0638213243 strmbase: Add null pointer checks to BaseControlVideoImpls.
Signed-off-by: Akihiro Sagawa <sagawa.aki@gmail.com>
Signed-off-by: Andrew Eikum <aeikum@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-11-21 20:57:06 +01:00
Michael Stefaniuc 9e087cde4b strmbase: Don't bother tracing the GUID pointers too.
Signed-off-by: Michael Stefaniuc <mstefani@redhat.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-09-27 21:43:26 +09:00
Nikolay Sivov 51021faaef strmbase: Fix media type leaks when creating IEnumMediaTypes instance (Valgrind).
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-08-17 00:16:21 +09:00
Nikolay Sivov 0c823e8369 strmbase: Fully cleanup on initialization failure (Coverity).
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-07-28 22:37:11 +09:00
Michael Stefaniuc d7f332020c strmbase: Avoid a COM object to interface cast.
Signed-off-by: Michael Stefaniuc <mstefani@redhat.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-07-18 19:31:31 +09:00
Michael Stefaniuc 4c224eaba1 strmbase: Don't cast IQualityControl to the COM object.
Signed-off-by: Michael Stefaniuc <mstefani@redhat.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-07-18 19:31:29 +09:00
Michael Stefaniuc 275eb8ab2b strmbase: Use SetRect() instead of open coding it.
Signed-off-by: Michael Stefaniuc <mstefani@redhat.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-07-03 10:18:38 +09:00
Andrew Eikum 97fea6d80e strmbase: Initialize QualityControl struct on allocation.
Signed-off-by: Andrew Eikum <aeikum@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-05-18 10:37:10 +09:00
Andrew Eikum 0025649714 strmbase: Improve QualityControl tracing.
Signed-off-by: Andrew Eikum <aeikum@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-05-18 10:37:08 +09:00
Anton Baskanov 3e02882508 strmbase: Decommit allocator when streaming stops.
Signed-off-by: Anton Baskanov <baskanov@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-02-01 19:15:29 +09:00
Nikolay Sivov 4c80ec023d strmbase: Switch to void for QualityControlImpl_Destroy().
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2015-10-20 00:30:37 +09:00
Nikolay Sivov 9385e9f78a strmbase: Remove redundant null pointer check.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2015-10-20 00:30:37 +09:00
Nikolay Sivov 7dd00af747 strmbase: Remove some redundant return value initializers.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2015-10-20 00:30:37 +09:00
Nikolay Sivov a59e3e0f4e strmbase: Avoid using HRESULT codes as BOOL value (PVS-Studio).
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2015-10-16 17:59:45 +09:00
André Hentschel 72eefcb5c0 strmbase: Remove unused macro. 2015-02-23 15:25:57 +09:00
Michael Stefaniuc 9fb737de34 strmbase: Handle the failure of CoCreateInstance (PVS-Studio). 2015-01-22 12:04:13 +01:00
Michael Stefaniuc 0f2eca579d strmbase: Remove an unused assignment (PVS-Studio). 2015-01-22 12:04:10 +01:00
Michael Stefaniuc 762eb67698 strmbase: Remove an unused variable (PVS-Studio). 2015-01-13 19:53:57 +01:00
Amine Khaldi 381bca49e0 strmbase: Remove unused InputPin_Vtbl, OutputPin_Vtbl and impl_BaseInputPin_from_BasePin() (Clang). 2014-10-21 20:00:23 +09:00
Amine Khaldi 9a26f0f0d9 strmbase: Remove unused TransformFilter_Vtbl (Clang). 2014-10-20 21:33:39 +09:00
Nikolay Sivov 5bbc402826 strmbase: Remove noop assignment (PVS-Studio). 2014-08-25 10:55:21 +02:00
Erich E. Hoover a9325037b5 strmbase: Fix race condition on InputPin_EndOfStream between csRenderLock and filter.csFilter. 2014-08-05 17:41:21 +02:00
Erich E. Hoover 47425a5801 strmbase: Fix race condition on InputPin_EndFlush between csRenderLock and filter.csFilter. 2014-08-05 17:41:18 +02:00
Erich E. Hoover c22547792a strmbase: Fix race condition on InputPin_BeginFlush between csRenderLock and filter.csFilter. 2014-08-05 17:41:15 +02:00
Thomas Faber 4ea1f35777 strmbase: Separate BasePin destructors from Release. 2014-07-28 17:23:06 -05:00
Thomas Faber 3dbcadc278 strmbase: Destroy base class after child class. 2014-07-21 11:49:59 +02:00
Thomas Faber 992f5345ed strmbase: Separate BaseFilter destructor from Release. 2014-07-21 11:49:53 +02:00
Michael Stefaniuc 974e5af3fe strmbase: Return the iface instead of the object pointer. 2014-02-20 11:18:46 +01:00
Jacek Caban 289bdc4f45 strmbase: Store BasePinFuncTable inside Base*PinFuncTable structs. 2014-01-06 20:47:02 +01:00
Alexandre Julliard af6db67d6f makefiles: Get rid of the MAKE_IMPLIB_RULES variable. 2014-01-02 12:12:59 +01:00
Alexandre Julliard 1cd2786f92 makefiles: Generate cross-compile rules automatically when supported. 2014-01-01 21:28:28 +01:00
Piotr Caban d6f8d8f25b strmbase: Don't pass NULL fetched parameter in BaseOutputPinImpl_Connect on external IPin implementation. 2013-11-26 14:39:56 +01:00
Frédéric Delanoy 50d45a8abc strmbase: Use BOOL type where appropriate. 2013-11-26 10:15:57 +01:00
Piotr Caban 5c8339df4a strmbase: Add structure size parameter in BaseInputPin_Construct function. 2013-11-25 16:28:14 +01:00
Alexandre Julliard e318b4a59c makefiles: Move the static library rules to the global Make.rules file. 2013-10-09 11:25:04 +02:00
Christian Costa 163943058c strmbase: Display iface in traces and new ref in AddRef and Release for IEnumPins. 2013-06-04 10:14:20 +02:00
Marcus Meissner 2ba014bf40 strmbase: Fixed user-after-free (Coverity). 2013-03-25 14:07:35 +01:00
Alessandro Pignotti 0029bbcf48 strmbase: Frame scheduling should use IMediaSample::GetTime. 2013-03-06 11:46:13 +01:00
Alessandro Pignotti f53fa4f05b strmbase: Remove code duplicated by every user of ISeekingPassThruImpl. 2013-03-05 09:50:02 +01:00
Damjan Jovanovic 7f767bb195 strmbase: Store and use the chosen IMemAllocator instead of getting it from the input pin. 2013-01-15 12:18:04 +01:00
Christian Costa 3070dcee3b strmbase: Simplify IEnumMediaTypesImpl_QueryInterface and turn FIXME into WARN. 2012-11-23 14:43:41 +01:00
Christian Costa 9bde31b3ee strmbase: Display iface in TRACEs. 2012-11-23 14:43:36 +01:00
Christian Costa 930c9dd972 strmbase: Display new ref in AddRef and Release for IEnumMediaTypes. 2012-11-23 14:43:31 +01:00
Christian Costa b8a7ead3a3 strmbase: Don't forget to add ref pUnk in CopyMediaType when pbFormat is null. 2012-11-22 17:17:19 +01:00
Christian Costa 44c6ca992e strmbase: Use FreeMediaType instead of freeing media type by hand and forgetting pUnk release. 2012-11-22 17:16:48 +01:00
Michael Stefaniuc c4cdc50739 strmbase: COM cleanup for the IClassFactory iface. 2012-08-20 15:00:05 +02:00
Jacek Caban db82997560 strmbase: Use proper helpers for iface calls. 2012-08-15 12:18:43 +02:00
Aric Stewart c736af74dc strmbase: do not lock in BaseOutputPinImpl_GetDeliveryBuffer the MemInputPin will lock in the required places. 2012-05-14 12:06:14 +02:00
Jacek Caban 942f2ce792 include: Use widl to take care of nameless structs and unions. 2012-05-14 12:04:17 +02:00
Francois Gouget fcda2bd929 strmbase: The strmbase debug channel is unused in a couple of files so remove it. 2012-05-04 18:08:34 +02:00
Michael Stefaniuc 0f46f7538a strmbase: Print the debug string and not the pointer to it. 2012-05-03 20:44:11 +02:00
Aric Stewart a01d6be69f strmbase: Implement BasicAudio. 2012-04-30 11:00:20 +02:00
Aric Stewart f38318705c strmbase: Track internal window styles in baseWindow.WindowStyles. 2012-04-26 19:28:03 +02:00
Aric Stewart 6b9cfd2629 strmbase: get_VideoHeight should always have a positive height. 2012-04-25 12:13:51 +02:00
Aric Stewart 209bc696c1 strmbase: We cannot hold the RenderLock during QualityControlRender_WaitFor. 2012-04-24 11:30:19 +02:00
Aric Stewart d080774e75 strmbase: Have PassThruImpl use BaseDispatch. 2012-04-20 19:15:15 +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
Aric Stewart a37d4b79ab strmbase: Implement BaseDispatch. 2012-04-20 19:15:02 +02:00
Marcus Meissner b964758543 strmbase: Use correct *ppv (Coverity). 2012-04-16 12:07:25 +02:00
Michael Stefaniuc 8a8ba19eaf strmbase: Remove break after return (Smatch). 2012-04-16 11:51:29 +02:00
Aric Stewart 51e3834bfb strmbase: Add IMediaPosition implementation to PosPassThru. 2012-04-04 17:49:04 +02:00
Aric Stewart 109ec4bbab strmbase: Fix issues with new quality control implementation in TransformFilter. 2012-04-04 17:49:04 +02:00
Aric Stewart 9846d02457 strmbase: COM cleanup for PosPassThru. 2012-04-03 12:29:20 +02:00
Aric Stewart 56477075c2 strmbase: Remove QualityControlImpl from the general strmbase.h.
Quality Control things are not part of the standard strmbase library set.
2012-04-03 12:19:17 +02:00
Aric Stewart 54eafc73e5 strmbase: Implement renderer quality control into the base renderer. 2012-04-03 12:10:33 +02:00
Aric Stewart e1a72011e5 strmbase: More additions to BaseRenderer for video renderers. 2012-04-02 14:01:41 +02:00
Aric Stewart 662220f77f strmbase: Expand BaseRenderer implementation. 2012-04-02 14:01:23 +02:00
Christian Costa 67d429f0f3 strmbase: Display dll in which we are searching a class to instanciate. 2012-03-29 20:49:26 +02:00
Aric Stewart eccd9770cc strmbase: Basic BaseRenderer implementation. 2012-03-29 20:49:16 +02:00
Aric Stewart 4ae6f928aa strmbase: Implement BaseControlVideo. 2012-03-29 20:49:16 +02:00
Aric Stewart 73efbff484 strmbase: Implement BaseControlWindow. 2012-03-29 20:49:15 +02:00
Aric Stewart a179b50c9b strmbase: Add beginnings of BaseWindow. 2012-03-28 19:05:06 +02:00
Aric Stewart f1c9bd444c strmbase: COM cleanup for TransformFilter. 2012-03-27 11:40:44 +02:00
Aric Stewart d3c5b2c4f1 strmbase: COM cleanup for cleanup SourceSeeking. 2012-03-26 18:15:50 +02:00
Aric Stewart eb5d8b969f strmbase: COM cleanup for BasePin, BaseInputPin, and BaseOutputPin. 2012-03-26 18:15:49 +02:00
Aric Stewart 29d3c75442 strmbase: COM cleanup for BaseFilter. 2012-03-26 18:15:48 +02:00
Michael Stefaniuc b485f6c056 strmbase: Print the debug string and not the pointer to it. 2012-03-26 18:15:30 +02:00
Christian Costa 9ee4809dc3 strmbase: Allow constructor function to be NULL but display an error saying we don't implement the CLSID. 2012-03-15 20:18:09 +01: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
Aric Stewart e2200b31d6 strmbase: Do not hold the csReceive lock when calling the transform's Receive function. 2012-01-23 17:05:11 +01:00
Aric Stewart b32b1a924e strmbase: In the TransformFilter add a critical section that protects the streaming state. 2012-01-17 11:49:28 +01:00
Francois Gouget 5f88f362ea dlls: Standardize on 'static const WCHAR' for our Unicode string literals.
Do the same for the corresponding Ansi strings.
2011-12-20 10:16:09 +01:00
Francois Gouget 7b8d9e84ac strmbase: Avoid hardcoding the Unicode string literal lengths. 2011-12-16 17:40:46 +01:00
Francois Gouget 76b64d9a4a strmbase: Unset Spare[0] before deleting non-static critical sections. 2011-11-14 15:25:27 +01:00
Frédéric Delanoy 7e309601f3 dlls: Assorted spelling fixes. 2011-08-03 14:15:50 +02:00
Alexandre Julliard db7f8e5749 makefiles: Make MODULE contain the full module name also for static libraries. 2011-07-09 21:13:36 +02:00
Gerald Pfeifer 8bdcf75b09 strmbase: Mark TransformFilter_QualityControlImpl_Notify static. 2011-07-04 20:22:44 +02:00
Marcus Meissner 67ae245a77 strmbase: Move NULL check up a bit (Coverity). 2011-06-27 13:27:17 -05:00
Jörg Höhle 155e4fb6d3 strmbase: Use !list_empty() instead of list_count() > 0. 2011-06-16 11:57:27 +02:00
Marcus Meissner 8377e274a2 strmbase: Removed superflous NULL check (Coverity). 2011-06-14 15:23:01 +02:00
Aric Stewart ed71339d17 strmbase: Add OutputQueue_EOS implementation. 2011-04-06 12:05:08 +02:00
Aric Stewart 928994d986 strmbase: Create OutputQueue for queuing outgoing samples. 2011-04-06 12:05:08 +02:00
Francois Gouget 0eb6e40720 Assorted spelling fixes. 2010-12-13 12:43:29 +01:00
Michael Stefaniuc adfc457234 strmbase: Use an iface instead of a vtbl pointer in IEnumMediaTypesImpl. 2010-12-09 12:24:25 +01:00
Michael Stefaniuc f25a867c87 strmbase: Use an iface instead of a vtbl pointer in IEnumPinsImpl. 2010-12-09 12:21:08 +01:00
Maarten Lankhorst 3f9abe2c28 strmbase: Use advise functions in WaitFor. 2010-12-06 19:16:07 +01:00
Maarten Lankhorst 4416ef9de6 strmbase: Fix reference leak of enumpins. 2010-12-05 12:23:53 +01:00
Maarten Lankhorst 82129d7ad8 strmbase: Fix qos. 2010-11-29 19:43:32 +01:00
Maarten Lankhorst 95897b6819 strmbase: Add support for rendering algorithms to quality control. 2010-11-10 12:16:09 +01:00
Maarten Lankhorst 8363436ea8 strmbase: Silence harmless fixme. 2010-11-10 12:13:54 +01:00
Maarten Lankhorst 5955a349c6 strmbase: Add support for IQualityControl to transform filter. 2010-11-08 13:30:27 +01:00
Maarten Lankhorst 81763bf2ba strmbase: Forward IQualityControl on output pin to base filter. 2010-11-08 13:30:27 +01:00
Maarten Lankhorst 0a4ee68168 strmbase: Add support for IQualityControl. 2010-11-08 13:30:26 +01:00
Maarten Lankhorst 4857772bf2 strmbase: Allow NULL for time format in ConvertTimeFormat. 2010-11-05 17:15:35 +01:00
Michael Stefaniuc ac45ab3d8f strmbase: Remove duplicate 'const' in strmbase.h. 2010-11-03 11:08:55 +01:00
Aric Stewart 7e8751b2e1 strmbase: More properly standardized pin implementations for NewSegment. 2010-11-01 14:53:29 +01:00
Aric Stewart 2c3bc2cf56 strmbase: Implement STRMBASE_DllGetClassObject and STRMBASE_DllCanUnloadNow. 2010-10-20 18:37:09 +02:00
Aric Stewart e479273aca strmbase: Implement OLE registration in AMovieDllRegisterServer2. 2010-10-20 18:37:09 +02:00
Aric Stewart 58468ef152 strmbase: Define STRMBASE_DllMain. 2010-10-20 18:37:09 +02:00