summaryrefslogtreecommitdiff
path: root/examples
Commit message (Collapse)AuthorAgeFilesLines
* Docs: Fix "Can't link to" example warningsSafiyyah Moosa2023-04-281-1/+1
| | | | | | | Task-number: QTBUG-113160 Pick-to: 6.5 Change-Id: I0187a0f9ab419694b6e801d1f44cbb59394ec7c7 Reviewed-by: Topi Reiniö <topi.reinio@qt.io>
* 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 Pick-to: 6.5 6.2 5.15 Change-Id: I5199dd70641a51e7e4bcf0c2abe7ea60d4a0eca9 Reviewed-by: Assam Boudjelthia <assam.boudjelthia@qt.io>
* screencapture example: Make the screen model dynamicFriedemann Kleint2023-04-134-15/+28
| | | | | | | | | | | Use QGuiApplication::screens() to obtain the screens and connect the changed signals to model reset. Make the description a bit more verbose. Pick-to: 6.5 Change-Id: I92c0be712196aa7be475c08305ef6f8a20e603d3 Reviewed-by: Lars Knoll <lars@knoll.priv.no> Reviewed-by: Artem Dyomin <artem.dyomin@qt.io>
* Brush up the screencapture exampleFriedemann Kleint2023-04-135-38/+34
| | | | | | | | | | | | | | | - Fix compiler warnings about unused parameters - Fix spacing - Reorder includes by module - Translate user-visible texts - Use QList::size() instead of deprecated count() - Fix clang warnings about else after return - Streamline some code Pick-to: 6.5 Change-Id: Ic7640d72018b59f05c84224ca006a3f60a26f7ea Reviewed-by: Artem Dyomin <artem.dyomin@qt.io> Reviewed-by: Lars Knoll <lars@knoll.priv.no>
* spectrum example: make permissions work on macOSVolker Hilsheimer2023-04-112-0/+44
| | | | | | | | | Add a plist file that sets the NSMicrophoneUsageDescription key. Without that, we never get permission to record with the microphone. Fixes: QTBUG-112679 Change-Id: I91eb133366f28a20f246724253bc914fadd40d9a Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
* Silence a few compiler warningAmir Masoud Abdol2023-04-061-17/+17
| | | | | | | | Unused parameter, and initialization order. Pick-to: 6.5 Change-Id: I7833420daab132266930aa68fb43a1483941c2a8 Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
* Remove an unused variableAmir Masoud Abdol2023-04-062-2/+0
| | | | | | Pick-to: 6.5 Change-Id: I14df81286e1b7ef426ce6fc6cdbfc520f7b8e578 Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
* Docs: Add documentation for qml media recorder exampleNicholas Bennett2023-03-313-4/+83
| | | | | | | | | | | | Added images, code snippets and links to types used. Fixes: QTBUG-100513 Pick-to: 6.5 6.2 Change-Id: I17505ee73f23b9e93bfe9930d4983595b7d51504 Reviewed-by: Nicholas Bennett <nicholas.bennett@qt.io> Reviewed-by: Samuel Mira <samuel.mira@qt.io> Reviewed-by: Artem Dyomin <artem.dyomin@qt.io> Reviewed-by: Lars Knoll <lars@knoll.priv.no>
* ScreenCapture: Fix a runtime warningTasuku Suzuki2023-03-301-1/+1
| | | | | | | | QLayout: Attempting to add QLayout "" to ScreenCapturePreview "", which already has a layout Change-Id: Ic5b01f11ffa49490e4930214e1422109a06504fe Reviewed-by: Lars Sutterud <lars.sutterud@qt.io> Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
* Docs: Improve camera example documentationNicholas Bennett2023-03-301-12/+46
| | | | | | | | | | Added section headers. Added snippets. Fixes: QTBUG-108420 Pick-to: 6.5 Change-Id: I5b62648066f638e5c6366e24a5545ec388d9752f Reviewed-by: Lars Knoll <lars@knoll.priv.no>
* Polish the camera exampleFriedemann Kleint2023-03-305-97/+102
| | | | | | | | | | | | - Use modern string literals - Remove clearing of Qt::WindowContextHelpButtonHint (default in 6) - Order includes by module - Streamline code, introduce helper functions for clarity Pick-to: 6.5 Change-Id: Idaa56af5fb1c8472947a51ad68be7b1c98da73a4 Reviewed-by: Artem Dyomin <artem.dyomin@qt.io> Reviewed-by: Lars Knoll <lars@knoll.priv.no>
* Fix AudioInputSelect combobox list in qml recorder exampleNicholas Bennett2023-03-301-4/+22
| | | | | | | | | | | | Copied the implementation of the listmodel used in VideoSourceSelect. Fixes: QTBUG-110466 Pick-to: 6.5 Change-Id: I9e10c9404800820881ebdd23716ef512700f497e Reviewed-by: Rami Potinkara <rami.potinkara@qt.io> Reviewed-by: Samuel Mira <samuel.mira@qt.io> Reviewed-by: Artem Dyomin <artem.dyomin@qt.io> Reviewed-by: Lars Knoll <lars@knoll.priv.no>
* wasm: fix build of examples with qmakeLorn Potter2023-03-283-3/+0
| | | | | | | | | | | Modern qmake does not need to include moc files. These were creating moc_ files in the source directory causing duplicate symbols in static build such as wasm. Fixes: QTBUG-112315 Pick-to: 6.5 Change-Id: I9881c1b0d79cf453c742fc68ec56ff1843a3adab Reviewed-by: Lars Knoll <lars@knoll.priv.no>
* Improve ffmpeg camera formats selection on darwin OSArtem Dyomin2023-03-201-21/+0
| | | | | | | | | | | | | | | | | | Handled a bunch of corner cases, briefly they are: - handle the case when ffmpeg videotoolbox doesn't support format. From now, it's optionally available to use sw frame or choose another format. Both approaches are working, but for now, the first one is prefferable. - handle the rare case when device output formats don't contain camera format. - improve the best camera format selection, it'll take into account an opoortunity to use hw acceleration for the format. - improve logging. Task-number: QTBUG-109009 Pick-to: 6.5 Change-Id: I82773f73a47bc1d22730f1e5ec2eaacbfa4ec1b1 Reviewed-by: Lars Knoll <lars@knoll.priv.no>
* Fix cameras and screen selection in the recorderr exampleArtem Dyomin2023-03-161-8/+10
| | | | | | | | | After the last change it need a small fix for the case when several camaras or screens attached. Pick-to: 6.5 Change-Id: I44342ba35a2c2b85b303dfb856a218c0377bf086 Reviewed-by: Lars Knoll <lars@knoll.priv.no>
* Add screen capturing video source to the media recorder exampleArtem Dyomin2023-03-156-42/+77
| | | | | | | | | | The proposition is to add available screens to the same list as cameras because both can be considered as a videosource for media capture session. Pick-to: 6.5 Change-Id: I027194573ae131ec154c566f88370a1ac8adc7df Reviewed-by: Lars Knoll <lars@knoll.priv.no>
* AudioSource example: Add .plist file with microphone permissionsDoris Verria2023-02-162-0/+45
| | | | | | | Fixes: QTBUG-104849 Pick-to: 6.2 6.4 6.5 Change-Id: I82afd862722dc212800d8f69f1a4110c11810a38 Reviewed-by: Lars Knoll <lars@knoll.priv.no>
* Adjust multimedia examples to use new QPermission APIIvan Solovev2023-02-0815-33/+295
| | | | | | | | | | | | | | | | Now when the library itself does not request permissions, that needs to be done on the user application level. This patch updates all examples to query the required permissions. As there is no QML API yet, the QML examples do it directly from main. Note: the WRITE_EXTERNAL_STORAGE Android permission is not handled by this patch, because it's currently not supported by the QPermission API. Task-number: QTBUG-109965 Change-Id: Iaeb09f9e32fced0ecb0f5ffc63d40c64ec386cfb Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
* Add build error in Devices example for not supported OSBartlomiej Moskal2023-01-112-0/+6
| | | | | | | | | | | | Add error message to Devices example for cmake and qmake. It will allow to avoid building by unsupported operating systems in the future. Pick-to: 6.5 6.4 6.2 Fixes: QTBUG-109539 Change-Id: Id8d63e8b6c2a9f066466cbd718510007b55019e1 Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io> Reviewed-by: Assam Boudjelthia <assam.boudjelthia@qt.io>
* Include moc_*.cpp in screencapture exampleLars Sutterud2023-01-103-0/+6
| | | | | | | | | | Added include statements for the corresponding moc_*.cpp file at the bottom of all .cpp-files whose header file contained the Q_OBJECT macro. Task-number: QTBUG-103290 Change-Id: I50e49bcdb9766f0d7e71e5632ed14d88f67a126f Reviewed-by: Artem Dyomin <artem.dyomin@qt.io> Reviewed-by: Lars Knoll <lars@knoll.priv.no>
* Add ScreenCapture exampleLars Sutterud2022-12-2213-1/+452
| | | | | | | | | | | | | | | | This example demonstrates use of the QScreenCapture class by previewing the chosen source (screen/window/window ID) in a Video Widget. The example should be able to: - select one of the existing screens for capturing - select one of the existing windows - enter any window id manually - start/stop capturing (should be started by default) - display occurring errors Task-number: QTBUG-109131 Change-Id: I05a3da03576818f5b9f0c617caa77a3e3c215407 Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
* Include moc_*.cpp files in QtMM examplesArtem Dyomin2022-12-1333-63/+139
| | | | | | | | | | | | | | | | The reason of the refactoring is following the common approach that leads to reducing compilation time and binary size. - logic hasn't been touched - some headers have been decoupled into header and cpp or renamed - the same refactorings of main QtMM code, tests, plugins are coming in the next commits Task-number: QTBUG-103290 Pick-to: 6.5 6.4 Change-Id: I5ec4c7b651ebb81879b8a7be8659e66d52af0d90 Reviewed-by: Lars Knoll <lars@knoll.priv.no>
* Fix typo in examples/mediaplayerYAMAMOTO Atsushi2022-12-021-2/+2
| | | | | | | | | Fix typo hoover -> hover Change-Id: I5ac8ec7120900957eba6b65f7fd71e599e4bc6a0 Reviewed-by: Tasuku Suzuki <tasuku.suzuki@signal-slot.co.jp> Reviewed-by: Piotr Srebrny <piotr.srebrny@qt.io> Reviewed-by: Lars Knoll <lars@knoll.priv.no>
* Fix issues in camera exampleArtem Dyomin2022-11-112-23/+19
| | | | | | | | | | - fix memory leak - QImageCapture - fix multimple signals connection Pick-to: 6.4 Change-Id: I63df2bd16f678c67a3ee90c7e7251575d9cdeb1e Reviewed-by: Piotr Srebrny <piotr.srebrny@qt.io> Reviewed-by: Lars Knoll <lars@knoll.priv.no>
* Example: Not working mute for AudioInput in recorderBartlomiej Moskal2022-10-261-1/+1
| | | | | | | | | | | | The change of switch (next to audio Input source) should affect the example. Mute is now connected to the audioSwitch value. Pick-to: 6.4 6.2 Fixes: QTBUG-107885 Change-Id: I7dd3495916f30dd713ebc7e9c8ae3ccbe734fd49 Reviewed-by: Piotr Srebrny <piotr.srebrny@qt.io> Reviewed-by: Samuel Mira <samuel.mira@qt.io> Reviewed-by: Assam Boudjelthia <assam.boudjelthia@qt.io>
* Fix zoom factor setting in declarative camera exampleLars Knoll2022-10-091-1/+1
| | | | | | | | | Use the correct zoomFactor property. Task-number: QTBUG-105372 Change-Id: Ib462a87be5c28ba5489998ada8d9ea922568bd6c Reviewed-by: Piotr Srebrny <piotr.srebrny@qt.io> Reviewed-by: Doris Verria <doris.verria@qt.io>
* Port from qAsConst() to std::as_const()Marc Mutz2022-10-071-1/+1
| | | | | | | | | | | | | | We've been requiring C++17 since Qt 6.0, and our qAsConst use finally starts to bother us (QTBUG-99313), so time to port away from it now. Since qAsConst has exactly the same semantics as std::as_const (down to rvalue treatment, constexpr'ness and noexcept'ness), there's really nothing more to it than a global search-and-replace. Task-number: QTBUG-99313 Change-Id: I25cda1e10154e11a51a17c6ca2b47ce90b26f90e Reviewed-by: Ivan Solovev <ivan.solovev@qt.io>
* Replace qExchange with std::exchangeMarc Mutz2022-10-061-1/+1
| | | | | | | | | None of these users require C++20 constexpr or C++23 noexcept, the only remaining difference between std::exchange and qExchange. Task-number: QTBUG-99313 Change-Id: I36b143767f6cf793cc98a067d53bad4ddab8471e Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
* Doc: Better integrate Qt Spatial Audio into multimedia documentationTopi Reinio2022-09-285-0/+5
| | | | | | | | | | | | | | Instead of just a single mention of the Spatial Audio module, list its types on the top-level module pages, and link to it from the overviews. List the spatialaudio example(s) as part of the main example group for multimedia. Mark Qt Spatial Audio as a Tech. Preview. Pick-to: 6.4 Change-Id: I9d5bf0482aadc8516c9b79ab9acda5fbd898f1cb Reviewed-by: Nicholas Bennett <nicholas.bennett@qt.io>
* Doc: Fix various issues in Qt Multimedia documentationTopi Reinio2022-09-281-11/+4
| | | | | | | | | | | * Avoid unnecessary repetition in .qdocconf * Fix incorrect link targets * Fix mistakes in QML property documentation * Add documentation for enumeration values in Camera::flashMode Pick-to: 6.4 Change-Id: If0f67ded1c014bc75e21ccff832ef197b93e5b24 Reviewed-by: Venugopal Shivashankar <Venugopal.Shivashankar@qt.io>
* Examples: Use FileDialog in qmlvideoBartlomiej Moskal2022-09-265-399/+20
| | | | | | | | | | Custom made file dialog with QML was not Android friendly. Use FileDialog QML type instead of manually written FileBrowser. Fixes: QTBUG-96084 Pick-to: 6.4 6.2 Change-Id: I8c711291243808365eacdc57df1d99a8a01285b2 Reviewed-by: Assam Boudjelthia <assam.boudjelthia@qt.io>
* Examples: C++ style cleanupKai Köhne2022-09-0782-1340/+1374
| | | | | | | | | | | | | Run clang-format on all files. Unify the headers to use the canonical include variants: single class includes instead of #include <QtGui>. Finally, using signals and slots instead of Q_SIGNALS and Q_SLOTS. Pick-to: 6.4 Change-Id: I033dad85a4a25600ec4e3171bede8b98e584cf5d Reviewed-by: Lars Knoll <lars@knoll.priv.no>
* Let examples show up in Qt Creator againKai Köhne2022-09-0561-35/+23
| | | | | | | | | | | | | | | | | | | | | | | | | Fix an issue where the relative paths in the generated examples-manifest.xml did miss the parent directory, effectively blocking the examples from being shown in the Qt Creator Welcome screen. This broke in commit c403e775f60a, where the exampledirs path was changed from "../../../examples" to "../../../examples/multimedia" and "../../../examples/multimediawidgets". This made qdoc miss the "multimedia" and "multimediawidgets" directories in the generated paths. To fix this, the patch * moves all the multimediawidgets examples to multimedia * sets examplesinstallpath to "multimedia" The unification of directories is needed because there can be only one examplesinstallpath per qdoc project. Pick-to: 6.4 Fixes: QTBUG-104943 Change-Id: I4d1b1f857563ec23b4d60028ca08d0470ba96298 Reviewed-by: Nicholas Bennett <nicholas.bennett@qt.io> Reviewed-by: Lars Knoll <lars@knoll.priv.no>
* Examples: Add missing emit keywordKai Köhne2022-09-051-2/+2
| | | | | | | | | warning: Missing emit keyword on signal call Engine::spectrumChanged [clazy-incorrect-emit] Pick-to: 6.4 Change-Id: If67ad30e805d0b95444d1f8402af4421f4fda6e8 Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
* Prepare for moving qVersion() from qglobal.h to qlibraryinfo.hSona Kurazyan2022-08-301-0/+1
| | | | | | | Include qlibraryinfo.h where it's used. Change-Id: Iba011fb9ddaabb5bfb6b68f4feee0f2d02786fdf Reviewed-by: Ivan Solovev <ivan.solovev@qt.io>
* Change the license of all CMakeLists.txt and *.cmake files to BSDLucie Gérard2022-08-2320-20/+20
| | | | | | | Task-number: QTBUG-105718 Change-Id: Iaf0950f30b9332ec7f04113971bc58547e31a2b9 Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org> Reviewed-by: Jörg Bornemann <joerg.bornemann@qt.io>
* Adapt qdoc macros for DocBookThibaut Cuvelier2022-08-081-0/+4
| | | | | Change-Id: Iecbed1c79189d371210c7e6c2cfd34e5c04e6373 Reviewed-by: Paul Wicking <paul.wicking@qt.io>
* Fix up audiosource example pro fileLorn Potter2022-07-122-13/+13
| | | | | | | | Must have been missed in the rename Pick-to: 6.4 Change-Id: I7f23b5b8889edb99b28f2243084056b12b814002 Reviewed-by: Lars Knoll <lars.knoll@gmail.com>
* Add license headers to cmake filesLucie Gérard2022-07-0720-0/+60
| | | | | | | | | | | | CMakeLists.txt and .cmake files of significant size (more than 2 lines according to our check in tst_license.pl) now have the copyright and license header. Existing copyright statements remain intact Task-number: QTBUG-88621 Change-Id: If5c61e7ebea0452847d411ea230438095111e030 Reviewed-by: Jörg Bornemann <joerg.bornemann@qt.io>
* Polish the audiopanning exampleFriedemann Kleint2022-06-281-149/+202
| | | | | | | | | | | - Move the members out of the class - Use QFormLayout for convenience - Improve the QFileDialog handling - Add QCommandLineParser Pick-to: 6.4 Change-Id: I017e2111105907c870a85ffcc0ab70a6cc222f5d Reviewed-by: Lars Knoll <lars.knoll@gmail.com>
* Use SPDX license identifiersLucie Gérard2022-06-24179-8394/+358
| | | | | | | | | | | Replace the current license disclaimer in files by a SPDX-License-Identifier. License files are organized under LICENSES directory. Pick-to: 6.4 Task-number: QTBUG-67283 Change-Id: Ida08dfe6c84778656e942178c3d39042c9ef1ed2 Reviewed-by: Jörg Bornemann <joerg.bornemann@qt.io>
* Update spatial audio examplePaul Olav Tvete2022-06-161-0/+21
| | | | | | | | Always loop the sound, and add an option to animate the position. Pick-to: 6.4 Change-Id: Ib5b4fd230af27b74ce15285625e4c9bbf5ef3f7a Reviewed-by: Lars Knoll <lars.knoll@qt.io>
* Split spatial audio out into a lib of its ownLars Knoll2022-06-1627-54/+58
| | | | | | | | | | | | | | | | | | | | | Move the classes from src/multimedia/spatial into its own QtSpatialAudio library. This is required to keep Qt Multimedia compatible with the requirements from the KDE Free Qt Foundation agreement, as well as to keep license compatibility with existing applications licensed under GPLv2 that are using Qt Multimedia. Moving the classes into a module of their own required a few additional changes to ensure we generate proper documentation for the new spatial audio module. To align the API between C++ and QML, the QML import was also renamed to QtQuick3D.SpatialAudio. Pick-to: 6.4 Change-Id: Ia3f9ac5e1edac4b1e07d3302d7a229ada5bdc038 Reviewed-by: Paul Olav Tvete <paul.tvete@qt.io>
* Remove old Digia organization identifier from example Info.plistsTor Arne Vestbø2022-06-022-3/+3
| | | | | | | | The PRODUCT_BUNDLE_IDENTIFIER variable already contains an appropriate value based on the organization and product name. Change-Id: I089582a95bedd00712c5a0994129a6c825d0d411 Reviewed-by: Lars Knoll <lars.knoll@qt.io>
* Add a Surround mode to QAudioEngineLars Knoll2022-05-311-10/+12
| | | | | | | | | So far, we only had a Normal and Headphone mode here. Extend this to cover Surround configurations, and explicit Stereo mode and the Headphone mode. Change-Id: I086d02157d4edfd92e5b24076bee9a51bb5cc68a Reviewed-by: Paul Olav Tvete <paul.tvete@qt.io>
* Document the coordinate system being used by QAudioEngineLars Knoll2022-05-311-4/+4
| | | | | | | | And fix the example to correctly position the sound source around the listener. Change-Id: I66035e22a47902552f08e3dac0cb1ee31608bb59 Reviewed-by: Paul Olav Tvete <paul.tvete@qt.io>
* Add missing qmake files for multimedia examplesPaul Olav Tvete2022-05-273-2/+24
| | | | | Change-Id: I7442b1e2bac663c560f37e35cb71a6aa6984d8b0 Reviewed-by: Lars Knoll <lars.knoll@qt.io>
* API cleanups for spatial/3D audioLars Knoll2022-05-241-14/+14
| | | | | | | | | Naming changes for the spatial audio API after reviewing it. Most of the names are now both shorter and better reflect the function they serve. Change-Id: I07347826f2fadf3d1705c597f35c168b19afe137 Reviewed-by: Paul Olav Tvete <paul.tvete@qt.io>
* spatial audio: Use centimeters by defaultLars Knoll2022-05-231-12/+11
| | | | | | | | | | | | | | | Qt Quick 3D uses a centimeters by default for positions and distances. Align our API with that choice. Add a distanceScale property to enable the user to choose a different scale. Store all our data internally in meters, to be aligned with the data expected by resonance audio and to make sure we don't mess up the existing configuration when the distance scale changes. Change-Id: Id06cb49bd152bfa7920c096c662ff103041261e0 Reviewed-by: Rafael Roquetto <rafael.roquetto@qt.io>
* Some smaller API fixes to QSpatialAudioSoundSourceLars Knoll2022-05-161-3/+3
| | | | | | | | Try to improve/clarify naming of properties. Change-Id: Idd610a95a196c127bfa0922f5a711ab2e483dcbf Reviewed-by: Piotr Srebrny <piotr.srebrny@qt.io> Reviewed-by: Lars Knoll <lars.knoll@qt.io>