diff options
Diffstat (limited to 'src/plugins/avfoundation')
-rw-r--r-- | src/plugins/avfoundation/camera/avfimagecapturecontrol.mm | 3 | ||||
-rw-r--r-- | src/plugins/avfoundation/mediaplayer/avfvideorenderercontrol.mm | 6 |
2 files changed, 6 insertions, 3 deletions
diff --git a/src/plugins/avfoundation/camera/avfimagecapturecontrol.mm b/src/plugins/avfoundation/camera/avfimagecapturecontrol.mm index dbaf3ed41..55a20b1bd 100644 --- a/src/plugins/avfoundation/camera/avfimagecapturecontrol.mm +++ b/src/plugins/avfoundation/camera/avfimagecapturecontrol.mm @@ -48,7 +48,6 @@ #include <QtCore/qbuffer.h> #include <QtConcurrent/qtconcurrentrun.h> #include <QtGui/qimagereader.h> -#include <private/qvideoframe_p.h> QT_USE_NAMESPACE @@ -214,7 +213,7 @@ void AVFImageCaptureControl::makeCapturePreview(CaptureRequest request, QTransform transform; transform.rotate(rotation); - Q_EMIT imageCaptured(request.captureId, qt_imageFromVideoFrame(frame).transformed(transform)); + Q_EMIT imageCaptured(request.captureId, frame.image().transformed(transform)); request.previewReady->release(); } diff --git a/src/plugins/avfoundation/mediaplayer/avfvideorenderercontrol.mm b/src/plugins/avfoundation/mediaplayer/avfvideorenderercontrol.mm index e06ddc4b0..63bdee4f5 100644 --- a/src/plugins/avfoundation/mediaplayer/avfvideorenderercontrol.mm +++ b/src/plugins/avfoundation/mediaplayer/avfvideorenderercontrol.mm @@ -177,7 +177,11 @@ void AVFVideoRendererControl::setSurface(QAbstractVideoSurface *surface) #endif //Check for needed formats to render as OpenGL Texture - m_enableOpenGL = m_surface->supportedPixelFormats(QAbstractVideoBuffer::GLTextureHandle).contains(QVideoFrame::Format_BGR32); + auto handleGlEnabled = [this] { + m_enableOpenGL = m_surface->supportedPixelFormats(QAbstractVideoBuffer::GLTextureHandle).contains(QVideoFrame::Format_BGR32); + }; + handleGlEnabled(); + connect(m_surface, &QAbstractVideoSurface::supportedFormatsChanged, this, handleGlEnabled); //If we already have a layer, but changed surfaces start rendering again if (m_playerLayer && !m_displayLink->isActive()) { |