package=native_qt
-$(package)_version=6.6.1
+$(package)_version=6.6.2
$(package)_download_path=https://download.qt.io/official_releases/qt/6.6/$($(package)_version)/submodules
$(package)_suffix=everywhere-src-$($(package)_version).tar.xz
$(package)_file_name=qtbase-$($(package)_suffix)
-$(package)_sha256_hash=450c5b4677b2fe40ed07954d7f0f40690068e80a94c9df86c2c905ccd59d02f7
+$(package)_sha256_hash=b89b426b9852a17d3e96230ab0871346574d635c7914480a2a27f98ff942677b
$(package)_qt_libs=corelib network widgets gui plugins testlib
$(package)_patches = dont_hardcode_pwd.patch
$(package)_patches += fast_fixed_dtoa_no_optimize.patch
$(package)_patches += root_CMakeLists.txt
$(package)_qttools_file_name=qttools-$($(package)_suffix)
-$(package)_qttools_sha256_hash=4939105a7345ab4e19e7caee8654a836e65bd41910359623e0f233f3aff0914a
+$(package)_qttools_sha256_hash=e6d49e9f52111287f77878ecb8b708cce682f10b03ba2476d9247603bc6c4746
$(package)_qtsvg_file_name=qtsvg-$($(package)_suffix)
-$(package)_qtsvg_sha256_hash=248deb56d26a463cf3162f530358ccf90cfb654bbf518bb35ddf81b205e09228
+$(package)_qtsvg_sha256_hash=5a231d59ef1b42bfbaa5174d4ff39f8e1b4ba070ef984a70b069b4b2576d8181
$(package)_qtmultimedia_file_name=qtmultimedia-$($(package)_suffix)
-$(package)_qtmultimedia_sha256_hash=7ee4e2296f5714961692f6ded568d3e3fde3687cee48e9d717194b5d1360db4a
+$(package)_qtmultimedia_sha256_hash=e2942599ba0ae106ab3e4f82d6633e8fc1943f8a35d91f99d1fca46d251804ec
$(package)_qtshadertools_file_name=qtshadertools-$($(package)_suffix)
-$(package)_qtshadertools_sha256_hash=08338fe4f54954928e41a8a5450627e61bca115039706c28161bf967785e73bb
+$(package)_qtshadertools_sha256_hash=628bead7ff4e7f42cb910f47d2adefbdea0d8c71a0234baef8ca709bf467b92f
$(package)_extra_sources += $($(package)_qttools_file_name)
$(package)_extra_sources += $($(package)_qtsvg_file_name)
package=qt
-$(package)_version=6.6.1
+$(package)_version=6.6.2
$(package)_download_path=https://download.qt.io/official_releases/qt/6.6/$($(package)_version)/submodules
$(package)_suffix=everywhere-src-$($(package)_version).tar.xz
$(package)_file_name=qtbase-$($(package)_suffix)
-$(package)_sha256_hash=450c5b4677b2fe40ed07954d7f0f40690068e80a94c9df86c2c905ccd59d02f7
+$(package)_sha256_hash=b89b426b9852a17d3e96230ab0871346574d635c7914480a2a27f98ff942677b
$(package)_darwin_dependencies=native_cctools native_qt openssl
$(package)_mingw32_dependencies=openssl native_qt
$(package)_linux_dependencies=openssl native_qt freetype fontconfig libxcb libxkbcommon libxcb_util libxcb_util_render libxcb_util_keysyms libxcb_util_image libxcb_util_wm libxcb_util_cursor dbus
#$(package)_patches += fix-static-fontconfig-static-linking.patch
$(package)_qttools_file_name=qttools-$($(package)_suffix)
-$(package)_qttools_sha256_hash=4939105a7345ab4e19e7caee8654a836e65bd41910359623e0f233f3aff0914a
+$(package)_qttools_sha256_hash=e6d49e9f52111287f77878ecb8b708cce682f10b03ba2476d9247603bc6c4746
$(package)_qtsvg_file_name=qtsvg-$($(package)_suffix)
-$(package)_qtsvg_sha256_hash=248deb56d26a463cf3162f530358ccf90cfb654bbf518bb35ddf81b205e09228
+$(package)_qtsvg_sha256_hash=5a231d59ef1b42bfbaa5174d4ff39f8e1b4ba070ef984a70b069b4b2576d8181
$(package)_qtwebsockets_file_name=qtwebsockets-$($(package)_suffix)
-$(package)_qtwebsockets_sha256_hash=787514349876d87e046504e5f64886d886bd2993a53fa795598ea07ecc7b0643
+$(package)_qtwebsockets_sha256_hash=c0e6ea9bc8db4290bb43e683fb3d639055fe91258f357980eb6ef5abab4438f9
$(package)_qtmultimedia_file_name=qtmultimedia-$($(package)_suffix)
-$(package)_qtmultimedia_sha256_hash=7ee4e2296f5714961692f6ded568d3e3fde3687cee48e9d717194b5d1360db4a
+$(package)_qtmultimedia_sha256_hash=e2942599ba0ae106ab3e4f82d6633e8fc1943f8a35d91f99d1fca46d251804ec
$(package)_qtshadertools_file_name=qtshadertools-$($(package)_suffix)
-$(package)_qtshadertools_sha256_hash=08338fe4f54954928e41a8a5450627e61bca115039706c28161bf967785e73bb
+$(package)_qtshadertools_sha256_hash=628bead7ff4e7f42cb910f47d2adefbdea0d8c71a0234baef8ca709bf467b92f
$(package)_extra_sources += $($(package)_qttools_file_name)
$(package)_extra_sources += $($(package)_qtsvg_file_name)
$(package)_config_opts_darwin += -DQMAKE_MACOSX_DEPLOYMENT_TARGET=11.0
$(package)_config_opts_darwin += -DBUILD_WITH_PCH=OFF
$(package)_config_opts_darwin += '-DQT_QMAKE_DEVICE_OPTIONS=MAC_SDK_PATH=$(host_prefix)/native/SDK;MAC_SDK_VERSION=$(OSX_SDK_VERSION);CROSS_COMPILE=$(host)-;MAC_TARGET=$(host);XCODE_VERSION=$(XCODE_VERSION)'
+$(package)_config_opts_darwin += -DQT_NO_APPLE_SDK_AND_XCODE_CHECK=ON
$(package)_config_opts += -G Ninja
qt_find_package(WMF PROVIDED_TARGETS WMF::WMF MODULE_NAME multimedia QMAKE_LIB wmf)
qt_find_package(EGL)
--qt_find_package(FFmpeg OPTIONAL_COMPONENTS AVCODEC AVFORMAT AVUTIL AVDEVICE SWRESAMPLE SWSCALE PROVIDED_TARGETS FFmpeg::avcodec FFmpeg::avformat FFmpeg::avutil FFmpeg::avdevice FFmpeg::swresample FFmpeg::swscale MODULE_NAME multimedia QMAKE_LIB ffmpeg)
+-qt_find_package(FFmpeg OPTIONAL_COMPONENTS AVCODEC AVFORMAT AVUTIL SWRESAMPLE SWSCALE PROVIDED_TARGETS FFmpeg::avcodec FFmpeg::avformat FFmpeg::avutil FFmpeg::swresample FFmpeg::swscale MODULE_NAME multimedia QMAKE_LIB ffmpeg)
qt_find_package(VAAPI COMPONENTS VA DRM PROVIDED_TARGETS VAAPI::VAAPI MODULE_NAME multimedia QMAKE_LIB vaapi)
#### Tests
+#endif
diff --git a/src/plugins/multimedia/v4l2/qffmpegmediaintegration.cpp b/src/plugins/multimedia/v4l2/qffmpegmediaintegration.cpp
new file mode 100644
-index 000000000..57a332696
+index 000000000..2dad447c9
--- /dev/null
+++ b/src/plugins/multimedia/v4l2/qffmpegmediaintegration.cpp
-@@ -0,0 +1,124 @@
+@@ -0,0 +1,130 @@
+// Copyright (C) 2021 The Qt Company Ltd.
+// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only
+
+
+QFFmpegMediaIntegration::QFFmpegMediaIntegration()
+{
-+#if QT_CONFIG(linux_v4l)
-+ m_videoDevices = std::make_unique<QV4L2CameraDevices>(this);
-+#endif
-+#ifdef Q_OS_DARWIN
-+ m_videoDevices = std::make_unique<QAVFVideoDevices>(this);
-+#elif defined(Q_OS_WINDOWS)
-+ m_videoDevices = std::make_unique<QWindowsVideoDevices>(this);
-+#endif
-+
+#ifndef QT_NO_DEBUG
+ qDebug() << "Available HW decoding frameworks:";
+ AVHWDeviceType type = AV_HWDEVICE_TYPE_NONE;
+ return new QFFmpegMediaFormatInfo();
+}
+
++QPlatformVideoDevices *QFFmpegMediaIntegration::createVideoDevices()
++{
++#if defined(Q_OS_ANDROID)
++ return new QAndroidVideoDevices(this);
++#elif QT_CONFIG(linux_v4l)
++ return new QV4L2CameraDevices(this);
++#elif defined Q_OS_DARWIN
++ return new QAVFVideoDevices(this);
++#elif defined(Q_OS_WINDOWS)
++ return new QWindowsVideoDevices(this);
++#else
++ return nullptr;
++#endif
++}
++
+QMaybe<QPlatformMediaCaptureSession *> QFFmpegMediaIntegration::createCaptureSession()
+{
+ return new QFFmpegMediaCaptureSession();
+#include "qffmpegmediaintegration.moc"
diff --git a/src/plugins/multimedia/v4l2/qffmpegmediaintegration_p.h b/src/plugins/multimedia/v4l2/qffmpegmediaintegration_p.h
new file mode 100644
-index 000000000..905c3efd5
+index 000000000..13b81ecc2
--- /dev/null
+++ b/src/plugins/multimedia/v4l2/qffmpegmediaintegration_p.h
-@@ -0,0 +1,45 @@
+@@ -0,0 +1,47 @@
+// Copyright (C) 2021 The Qt Company Ltd.
+// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only
+
+
+protected:
+ QPlatformMediaFormatInfo *createFormatInfo() override;
++
++ QPlatformVideoDevices *createVideoDevices() override;
+};
+
+QT_END_NAMESPACE