mirror of
https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs.git
synced 2025-09-02 09:43:48 +00:00
threadshare: fix flush for ts-intersrc
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/2400>
This commit is contained in:
parent
ecc198e5c2
commit
21578ccb83
1 changed files with 2 additions and 5 deletions
|
@ -493,11 +493,7 @@ impl TaskImpl for InterSrcTask {
|
||||||
|
|
||||||
async fn stop(&mut self) -> Result<(), gst::ErrorMessage> {
|
async fn stop(&mut self) -> Result<(), gst::ErrorMessage> {
|
||||||
gst::log!(CAT, obj = self.elem, "Stopping task");
|
gst::log!(CAT, obj = self.elem, "Stopping task");
|
||||||
|
self.flush_start().await?;
|
||||||
self.dataqueue.stop();
|
|
||||||
self.dataqueue.clear();
|
|
||||||
self.got_first_item = false;
|
|
||||||
|
|
||||||
gst::log!(CAT, obj = self.elem, "Task stopped");
|
gst::log!(CAT, obj = self.elem, "Task stopped");
|
||||||
|
|
||||||
Ok(())
|
Ok(())
|
||||||
|
@ -506,6 +502,7 @@ impl TaskImpl for InterSrcTask {
|
||||||
async fn flush_start(&mut self) -> Result<(), gst::ErrorMessage> {
|
async fn flush_start(&mut self) -> Result<(), gst::ErrorMessage> {
|
||||||
gst::log!(CAT, obj = self.elem, "Starting task flush");
|
gst::log!(CAT, obj = self.elem, "Starting task flush");
|
||||||
|
|
||||||
|
self.dataqueue.stop();
|
||||||
self.dataqueue.clear();
|
self.dataqueue.clear();
|
||||||
self.got_first_item = false;
|
self.got_first_item = false;
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue