summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* docs: update warning note about QAudioDecoder::setAudioFormat()6.5Nicholas Bennett2023-05-171-1/+2
| | | | | | | | Fixes: QTBUG-100514 Change-Id: Ib6ccfd13e80e2bc3f6166b3782148a55954f605d Reviewed-by: Nicholas Bennett <nicholas.bennett@qt.io> (cherry picked from commit f944b0f9238cbc24585a2876588c5f321cb95d28) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* Fix QAudioSink on Windows and make the auto tests passArtem Dyomin2023-05-162-6/+16
| | | | | | | | | | | | | | | | | | Windows tests became working, but on CI they are still not available since there're no audio devices on Win CI. - use QPointer for IO device (a corner case for close() in the destructor) - fix the method reset(), it should close the sink and change the state - There's a bunch of futher improvements to be done, namely, stop() should be improved for having more accurate behavior. Change-Id: I575a1d97d6d07564164c8b2de91166315d8f28d7 Reviewed-by: Lars Knoll <lars@knoll.priv.no> (cherry picked from commit 44067974d2ba15c323f8146d619f67390d3042b8) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* Docs: Add note about YUV420P format with FFMPEG backend on AndroidNicholas Bennett2023-05-161-2/+17
| | | | | | | | | | | | Being a generic format, we can receive either a fully planar 4:2:0 - YUV420P or a semiplanar NV12/NV21. That will depend on the codec implemented in the device, so device-dependent. Fixes: QTBUG-112454 Change-Id: Iebebca8d3d2bb5b540f92ec87b536dcb49ec7e4f Reviewed-by: Mats Honkamaa <mats.honkamaa@qt.io> (cherry picked from commit 954053c17cb53b41c8ecf8cb794898c89fdef5e4) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* Improve getting ffmpeg frame durationArtem Dyomin2023-05-162-5/+19
| | | | | | | | | | | | | | FFmpeg doc says that AVFrame.duration represents the duration except cases if it's 0 (unknown). It's appeared in only 6.0 so we use a helper to get it. So let's apply the rule to our AVFrame wrapper. Change-Id: I9596364561f88929796c0097381bfc26bf1d4565 Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org> Reviewed-by: Lars Knoll <lars@knoll.priv.no> (cherry picked from commit df46a50615136adeac39223953ab7aed393ebd08) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* Rename file qwindowsiuptr_p.h to qcomptr_p.hJøger Hansegård2023-05-1516-18/+18
| | | | | | | | | | | | | For consistency, rename the file that now contains the QComPtr class. We also rename the include guard accordingly. This is a follow-up change after renaming the QWindowsIUPtr class to QComPtr to ensure consistent naming. Task-number: QTBUG-113460 Change-Id: I5f234a20faabbe65840a32e93fa039ad48cf06ef Reviewed-by: Lars Knoll <lars@knoll.priv.no> (cherry picked from commit f23ac51572704e84e12b2765ad0c372c68b96a0b) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* Rename QWindowsIUPointer template class to QComPtrJøger Hansegård2023-05-1526-135/+135
| | | | | | | | | | | | | | | The name QWindowsIUPointer feels clunky and does not add clarity. On the Windows platform, the term ComPtr, CComPtr or com_ptr is well established and understood. By renaming the QWindowsIUPointer to QComPtr we get code that is easier to read, particularly when the pointer is used in template classes such as std::vector<QComPtr> or QMaybe<QComPtr>. Task-number: QTBUG-113460 Change-Id: Ia3ef06c4a1c0e45503ba5204a4d2fd6197114b15 Reviewed-by: Lars Knoll <lars@knoll.priv.no> (cherry picked from commit 193d7e1bfd130603db5b5ac1f633de50af7e7237) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* Update dependencies on '6.5' in qt/qtmultimediaQt Submodule Update Bot2023-05-151-1/+1
| | | | | Change-Id: Idb67f2a7f72f48dc4aea4cf7ac314e0eb29e7ab9 Reviewed-by: Qt Submodule Update Bot <qt_submodule_update_bot@qt-project.org>
* Update dependencies on '6.5' in qt/qtmultimediaQt Submodule Update Bot2023-05-121-4/+4
| | | | | Change-Id: I94dddc18cdb1a280e6397176252c5d401dcbc653 Reviewed-by: Qt Submodule Update Bot <qt_submodule_update_bot@qt-project.org>
* Android-backend: Fix for Captured Image rotationBartlomiej Moskal2023-05-122-70/+16
| | | | | | | | | | | | | | | | | | | | | | | | | | When using android-camera backend, the result photo was not correctly rotated for landscape orientation. Preview rotation is handled by [0]setDisplayOrientation method, but it does not affect taking pictures and recording. Recording is handled by [1]setOrientationHint. Both mentioned methods use QAndroidCameraSession::currentCameraRotation for rotate correction. It is reasonable to handle photo rotation in the same way. This commit removes a special rotation handling from onPictureTaken java method and move it to QAndroidCameraSession. That allows to handle photo rotation in the same way as preview rotation and recording rotation. https://developer.android.com/reference/android/hardware/Camera#setDisplayOrientation(int) https://developer.android.com/reference/android/media/MediaRecorder#setOrientationHint(int) Fixes: QTBUG-113029 Change-Id: I2d08fef43fbd78faeafc7e20e100329e75019679 Reviewed-by: Lars Knoll <lars@knoll.priv.no> (cherry picked from commit 2bcc7235c0f09b93782dd0ed0f91e648a2b32eaa) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* Remove not actual resampler's settingArtem Dyomin2023-05-111-2/+0
| | | | | | | | | | | | The "async" option was relevant for the old implementation, but now it just makes problems, namely, by making internal buffering too high, and the actual output size could be very different with the expected one, what can cause a weird behavior. Change-Id: I4637d02e7f5e321fb3f674a386ef43667ed9cda9 Reviewed-by: Lars Knoll <lars@knoll.priv.no> (cherry picked from commit fd36e52f5ead74347e6d087b31bffe698e72be27) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* Implement QFFmpegScreenCaptureDxgi in terms of common FFMPeg base classJøger Hansegård2023-05-113-125/+67
| | | | | | | | | | | | | | | | | | | | | | | | | The QtMultimedia FFMpeg screen capture plugins all share a common base class 'QFFMpegScreenCaptureBase' that implements the bulk of the screen capture functionality, including the grabber thread and its screen capture loop. The Windows screen capture class 'QFFMpegScreenCaptureDXGI' class is, on the other hand, having its own implementation which makes it look and behave differently from the other implementations. This change refactors the Windows DXGI screen capture class to share base class with the other platform implementations. This reduces code duplication, and makes the class easier to maintain because it follows the same pattern as the other screen capture implementations. No functionality is changed through this refactoring. Task-number: QTBUG-113460 Change-Id: Idd157c96e1705a9fe6eb591920177f6afb88cd2a Reviewed-by: Lars Knoll <lars@knoll.priv.no> Reviewed-by: Artem Dyomin <artem.dyomin@qt.io> (cherry picked from commit 0a6f667a5476029ae7dd3544f8750e13678cbf29) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* Android-backend: fix for setting maximumZoomFactorBartlomiej Moskal2023-05-112-5/+2
| | | | | | | | | | | | | | | | Before this commit, the maximum zoom factor was set locally in the QAndroidCamera class. It was not propagated to its base QPlatformCamera class. That cause the problem with wrong value returned by maxZoomFactor() method. This commit contains setting correctly m_maxZoom in QPlatformCamera and remove not needed m_maximumZoom member from QAndroidCamera. Fixes: QTBUG-105372 Change-Id: Iaf167d03e42cb0e22ebe60862bb9dc24b1ef9173 Reviewed-by: Assam Boudjelthia <assam.boudjelthia@qt.io> (cherry picked from commit 54464a09a49593ce70065d8481bb32f499348728) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* pffft: Fix invalid format in qt_attribution.jsonTopi Reinio2023-05-101-1/+1
| | | | | | | Change-Id: Ieb948fd0eff8f10af10aab20268961e9b41de18c Reviewed-by: Venugopal Shivashankar <Venugopal.Shivashankar@qt.io> (cherry picked from commit 04b4b08bc6bfb7d6afa6e729c01ae1bf50389904) Reviewed-by: Kai Köhne <kai.koehne@qt.io>
* Add the use of the qt_internal_project_setup functionAlexey Edelev2023-05-091-0/+1
| | | | | | | | | | The function sets the required CMake variables and policies. Task-number: QTBUG-112685 Change-Id: I2132bb22f24bd3a683f5168e2fc5f974680f1080 Reviewed-by: Amir Masoud Abdol <amir.abdol@qt.io> (cherry picked from commit 5e67ace13220463842c8793ceba33d21f89d2b58) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* Remove screen capture dependency on DirectX debug layerJøger Hansegård2023-05-092-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When creating a Direct3D 11 device, it is possible to enable additional debug logging from the Direct3D subsystem by passing the D3D11_CREATE_DEVICE_DEBUG flag to the D3D11CreateDevice function. This is useful for debugging, but requires the D3D11SDKLayers.dll debug layer to be installed on the target machine. If the debug layer is not installed, calls to D3D11CreateDevice fails with the DXGI_ERROR_SDK_COMPONENT_MISSING status code. The debug layer is not installed by default on Windows 10 or Windows 11, and we can therefore not expect that this layer is available on any Windows computer. We also see that some QtMultimedia tests fail on CI nodes because the debug layer is not present. This change fixes the problem by removing the D3D11_CREATE_DEVICE_DEBUG flag from calls to D3D11CreateDevice. This gives less diagnostics for developers, but full debug logging can still be enabled through the DirectX control panel, which can be used to forcefully enable the debug layer even if the flag is not present when creating the device. An alternative solution would be to first try to create the device with the debug layer enabled by passing the D3D11_CREATE_DEVICE_DEBUG flag, and then retry without this flag if creating the device failed. The drawback of this approach is that the performance of the screen capture feature may depend on if the debug layer is installed or not. Change-Id: Icad2965b61de953e3f93c8aeb902f37e5b31c10a Reviewed-by: Lars Knoll <lars@knoll.priv.no> (cherry picked from commit 12d051537088cfda5e5303a3e8a61f87759eec5d) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* Reduce choppy sound on audio playback if audio sink is almost emptyArtem Dyomin2023-05-056-7/+84
| | | | | | | | | | | | | | | If audio sink buffer is almost empty, that happens on pause/play, the sound pretty often has little gaps. The solution is using some little samples compensation (slows down the playback on 1% for 1-2sec what allows to increase buffer loadig from 0-10% to 20%). In other words, the patch implements slight "soft" audio samples compensation in order to avoid having empty adio sink buffer. Change-Id: I6b963996eab8f8b8f610fcd4a566405aec3d13cf Reviewed-by: Lars Knoll <lars@knoll.priv.no> (cherry picked from commit 925138520fda18b83899e2d60afcbe0612cb5dd8) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* wasm: add manual camera testLorn Potter2023-05-047-0/+555
| | | | | | | | | this also tests local video playback Change-Id: I82fff701d82f61ed06aa150d357fdede712ae6c0 Reviewed-by: Mikołaj Boc <Mikolaj.Boc@qt.io> (cherry picked from commit ddbbe562e0079205563b431826d3a7e5c08f5388) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* wasm: fix local video file playingLorn Potter2023-05-042-27/+41
| | | | | | | Change-Id: I8edd18d78815795262a5bca5523fe82587dd469f Reviewed-by: Mikołaj Boc <Mikolaj.Boc@qt.io> (cherry picked from commit 0ecf83de7bc1d012a563a0eb25023eb0e608f3a1) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* QMediaPlayer: emit errorChanged signal whenever the error has changedVladimir Belyavsky2023-05-043-9/+12
| | | | | | | | | | | | | | | | | | There was a problem that error/errorString properties were not properly notified when reseted on start playing. So now we use private setError() method whenever 'error' should be changed. Also as a drive-by there are several improvements: - errorChanged signal will be emitted now only when the property's value was actually changed. - errorOccured signal is now emitted only when there is a real error, i.e. it will never be emitted with NoError. Fixes: QTBUG-113386 Change-Id: I16e26710941ed6b8429f39c201572092f2714c74 Reviewed-by: Lars Knoll <lars@knoll.priv.no> (cherry picked from commit 9830f6593868be875465b8ed9b3796685600adb0) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* Upgrade pffft to the latest versionLars Knoll2023-05-042-4/+3
| | | | | | | | | Fixes: QTBUG-113355 Change-Id: Ib7f7c45fe89f6516d136406eb068ea740cff11fe Reviewed-by: Artem Dyomin <artem.dyomin@qt.io> Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io> (cherry picked from commit 54c2bd33eddc96ac7268ca43773e98b4cd7433f6) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* Add test for non-ASCII characters in file namePavel Dubsky2023-05-041-0/+27
| | | | | | | | | | | | The test is supposed to check whether media file can be opened and played if its name contains non-ASCII characters. Task-number: QTBUG-112707 Change-Id: I9703869039cfdb9c5f994d5403f1bbfd0d23118e Reviewed-by: Artem Dyomin <artem.dyomin@qt.io> Reviewed-by: Lars Knoll <lars@knoll.priv.no> (cherry picked from commit ceef0960d3291d53eba6ff410940f2b0c94ded17) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* Update dependencies on '6.5' in qt/qtmultimediaQt Submodule Update Bot2023-05-031-4/+4
| | | | | Change-Id: Ia2902b1b733fc807839c2546e22b80015c82b49f Reviewed-by: Qt Submodule Update Bot <qt_submodule_update_bot@qt-project.org>
* Bump version to 6.5.2Jani Heikkinen2023-05-031-1/+1
| | | | | Change-Id: I226a3f90fa4c47c7ae9a13efd1016d1c6f67fe51 Reviewed-by: Jani Heikkinen <jani.heikkinen@qt.io>
* Android: Use QFile for content urlSamuel Mira2023-05-021-14/+5
| | | | | | | | | | | | | | Following Scoped Storage feature implementation, the java APIs to obtain a filedescriptor from a content scheme were removed. QFile now supports content url, so it was changed to use that. The QFile still needs to be used as a stream. Fixes: QTBUG-112973 Change-Id: I0b023be6adab81a591ce0e8a81128e4ca00ba213 Reviewed-by: Artem Dyomin <artem.dyomin@qt.io> Reviewed-by: Lars Knoll <lars@knoll.priv.no> (cherry picked from commit 9e9cca08ef53692b54a5f02566af7efe439673c9) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* AVFVideoSink: Set pixel format even when rhi is not setVladimir Belyavsky2023-05-011-24/+22
| | | | | | | | | | | | | QVideoSink::setRhi() is new and not documented. One may still use default constructed QVideoSink as an output for QMediaPlayer. In this case we still need be able produce valid video frames into the sink. Amends 2e43d29e1d5d50b44b8f6d4f000968e3933c279a. Fixes: QTBUG-113286 Change-Id: Ib4632e66e8df78af44178af611604aac5e797b53 Reviewed-by: Lars Knoll <lars@knoll.priv.no> (cherry picked from commit aa2b9b0474b3bd268f01f0d0e8f6e6c9b681ba3f) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* Update dependencies on '6.5' in qt/qtmultimediaQt Submodule Update Bot2023-05-011-4/+4
| | | | | Change-Id: I2c566a8ca231893b713cc9630e025ece6e387d4a Reviewed-by: Qt Submodule Update Bot <qt_submodule_update_bot@qt-project.org>
* Docs: Fix "Can't link to" example warningsSafiyyah Moosa2023-04-282-4/+4
| | | | | | | | Task-number: QTBUG-113160 Change-Id: I0187a0f9ab419694b6e801d1f44cbb59394ec7c7 Reviewed-by: Topi Reiniö <topi.reinio@qt.io> (cherry picked from commit 494cdc948ccceea37cdc25ae3f6ba32768d73635) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* Update dependencies on '6.5' in qt/qtmultimediaQt Submodule Update Bot2023-04-281-4/+4
| | | | | Change-Id: I4b7dc1cd4fd741ef7328535d1b6ca2a4aa379cc8 Reviewed-by: Qt Submodule Update Bot <qt_submodule_update_bot@qt-project.org>
* Add IMPORTED_LINK_INTERFACE_LANGUAGES to WMF::WMF targetAmir Masoud Abdol2023-04-261-1/+2
| | | | | | | | | | | | | | To make sure that CMake sets and uses the `CMAKE_C_IMPLICIT_LINK_DIRECTORIES`, we need to specify the `IMPORTED_LINK_INTERFACE_LANGUAGES`, otherwise, if user projects don't enable C, CMake might not know where to look, as seen in the bug. Fixes: QTBUG-112832 Change-Id: I5f26563cbbe4532b39933b4ffdec44bbccaf4062 Reviewed-by: Alexey Edelev <alexey.edelev@qt.io> Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io> (cherry picked from commit 148cf063e4efb87fc1ff07429b5723ff35ad0ef0) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* Update dependencies on '6.5' in qt/qtmultimediaQt Submodule Update Bot2023-04-261-4/+4
| | | | | Change-Id: Ic65d65db2fe8819a9e2bd33c4298fd03f35f3a4d Reviewed-by: Qt Submodule Update Bot <qt_submodule_update_bot@qt-project.org>
* Android-example: add missing properties in AndroidManifest.xmlBartlomiej Moskal2023-04-261-2/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | After changing android target SDK version to 31, some missing values has to be defined in AndroidManifest.xml. AndroidManifest.xml template was updated in qtbase in: 56dee3de5e4ac1c4d37a2c5e27361e7ddbdea1a7 commit. In case when example uses its own AndroidManifest.xml file, it need to be updated separately. * android:exported="true": because the manifest sets an intent-filter, and it then has to explicitly to avoid the warning [1]. * android:allowBackup="true": this has to be explicitly set, we set it to the default value here [2]. * android:fullBackupOnly="false": SDK 23+ use this to deteremine to user auto backup or not, we set it to the default value here [3]. [1] https://developer.android.com/guide/topics/manifest/activity- element#exported [2] https://developer.android.com/guide/topics/manifest/application- element#allowbackup [3] https://developer.android.com/guide/topics/manifest/application- element#fullBackupOnly Fixes: QTBUG-113008 Change-Id: I5199dd70641a51e7e4bcf0c2abe7ea60d4a0eca9 Reviewed-by: Assam Boudjelthia <assam.boudjelthia@qt.io> (cherry picked from commit ad9d22d6791a7c327031b3790b5826ad5a8c0d65) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* AVFVideo: Set color range to video frame formatDoris Verria2023-04-261-0/+18
| | | | | | | | | | | Set the color range based on the pixel format. This ensures the correct color matrix is chosen. Task-number: QTBUG-108083 Change-Id: I6b599d702384f479d8efee0673fe3eadcf9c12c2 Reviewed-by: Lars Knoll <lars@knoll.priv.no> (cherry picked from commit 8262be7eda8a4f72418e3e0d527936505de073fc) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* Fix QMediaDevices::videoInputs returning an empty listPavel Dubsky2023-04-261-0/+4
| | | | | | | | | | | | | | When QMediaDevices::videoInputs is called without prior call to QMediaDevices::audioOutputs the returned list is empty but if the latter call is present everything works as it should. The reason is a missing call to CoInitialize inside internal Windows-specific implementation. Task-number: QTBUG-112702 Change-Id: I462d3cf15f65329415539eb1bdde6be65ab9a407 Reviewed-by: Lars Knoll <lars@knoll.priv.no> (cherry picked from commit 1689940a061235545d6cc316fcc924284e7c3f1b) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* Fix unused variable warnings with Android NDK 25Ville Voutilainen2023-04-263-4/+1
| | | | | | | Change-Id: I3393a873ac1a5bf5d2c289c54e5fa83941725fb8 Reviewed-by: Lars Knoll <lars@knoll.priv.no> (cherry picked from commit 642da396197821103dd6c6a6cfdf26791432cb7c) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* QVideoTextureHelper: Fix color matrix calculationDoris Verria2023-04-261-1/+1
| | | | | | | | | | | | | | | | | | | | The color matrix for BT709 video (limited) range, had a small mistake. From calculations based on the BT709 standard and for video range (16 - 235) values, the conversion equations are: R = Y * 1.1644 + V * 1.7928 + (-248.100994) G = Y * 1.1644 + U * -0.2132 + V * -0.5329 + 76.878080 B = Y * 1.1644 + U * 2.1124 + (-289.017566) So there was a missplacement between two of the coeficients in the matrix. Fixes: QTBUG-108083 Change-Id: If58c7df8a9ad4d975a2ac0c90cd3692232210995 Reviewed-by: Lars Knoll <lars@knoll.priv.no> (cherry picked from commit bd1487b17d0806a79cc74b911008a533e1ec3036) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* Exclude files including EGL/egl.h from Unity BuildAmir Masoud Abdol2023-04-252-3/+7
| | | | | | | | | | | It seems that when <EGL/egl.h> is included, we get conflicting symbols between QUrl, and X11 symbols. Task-number: QTBUG-109394 Change-Id: Ided106a6b07f4a2d8c85419f86a5220f4cb77a23 Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io> (cherry picked from commit 3c2ea40bbe5327ce6a56dcef64ff3a8fb263705c) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* Highlight third-party modules that are security criticalKai Köhne2023-04-253-0/+3
| | | | | | | | | | | | | | | Mark any modules listed as 'processing untrusted content' in https://wiki.qt.io/Third_Party_Code_in_Qt also in the qt_attribution.json files. For reasoning, see also https://lists.qt-project.org/pipermail/development/2023-February/043667.html Change-Id: Ibb81617addfc972c46bf2223c54fa18173c9af4f Reviewed-by: Lars Knoll <lars@knoll.priv.no> (cherry picked from commit b1221e421459d261f67e03bb40c8ce36e95f0704) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* qt_attribution.json format cleanupKai Köhne2023-04-253-45/+49
| | | | | | | | | | | - Do no use JS array for only one entry - Add DownloadLocation field - Use shorter SHA's for the version number, which is displayed in the generated documentation. Change-Id: Iaaf377432cc5189f42a87645c57308435edaf770 Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io> (cherry picked from commit f97403b0f4b28f85145cc0d690ed28a31d01ed71) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* Docs: Fix capturesession snippet in mediarecorder type documentationNicholas Bennett2023-04-251-0/+1
| | | | | | | | | | | | Added "active: true". Task-number: QTBUG-112714 Change-Id: Ic122efcd8a8e742d7edefc54fdf443c758259b19 Reviewed-by: Artem Dyomin <artem.dyomin@qt.io> Reviewed-by: Bartlomiej Moskal <bartlomiej.moskal@qt.io> Reviewed-by: Lars Knoll <lars@knoll.priv.no> (cherry picked from commit fd64f3a8a3d418617ae793b8f5287430c0b45bd2) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* Remove an unused private variableAmir Masoud Abdol2023-04-241-1/+0
| | | | | | | | Task-number: QTBUG-109394 Change-Id: I9a2292d042315d997593c2521a008ece533d7e93 Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io> (cherry picked from commit 1c6cc5edf078c5d12c04d637b7e539264b6efce9) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* Exclude a file from Unity BuildAmir Masoud Abdol2023-04-241-0/+6
| | | | | | | | | | | | | | If not excluded, - `rwLock` will collide with `wrappers/jni/androidmediaplayer.cpp`, - and `notifyFrameAvailable` will be confused by the one defined in `wrappers/jni/androidsurfacetexture.cpp` Task-number: QTBUG-109394 Change-Id: I50a891449f4631caceb088a79e26c709df063931 Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io> (cherry picked from commit d6dffee9592a198669c7284a0a10179143d69654) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* Doc: Remove mentioning of Spatial Audio being in tech previewAndreas Eliasson2023-04-241-3/+2
| | | | | | | | | | Spatial audio is out of tech preview in 6.5. Fixes: QTBUG-112601 Change-Id: Ia7a5158608ab5a8a5f1a597792dbb42aa0e50bde Reviewed-by: Nicholas Bennett <nicholas.bennett@qt.io> (cherry picked from commit 7485af9756854a11cb95764cd08e1bcc0ec8cde2) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* Fix crash with sequential QIODevice as media source on WindowsJoerg Bornemann2023-04-242-10/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The sample in QTBUG-110005 uses a QNetworkReply as source for QMediaPlayer. This is a sequential QIODevice. As such, it doesn't have the concept of size. The sequence leading to the crash is - BeginCreateObjectFromByteStream() is called - MFStream::GetLength() return zero - that's why MFStream::BeginRead() is not called, and m_currentReadResult stays nullptr - QNetworkReply::readyRead() is emitted - MFStream::doRead() is called, because of the latter signal - MFStream::doRead() accesses m_currentReadResult, which is still nullptr (see above), and we witness the crash The desirable sequence is (as one can inspect by playing a video from a qrc:// URL): - BeginCreateObjectFromByteStream() is called - MFStream::GetLength() returns the video stream's size - MFStream::BeginRead() is called and initializes m_currentReadResult - MFStream::BeginRead() posts a custom event to the MFStream object - MFStream::doRead() is called when handling that custom event - MFStream::EndRead() tears down m_currentReadResult There is never a situation where QIODevice::readRead() should trigger a MFStream::doRead(). Calling doRead() outside of the BeginRead()/EndRead() pair cannot work. Therefore, this patch removes the handling of the stream's readyRead() signal. Note that this patch only fixes the crash in favor of an error code that's written to the program's console. Handling sequential QIODevice streams will require some more work. See further comments in the issue. Fixes: QTBUG-110005 Change-Id: I2fc70f873a2e3a257e8e081d83862c53dabb6cac Reviewed-by: Lars Knoll <lars@knoll.priv.no> Reviewed-by: Artem Dyomin <artem.dyomin@qt.io> (cherry picked from commit d7c1429b5515c38288e3a33992bf2582c243df5a) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* screencapture example: Make the screen model dynamicFriedemann Kleint2023-04-204-15/+29
| | | | | | | | | | | Use QGuiApplication::screens() to obtain the screens and connect the changed signals to model reset. Make the description a bit more verbose. Change-Id: I92c0be712196aa7be475c08305ef6f8a20e603d3 Reviewed-by: Lars Knoll <lars@knoll.priv.no> Reviewed-by: Artem Dyomin <artem.dyomin@qt.io> (cherry picked from commit 004c18bb572329778a3e85fe436e0b216cf1f287)
* Update dependencies on '6.5' in qt/qtmultimediaQt Submodule Update Bot2023-04-201-4/+4
| | | | | Change-Id: I4413e45248be536ab2d740dae6eb3057a97fc153 Reviewed-by: Qt Submodule Update Bot <qt_submodule_update_bot@qt-project.org>
* Fix playing of video files with Chinese namesPavel Dubsky2023-04-201-1/+1
| | | | | | | | | | | | | | | | The old implementation was using QUrl::toEncoded in order to retrieve a filename from a URL, but it uses toLatin1 internally which substitutes all non-ASCII characters with question marks that leads to ill formed path. The new implementation uses QUrl::toString with a subsequent call to QString::toUtf8 and it basically leads to the same results while preserving non-ASCII characters. Task-number: QTBUG-111951 Change-Id: I0ad32143bc4afbdaec34511d7910ff106cb3cf45 Reviewed-by: Artem Dyomin <artem.dyomin@qt.io> Reviewed-by: Lars Knoll <lars@knoll.priv.no> (cherry picked from commit d4f99bdfc22c7f4edb26877a5912a9d5dbb55cfb) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* wasm: fix crash when camera is not yet readyLorn Potter2023-04-194-38/+38
| | | | | | | Change-Id: I38b27c2295827f7319d9c45f7a12bd45c98bd7d6 Reviewed-by: Morten Johan Sørvig <morten.sorvig@qt.io> (cherry picked from commit 6394ca0ee85695754fe687cd8f1d77e4e5f07283) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* Update dependencies on '6.5' in qt/qtmultimediaQt Submodule Update Bot2023-04-191-4/+4
| | | | | Change-Id: I948d86ec655544cc958309d42f887acf69f34d23 Reviewed-by: Qt Submodule Update Bot <qt_submodule_update_bot@qt-project.org>
* Fix qmediaplayer tests flakyness with QSignalSpyArtem Dyomin2023-04-191-1/+5
| | | | | | | | | | | | | QSignalSpy is not safe if signals are emitted from another thread, on windows the collision of removing QSignalSpy and receiving a new frame occurredpretty often (around 20% of running attempts). Catching the signal in the main thread fixes the problem. Change-Id: Id9630a5ee32e261b308ea61dc0a61b424f5239c0 Reviewed-by: Lars Knoll <lars@knoll.priv.no> (cherry picked from commit 587fb48167cf57d1612338ac0e91ae8136cd76aa) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* Fix auto tests running on linux CIArtem Dyomin2023-04-181-0/+9
| | | | | | | | | | | Some CI linux tests have been moved to separate targets without env var FFMPEG_DIR. the current patch applies the same approach as for macos. Change-Id: I131473c419e0cb302192ca6d4203bd9ad81769e5 Reviewed-by: Lars Knoll <lars@knoll.priv.no> (cherry picked from commit 8783dc08547b030be1505b8501ad79b58c765dc5) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>