aboutsummaryrefslogtreecommitdiffstats
path: root/examples/multimedia
Commit message (Collapse)AuthorAgeFilesLines
* Examples: Add some missing slot decoratorsFriedemann Kleint2022-08-242-2/+3
| | | | | | | | | | As unearthed by the warnings added by the logging category. As a drive-by, fix some imports. Pick-to: 6.3 6.2 Task-number: PYSIDE-2033 Change-Id: I3812c705b60eb7be744c3532fcfb0e4024763885 Reviewed-by: Christian Tismer <tismer@stackless.com>
* Use SPDX license identifiersLucie Gérard2022-05-274-160/+9
| | | | | | | | | | | Replace the current license disclaimer in files by a SPDX-License-Identifier. Files that have to be modified by hand are modified. License files are organized under LICENSES directory. Task-number: QTBUG-67283 Change-Id: I065150015bdb84a3096b5b39c061cf0a20ab637d Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io> Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io>
* examples: replace http by httpsCristián Maureira-Fredes2022-04-014-4/+4
| | | | | | Pick-to: 6.2 Change-Id: Ib53667e03a2dea2afea73a344d5749d37d59c52b Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
* examples: Turn most QPainter instances into context managersChristian Tismer2022-01-261-14/+10
| | | | | | | | | | | | | | | After the new context manager is in place, most of the examples benefit from moving QPainter into a `with` statement. The comments concerning PyPy could be removed, again. [ChangeLog][PySide6] The examples are updated to use the new context manager for QPainter. Task-number: PYSIDE-535 Change-Id: Idf7e1f734d549ed663383ffbb2416297ebb1e0c7 Reviewed-by: Christian Tismer <tismer@stackless.com>
* Examples: Fix example URLs and documentation warningsFriedemann Kleint2022-01-261-3/+2
| | | | | | | | | | | | | Fix: sources/pyside6/doc/examples/example_corelib__mimetypesbrowser.rst:4: WARNING: Unknown target name: "mime type browser example https://doc.qt.io/qt-6/qtcore-mimetypes-mimetypebrowser-example.html". sources/pyside6/doc/examples/example_multimedia__audiosource.rst:4: WARNING: Unknown target name: "audio source example https://doc-snapshots.qt.io/qt6-dev/qtmultimedia-multimedia-audiosource-example.html". sources/pyside6/doc/examples/example_widgets_tools_regularexpression.rst:4: WARNING: Unknown target name: "qregularexpression example https://doc.qt.io/qt-6/qtwidgets-tools-regularexpression-example.html". sources/pyside6/doc/examples/example_widgets_tools_regularexpression.rst:: WARNING: image file not readable: examples/regularexpression.png Pick-to: 6.2 Task-number: PYSIDE-841 Change-Id: I541df87560227d4361823b2948890fb2bf949d8e Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io>
* PyPySide: handle QPainter correctly with GCChristian Tismer2022-01-241-0/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | While testing the examples with PyPy, a number of examples used QPainter without explicitly calling painter.end() and crashed. This works in standard Python, but leaves the painter open in other implementations, because the implicit deletion of objects when going out of scope does not work in the wrapper when garbage collection is used. Fixed by providing the missing painter.end() calls. This problem should finally be fixed by making QPainter a context manager. The same approach was taken by Python.org and the file open/close functions. The context manager was needed for implementations like IronPython, Jython and PyPy. [ChangeLog][PySide6] The examples were adapted to PyPy's need to close QPainter, explicitly. Eventually, we may turn this into a context manager. Change-Id: I18eeeff7df800bafce91a1e5c98c469aa3bcc41b Pick-to: 6.2 Task-number: PYSIDE-535 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io> Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io>
* AudioSource Example + Binding for QAudioFormat.normalizedSampleValue(data: ↵Shyamnath Premnadh2021-12-284-0/+256
| | | | | | | | | | | | | | | | | | | | bytes) In order to make the AudioSource example available in Python, the following functions were properly exposed to Python. - normalizedSampleSource(const void* data) const in QAudioFormat Previously, Shiboken took care of exposing these functions on its own. The fix here is to use PyBuffer as the counterpart for const char* in the Python side. The patch also consists of the working AudioSource example. Currently only the Push Mode works. Inorder to make the pull mode work, the function writeData(const char* data, qint64 len) should be properly exposed from C++ to Python through typestem, without code duplication. Task-number: PYSIDE-841 Task-number: PYSIDE-1743 Pick-to: 6.2 Change-Id: I1cd2c28136836c9bdf1021693f74e59eb98f390b Reviewed-by: Christian Tismer <tismer@stackless.com>
* PySide6/QtMultiMedia: Adapt to API recent changesFriedemann Kleint2021-06-233-16/+26
| | | | | | | | | | | | | | | | | | | | | | Build against qtmultimedia/a6e014eb088cb9b7bf55bf87c814e75cd4037dc2: - Re-add QAudioInput, QAudioOutput, qtmultimedia/9fd208f11a218d8a8b07fc525258eea3b3596d62 - Rename QCameraImageCapture to QImageCapture, qtmultimedia/83a031c56b74d68fe6d349f78c48a1681e40374e - Remove QImageEncoderSettings, qtmultimedia/d58d93b8e45b2bf62221b104914df771849c007c - Remove QMediaEncoderSettings, qtmultimedia/9c309ede2feb598908b1476062b79d0d23759bf3 - Changes around QMediaEncoder, qtmultimedia/fde5d6f7cce6118cac4ce7b92cd056225737917f qtmultimedia/994bcb23af8399485ddfdd16d2ba34c20326b432 - Comment out QMediaPlaylist, qtmultimedia/5773f7214c7430a98dea3974c0597cb3ee0ea7f5 Pick-to: 6.1 Change-Id: I9beb96c34ebe6132ad68e3628fcbbf0bc48127ef Reviewed-by: Christian Tismer <tismer@stackless.com>
* examples: add screenshots to widgets and othersCristian Maureira-Fredes2021-06-126-0/+33
| | | | | | | | | | | | | | | Adding screenshots to: - declarative - multimedia - network - widgets Renaming examples to avoid conflict on images names. Task-number: PYSIDE-841 Pick-to: 6.1 Change-Id: I21f403ee62b45c0cb2a45eca6c5c99f11901610e Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
* PySide6: Adapt to latest changes in QtMultimediaFriedemann Kleint2021-06-091-1/+1
| | | | | | | | | | Rename QCameraInfo/QAudioDeviceInfo to QCamera/AudioDevice, adapting to qtmultimedia/1c4dd0c23c0a7bdefaeecbae491a12f49a6b9ce5. Pick-to: 6.1 Task-number: PYSIDE-1482 Change-Id: I1a2972300aa0a8119e4c90919ed464124a7a6419 Reviewed-by: Christian Tismer <tismer@stackless.com>
* PySide6: Adapt to latest changes in QtMultimediaFriedemann Kleint2021-06-071-23/+23
| | | | | | | | | | Rename QAudioOutput to QAudioSink and QAudioInput to QAudioSource, following qtmultimedia/3350275e25c96b391e31d2c9c472b4f0aa58b8f7, qtmultimedia/aa1f073a32147d147e4e9a0fee9dde8ccc30531e. Pick-to: 6.1 Change-Id: I78bca6f8e9c43ef42753b3a81921440afe4ad387 Reviewed-by: Christian Tismer <tismer@stackless.com>
* Multimedia player example: Add "Open" to toolbarFriedemann Kleint2021-05-281-0/+1
| | | | | | Pick-to: 6.1 Change-Id: I1f6226ece1e12aa5886d1093fee87b5a520416b0 Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io>
* Fix the multimedia examples to workFriedemann Kleint2021-05-183-260/+366
| | | | | | | | | | | | | | | - Port to qtmultimedia/9a4822037def3b9d48abea8bbfd7ea20fd19849b (wip/qt6). - Add Slot decorators - Rename according to snake case conventions - Connect error signals of player and camera - Use theme icons in player Pick-to: 6.1 Task-number: PYSIDE-1112 Task-number: PYSIDE-1482 Change-Id: Ib79614e56b2b1ad7ea6cd0406efa1d91ce1abdb1 Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io>
* Re-add QtMultimedia/WidgetsFriedemann Kleint2021-05-141-3/+3
| | | | | | | | | | | | | | | | | Fix it to build with qtmultimedia/9a4822037def3b9d48abea8bbfd7ea20fd19849b (wip/qt6). Remove typesystem_multimedia_forward_declarations.xml as the forward declarations of QVideoWidget and QGraphicsVideoItem no longer exist. Fix the tests. Fix the player example to run/crash. Pick-to: 6.1 Task-number: PYSIDE-1482 Change-Id: I340693e3510347f95b55395985bd2b0f294769a1 Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io>
* Fix further f-string errors in examplesFriedemann Kleint2021-05-141-1/+1
| | | | | | | | | | | | | | | examples/multimedia/camera/camera.py", line 141 pattern = f"{picturesLocation}/pyside6_camera_{dateString}_{:03d}.jpg" SyntaxError f-string: empty expression not allowed examples/external/matplotlib/widget3d/widget3d.py", line 91 self.slider_azim_layout.addWidget(QLabel(f"{self.slider_azim.maximum())) SyntaxError EOL while scanning string literal Amends c5db9d63277201ee58829f7eb0656c534d04c249. Pick-to: 6.1 Change-Id: If6ca3deae03ecb39d58d1eea0ba1802c8b954b57 Reviewed-by: Christian Tismer <tismer@stackless.com>
* examples: clean and improve codeCristian Maureira-Fredes2021-05-132-23/+26
| | | | | | | | | | - removing '\' from long lines, - use f-strings instead of concatenating strings - Use f-strings instead of the old '%' formatting Task-number: PYSIDE-841 Change-Id: I4983c25a6272e10119d5d1a74c180828ca6f64e6 Reviewed-by: Christian Tismer <tismer@stackless.com>
* examples: use f-stringsCristian Maureira-Fredes2021-05-121-1/+1
| | | | | Change-Id: I0360f1476af666494c730e4f3c8f4f3c562abc09 Reviewed-by: Christian Tismer <tismer@stackless.com>
* examples: use exec() instead of exec_()Cristian Maureira-Fredes2021-05-053-4/+4
| | | | | Change-Id: I07dd4339093be8fcc80e63a2ff0448e998356203 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
* Examples: Fix some space-related flake warningsFriedemann Kleint2021-04-292-1/+6
| | | | | | Task-number: PYSIDE-1112 Change-Id: Ib8991199e4822673d6a25cba0023dbe3b03f5938 Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io>
* Examples: Use new form of super()Friedemann Kleint2021-04-283-5/+5
| | | | | | Task-number: PYSIDE-1112 Change-Id: Ifcb4da974bdcad7af536404fffdbffc585d3d167 Reviewed-by: Christian Tismer <tismer@stackless.com>
* examples: directory structureCristian Maureira-Fredes2021-02-098-3/+9
| | | | | | | | | | | | | | | | | | | | | | | | When generating the gallery automatically, the structure of the examples was not the same for all the modules. This reorganization was made under the following assumption: An example requires: - its own directory, - a '.pyproject' file, - one or more '.py' files, - extra files (likes images, .rc, .ui, etc) Even for cases when subdirectories are made to depict categories, like 'widgets/state-machine/...', one directory is required per example. There should not be '.pyproject' files for categories, except for the general 'examples.pyproject' to open all of them. Task-number: PYSIDE-1490 Pick-to: 6.0 Change-Id: Ie690773c816a248016dbebaad90fbb1d1c2aeea5 Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io>
* Rename PySide2 to PySide6Friedemann Kleint2020-11-023-20/+20
| | | | | | | | Adapt CMake files, build scripts, tests and examples. Task-number: PYSIDE-904 Change-Id: I845f7b006e9ad274fed5444ec4c1f9dbe176ff88 Reviewed-by: Christian Tismer <tismer@stackless.com>
* Initial port of Core,Gui,Widgets,Network,Qml,Quick to Qt 6Friedemann Kleint2020-07-032-4/+4
| | | | | | | | | | | | | | | | | | | | | | | | | Test failures: shiboken2:testmodifyfunction pyside2:QtCore::qbytearray_test pyside2:QtGui::bug_PYSIDE-41 pyside2:QtGui::deepcopy_test pyside2:QtGui::qfontmetrics_test pyside2:QtGui::qpixmapcache_test pyside2:QtWidgets::api2_test (QTBUG-85417) pyside2:QtWidgets::bug_632 pyside2:QtWidgets::bug_714 pyside2:QtWidgets::bug_785 pyside2:QtWidgets::qshortcut_test pyside2:QtQml::bug_825 pyside2:QtQml::bug_1029 pyside2:QtQml::registertype pyside2:QtQml::qqmlincubator_incubateWhile pyside2:QtQml::signal_arguments Task-number: PYSIDE-1339 Task-number: PYSIDE-904 Change-Id: Ia43d7ed037dfdd07def0edd76bada2243e73d335 Reviewed-by: Christian Tismer <tismer@stackless.com>
* Examples: Fix multimedia exampleChristian Stenger2020-05-201-1/+1
| | | | | | Change-Id: I3efab184656bf84975260efbe56edd9f9373cbbd Reviewed-by: Christian Tismer <tismer@stackless.com> Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
* Examples: Remove qApp importFriedemann Kleint2020-03-162-2/+2
| | | | | | | | | Amends 5d34d60418b15d4d6837d0a1333f2b57631309eb, d579912b31d7cfa7b0b216916fbbf3eb632a9d9d. Task-number: PYSIDE-571 Change-Id: I214d7bf1770667eaa9abaea0f96b5e507b4c32f7 Reviewed-by: Christian Tismer <tismer@stackless.com>
* examples: remove unused importsCristián Maureira-Fredes2020-01-062-3/+3
| | | | | Change-Id: I85216bcfc23161b832ecb675ea58f33e67004fe9 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
* Add .pyproject files for each exampleCristián Maureira-Fredes2019-09-271-0/+3
| | | | | Change-Id: I4dec66067aa2b0cc50d1ac3226537e4f09006132 Reviewed-by: Venugopal Shivashankar <Venugopal.Shivashankar@qt.io>
* Change example scripts permissions to 644Cristian Maureira-Fredes2018-12-123-3/+0
| | | | | | | | | | | There was a mix of 644 and 755, since we expect the users to execute: python example.py we do not need to have files with 755. Change-Id: Iba9b2f5dbb57fe2a3503d8dfe971a4e92e764022 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io> Reviewed-by: Simo Fält <simo.falt@qt.io>
* Remove semicolon from examplesCristian Maureira-Fredes2018-06-181-4/+4
| | | | | | Task-number: PYSIDE-712 Change-Id: Ib91e4fec88bdb7146e54c285c7f4da60deecb6cf Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
* Add missing image to examples/multimedia/cameraCristian Maureira-Fredes2018-06-181-0/+21
| | | | | | Task-number: PYSIDE-704 Change-Id: I11bfa79667ecde38ec9d8bb20e8114f430ccb1e3 Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
* Change license from all the filesCristian Maureira-Fredes2018-05-033-3/+3
| | | | | | | | | | | | | | | | | Removing the word 'project' from all the headers, and changing the PySide reference from the examples to Qt for Python: The following line was used inside the source/ and build_scripts/ directory: for i in $(grep -r "the Qt for Python project" * |grep -v "pyside2-tools" | awk '{print $1}' | sed 's/:.*//g');do sed -i 's/the\ Qt\ for\ Python\ project/Qt\ for\ Python/g' $i;done and the following line was used inside the examples/ directory: for i in $(grep -r "of the PySide" * |grep -v "pyside2-tools" | awk '{print $1}' | sed 's/:.*//g');do sed -i 's/of\ the\ PySide/of\ the\ Qt\ for\ Python/g' $i;done Change-Id: Ic480714686ad62ac4d81c670f87f1c2033d4ffa1 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io> Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
* Move examples from submodule to pyside-setupFriedemann Kleint2018-01-123-0/+629
Move PySide2 examples that are owned by the Qt Company to a new examples directory. Done-with: Venugopal Shivashankar <Venugopal.Shivashankar@qt.io> Task-number: PYSIDE-363 Change-Id: I14099764d9eef2bc35e067086121427955862e3a Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>