summaryrefslogtreecommitdiffstats
path: root/src/multimediawidgets
diff options
context:
space:
mode:
Diffstat (limited to 'src/multimediawidgets')
-rw-r--r--src/multimediawidgets/qpaintervideosurface.cpp12
1 files changed, 12 insertions, 0 deletions
diff --git a/src/multimediawidgets/qpaintervideosurface.cpp b/src/multimediawidgets/qpaintervideosurface.cpp
index 87757914f..e1dccb2bd 100644
--- a/src/multimediawidgets/qpaintervideosurface.cpp
+++ b/src/multimediawidgets/qpaintervideosurface.cpp
@@ -247,6 +247,8 @@ public:
bool isFormatSupported(const QVideoSurfaceFormat &format) const;
+ void stop();
+
QAbstractVideoSurface::Error setCurrentFrame(const QVideoFrame &frame);
QAbstractVideoSurface::Error paint(
@@ -351,6 +353,12 @@ bool QVideoSurfaceGLPainter::isFormatSupported(const QVideoSurfaceFormat &format
return false;
}
+
+void QVideoSurfaceGLPainter::stop()
+{
+ m_frame = QVideoFrame();
+}
+
QAbstractVideoSurface::Error QVideoSurfaceGLPainter::setCurrentFrame(const QVideoFrame &frame)
{
m_frame = frame;
@@ -832,6 +840,8 @@ void QVideoSurfaceArbFpPainter::stop()
m_textureCount = 0;
m_programId = 0;
m_handleType = QAbstractVideoBuffer::NoHandle;
+
+ QVideoSurfaceGLPainter::stop();
}
QAbstractVideoSurface::Error QVideoSurfaceArbFpPainter::paint(
@@ -1176,6 +1186,8 @@ void QVideoSurfaceGlslPainter::stop()
m_textureCount = 0;
m_handleType = QAbstractVideoBuffer::NoHandle;
+
+ QVideoSurfaceGLPainter::stop();
}
QAbstractVideoSurface::Error QVideoSurfaceGlslPainter::paint(