Commit Graph

1529 Commits

Author SHA1 Message Date
Zebediah Figura 05a8d45e8a quartz/filtergraph: Iterate over all filters in state change methods.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-02-20 16:23:09 +01:00
Zebediah Figura e0d5e16d7e quartz/filtergraph: Don't check for cyclic connections in IFilterGraph2::Connect().
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-02-20 16:23:09 +01:00
Zebediah Figura 98a0c1dac1 quartz/filtergraph: Maintain a topologically sorted list of filters.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-02-20 16:23:09 +01:00
Zebediah Figura 7a392c55d6 quartz/filtergraph: Use IFilterGraph2::ConnectDirect() instead of calling IPin::Connect().
It will need to do some bookkeeping.

Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-02-20 16:23:09 +01:00
Zebediah Figura 436dbfd939 quartz/tests: Add a test for cyclic connections.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-02-20 16:23:09 +01:00
Zebediah Figura 84bede2b0d strmbase: Don't treat GUID_NULL in enumerated types as a wildcard.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-02-17 09:39:30 +01:00
Zebediah Figura 7c35fccbcc strmbase: Don't check the subtype when determining if a media type is partial.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-02-17 09:39:28 +01:00
Zebediah Figura 4f1df5246c strmbase: Also match a GUID_NULL formattype as a wildcard in source_Connect().
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-02-17 09:39:25 +01:00
Zebediah Figura 5c057693c8 quartz/filesource: Zero-initialize the file source filter.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-02-16 20:49:13 +01:00
Zebediah Figura 6c8f52c4fb quartz/vmr9: Fix copying from the d3d9 surface if the pitch doesn't match the width.
Spotted by Henri Verbeet.

Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-02-12 20:20:27 +01:00
Zebediah Figura 5f9ce6870c quartz/videorenderer: Track the current sample locally.
Only the video renderer uses it.

Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-02-11 08:56:37 +01:00
Zebediah Figura a4e8e4dfd9 quartz/videorenderer: Clean up VideoRenderer_GetStaticImage().
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-02-11 08:56:37 +01:00
Zebediah Figura 9b1ba34149 quartz/vmr9: Reimplement VMR9_GetStaticImage().
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-02-11 08:48:12 +01:00
Zebediah Figura 309f0a0d6c quartz/tests: Add some tests for IBasicVideo::GetCurrentImage().
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-02-11 08:48:07 +01:00
Zebediah Figura ae5f945442 quartz: Remove no longer necessary call to CoInitialize().
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-02-11 08:44:09 +01:00
Jacek Caban c4d77976ac quartz: Remove unused functions.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-02-07 21:28:24 +01:00
Zebediah Figura 44c91bcbb0 strmbase: Always return VFW_E_TYPE_NOT_ACCEPTED if the pin_query_accept() callback fails.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-02-07 21:28:22 +01:00
Jacek Caban bf95bccfaf quartz: Fix hex digit checks in process_pattern_string.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-02-06 21:40:22 +01:00
Zebediah Figura 2acd63e340 quartz/tests: Add tests for MPEG splitter pin connection.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-02-05 08:44:03 +01:00
Zebediah Figura d749d50ada quartz/tests: Improve tests for AVI splitter filter state.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-02-05 08:44:00 +01:00
Zebediah Figura 4f8c54b5e9 quartz/tests: Add tests for AVI splitter pin connection.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-02-05 08:43:58 +01:00
Zebediah Figura 76b6bcbf98 quartz/filesource: Accept any non-null subtype.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-02-04 09:33:05 +01:00
Zebediah Figura f31815f760 quartz/tests: Add some tests for file source pin connection.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-02-04 09:33:03 +01:00
Zebediah Figura b9a5b7a3b7 quartz/tests: Use BaseOutputPinImpl_AttemptConnection().
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-02-04 09:33:01 +01:00
Zebediah Figura 570e0a0d3b quartz/filtergraph: Implement IFilterGraph2::ReconnectEx().
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-02-04 09:32:58 +01:00
Zebediah Figura 7a0b6a95f6 quartz/tests: Add tests for IFilterGraph::Reconnect().
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-02-04 09:32:55 +01:00
Zebediah Figura 4a9893d4fc strmbase: Rename the "pClock" member of struct strmbase_filter to "clock".
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-01-31 10:20:04 +01:00
Zebediah Figura eea01d8e8b quartz: Introduce a helper to trace reference time.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-01-31 10:19:19 +01:00
Zebediah Figura f78975ba28 quartz: Trace the requested properties in IMemAllocator::SetProperties().
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-01-30 11:21:23 +01:00
Zebediah Figura 506b8a59ee quartz/filesource: Store the media type directly in the AsyncReader structure.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-01-30 11:21:13 +01:00
Zebediah Figura 58b60edf53 quartz/filesource: Clean up FileAsyncReader_RequestAllocator().
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-01-30 11:21:09 +01:00
Zebediah Figura abac070387 quartz/filesource: Use a completion port to handle asynchronous requests.
Thus simplifying the code and allowing us to handle more than 63 at once.

Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-01-30 11:21:04 +01:00
Zebediah Figura 0820b125e2 strmbase: Return S_FALSE from IEnumPins::Next() when the pin count changes.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-01-29 09:46:02 +01:00
Zebediah Figura 87e02cb5fc winegstreamer: Implement IPin::QueryAccept() for the MPEG splitter source.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-01-27 14:39:09 +01:00
Zebediah Figura 0401213770 winegstreamer: Implement IPin::QueryAccept() for the AVI splitter source.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-01-27 14:39:06 +01:00
Zebediah Figura 71967608a3 winegstreamer: Implement IPin::QueryAccept() for the WAVE parser source.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-01-24 17:23:01 +01:00
Zebediah Figura 44ef517712 quartz/tests: Add more tests for parser media types.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-01-24 17:22:58 +01:00
Zebediah Figura 0a9acdefe8 winegstreamer: Fix pin enumeration order for the AVI and WAVE parsers.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-01-24 17:22:56 +01:00
Zebediah Figura 7770e0bbaf quartz: Use wide character string literals.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-01-23 09:27:00 +01:00
Zebediah Figura c947dab09d quartz: Simplify FilterMapper_UnregisterPin().
Avoid some unnecessary allocations.

Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-01-23 09:26:58 +01:00
Zebediah Figura 021354c554 quartz: Simplify FilterMapper_UnregisterFilter().
Avoid some unnecessary allocations.

Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-01-23 09:26:56 +01:00
Zebediah Figura e44948a2c2 quartz: Simplify FilterMapper_RegisterPinType().
Avoid some unnecessary allocations.

Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-01-23 09:26:54 +01:00
Zebediah Figura 4897610866 quartz: Simplify FilterMapper_RegisterPin().
Avoid some unnecessary allocations.

Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-01-23 09:26:51 +01:00
Zebediah Figura efb5c108d6 quartz: Simplify FilterMapper_RegisterFilter().
Avoid some unnecessary allocations.

Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-01-22 11:23:58 +01:00
Zebediah Figura 5a0429e5d7 quartz: Simplify FilterMapper3_RegisterFilter().
Avoid some unnecessary allocations.

Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-01-22 10:21:17 +01:00
Zebediah Figura 071a58e847 quartz: Simplify FilterMapper3_UnregisterFilter().
Avoid some unnecessary allocations.

Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-01-22 10:21:14 +01:00
Zebediah Figura 82abd74351 quartz: Simplify FilterMapper3_CreateCategory().
Avoid some unnecessary allocations.

Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-01-22 10:21:11 +01:00
Zebediah Figura 228b8b984b quartz: Simplify FilterGraph2_AddFilter().
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-01-22 10:21:07 +01:00
Gabriel Ivăncescu c87258c46b quartz/tests: Test video window parent's WM_DESTROY notification.
Signed-off-by: Gabriel Ivăncescu <gabrielopcode@gmail.com>
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-01-15 10:31:38 +01:00
Gabriel Ivăncescu 14435a6d31 quartz: Reset the advise thread's timeout on each iteration.
Fixes a regression introduced by
63a6b308e9. Because the timeout value was
always shrinked, it quickly went to 0 and then the entire advise thread
used 100% of a CPU core in applications such as Media Player Classic by
basically becoming a busy loop.

Signed-off-by: Gabriel Ivăncescu <gabrielopcode@gmail.com>
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-01-02 17:40:15 +01:00