diff options
author | Artem Dyomin <artem.dyomin@qt.io> | 2023-07-07 22:00:45 +0200 |
---|---|---|
committer | Artem Dyomin <artem.dyomin@qt.io> | 2023-07-10 15:36:44 +0000 |
commit | b586957c43cda273d54a71690e1abfca93aa264f (patch) | |
tree | 2c06df2be226fe621a217e8bc27b48ad8e42d37f /src/plugins/multimedia/ffmpeg/playbackengine/qffmpegrenderer.cpp | |
parent | 0d0ed1b411143141cfb42bb4299c7bd0085e04cb (diff) |
Filter queued events from outdated objects in mediaplayer
The flakiness appeared in tests, the patch fixes it.
The idea is having an unique id for each playback engine object and
filter some events by id.
Pick-to: 6.6 6.5
Change-Id: I59dda5dabc4e5485b401463b96ec06cdb8100aad
Reviewed-by: Artem Dyomin <artem.dyomin@qt.io>
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Diffstat (limited to 'src/plugins/multimedia/ffmpeg/playbackengine/qffmpegrenderer.cpp')
-rw-r--r-- | src/plugins/multimedia/ffmpeg/playbackengine/qffmpegrenderer.cpp | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/src/plugins/multimedia/ffmpeg/playbackengine/qffmpegrenderer.cpp b/src/plugins/multimedia/ffmpeg/playbackengine/qffmpegrenderer.cpp index 123dee5a4..56bfd9092 100644 --- a/src/plugins/multimedia/ffmpeg/playbackengine/qffmpegrenderer.cpp +++ b/src/plugins/multimedia/ffmpeg/playbackengine/qffmpegrenderer.cpp @@ -154,7 +154,7 @@ void Renderer::doNextStep() const auto loopIndex = frame.loopOffset().index; if (m_loopIndex < loopIndex) { m_loopIndex = loopIndex; - emit loopChanged(frame.loopOffset().pos, m_loopIndex); + emit loopChanged(id(), frame.loopOffset().pos, m_loopIndex); } emit frameProcessed(frame); @@ -179,7 +179,7 @@ void Renderer::changeRendererTime(std::chrono::microseconds offset) const auto now = Clock::now(); const auto pos = m_timeController.positionFromTime(now); m_timeController.sync(now + offset, pos); - emit synchronized(now + offset, pos); + emit synchronized(id(), now + offset, pos); } } // namespace QFFmpeg |