diff --git a/src/directrenderer.cpp b/src/directrenderer.cpp index a207cf7657bf487672bf360d8d4b2f231829f10a..b692d41efd0baa3bce9069e9aa78104064250604 100644 --- a/src/directrenderer.cpp +++ b/src/directrenderer.cpp @@ -115,9 +115,11 @@ DirectRenderer::stopRendering() void DirectRenderer::update(const QSize& res, const QString&) { + stopRendering(); Renderer::update(res); VideoManager::instance().registerSinkTarget(id(), pimpl_->target); + startRendering(); } Frame diff --git a/src/shmrenderer.cpp b/src/shmrenderer.cpp index ab7f9e175a40cdec43116edd9f3268259a7a3587..8bbd2947d0e471805876b354991f25119edbd96a 100644 --- a/src/shmrenderer.cpp +++ b/src/shmrenderer.cpp @@ -245,6 +245,7 @@ ShmRenderer::~ShmRenderer() void ShmRenderer::update(const QSize& res, const QString& shmPath) { + Q_EMIT stopped(); Renderer::update(res); if (!pimpl_->thread.isRunning()) @@ -252,6 +253,7 @@ ShmRenderer::update(const QSize& res, const QString& shmPath) pimpl_->path = shmPath; VideoManager::instance().startShmSink(id(), true); + Q_EMIT started(); } Frame