Zebediah Figura
1564d65868
strmbase: Inline the strmbase_qc structure into struct strmbase_renderer.
...
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-03-10 11:07:38 +01:00
Zebediah Figura
b9393d08e1
strmbase: Do not pretend to drop samples.
...
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-03-10 11:07:35 +01:00
Zebediah Figura
c7d65913da
strmbase: Remove the unused "avg_render", "start", and "stop" fields from struct strmbase_renderer.
...
This corresponds to part of GStreamer commit dc0ed9a5ebadbc5b0e9baac215b6b1714cf23b22.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-03-09 12:00:00 +01:00
Zebediah Figura
92aacce542
strmbase: Remove the unused "dropped" field from struct strmbase_qc.
...
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-03-09 11:59:57 +01:00
Zebediah Figura
09081737ef
strmbase: Remove the unused "rendered" field from struct strmbase_qc.
...
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-03-09 11:59:54 +01:00
Zebediah Figura
4d400a71fa
strmbase: Remove the unused "qos_handled" field from struct strmbase_qc.
...
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-03-09 11:59:52 +01:00
Zebediah Figura
4f72fbef11
strmbase: Merge qualitycontrol.c into renderer.c.
...
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-03-09 11:59:48 +01:00
Zebediah Figura
480ece6a15
strmbase: Acquire the streaming lock in sink_EndOfStream().
...
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-01-20 11:11:22 +01:00
Zebediah Figura
32d339829e
strmbase: Acquire the streaming lock in MemInputPin_Receive().
...
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-01-20 11:11:20 +01:00
Zebediah Figura
e468aab053
strmbase: Move strmbase_renderer.csRenderLock into the strmbase_filter structure.
...
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-01-19 08:52:34 +01:00
Zebediah Figura
6f05c69210
strmbase: Don't drop csRenderLock in BaseRenderer_Receive().
...
We don't grab stream_cs to change any variables checked here, except to reset
flush_event, and that cannot result in a deadlock.
The only possible deadlocks here are:
(1) between this function and EndOfStream(), which is correct, as the two
should presumably be serialized;
(2) between this function and EndFlush(); however, in that case we expect
BeginFlush() first, which will unblock the streaming thread.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-12-01 10:13:38 +01:00
Zebediah Figura
d3ef27f756
quartz/vmr9: Signal state change completion only after PresentImage() has been called.
...
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-07-21 15:16:17 +02:00
Zebediah Figura
8803a81b33
strmbase: Wait for presentation time after rendering the first sample.
...
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-07-21 15:16:14 +02:00
Zebediah Figura
e4ebf09f4f
strmbase: Get rid of BaseRendererImpl_Receive().
...
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-07-21 15:16:12 +02:00
Zebediah Figura
af50b499cb
strmbase: Remove some no longer used callbacks.
...
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-07-20 20:17:20 +02:00
Zebediah Figura
a9fbbda429
strmbase: Store the quality control object directly in strmbase_renderer.
...
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-07-17 23:17:07 +02:00
Zebediah Figura
461a928f14
strmbase: Set the IQualityControl vtbl in QualityControlImpl_Create().
...
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-07-17 23:17:05 +02:00
Zebediah Figura
38f5f36462
strmbase: Make the pin_get_media_type() callback optional.
...
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-04-22 08:29:00 +02:00
Zebediah Figura
0777941eaf
strmbase: Return void from strmbase_renderer_init().
...
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-03-30 12:09:09 +02:00
Zebediah Figura
191ae9f3ff
strmbase: Use strmbase_passthrough directly in strmbase_renderer.
...
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-03-13 09:42:36 +01:00
Zebediah Figura
fb45f9a806
strmbase/renderer: Return S_FALSE when pausing the stream if approprate.
...
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-02-20 16:23:09 +01:00
Zebediah Figura
fa72a28c51
strmbase: Get rid of current sample tracking.
...
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
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
6f71e2c48d
strmbase: Store the filter name and graph directly in the strmbase_filter structure.
...
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-01-31 10:19:52 +01:00
Zebediah Figura
a6aea1cecd
strmbase: Get rid of the "vtbl" parameter to strmbase_sink_init().
...
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-12-13 09:57:00 +01:00
Zebediah Figura
a43d81733c
strmbase/renderer: Use base sink streaming methods.
...
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-12-13 09:57:00 +01:00
Zebediah Figura
7f57286d73
strmbase/renderer: Use base sink connection methods.
...
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-12-10 20:59:19 +01:00
Zebediah Figura
d14d19661a
strmbase: Add callbacks for sink (dis)connection.
...
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-12-10 20:59:19 +01:00
Zebediah Figura
f595d9bdff
strmbase: Pass an AM_MEDIA_TYPE pointer to CompleteConnect().
...
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-12-10 20:59:19 +01:00
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
a4131ca625
strmbase: Swap the lock order in IPin::EndFlush().
...
This more closely resembles the threading model prescribed by the DirectX SDK
documentation. In particular, the page "Flushing Data" recommends that
IPin::BeginFlush() do the following steps in order:
1. take the filter lock
2. signal the streaming thread to complete
3. take the streaming lock, if necessary
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-11-29 08:23:45 +01:00
Zebediah Figura
4be014239c
strmbase: Don't hold the streaming lock in IPin::BeginFlush().
...
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-11-28 08:34:03 +01:00
Zebediah Figura
4d221c3108
strmbase: Get rid of BaseRendererImpl_EndOfStream().
...
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-11-28 08:33:59 +01:00
Zebediah Figura
dc8bd4598c
strmbase: Get rid of BaseRendererImpl_EndFlush().
...
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-11-28 08:33:56 +01:00
Zebediah Figura
0011be7fdd
strmbase: Get rid of BaseRendererImpl_BeginFlush().
...
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-11-28 08:33:52 +01:00
Zebediah Figura
09b39646b0
quartz/dsoundrender: Avoid taking the filter lock in IPin::EndOfStream().
...
IPin::EndOfStream() is called from a streaming thread. The streaming thread
should never take the filter lock.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-11-28 08:33:44 +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
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
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
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
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