summaryrefslogtreecommitdiffstats
path: root/src/multimedia/audio/qaudiodecoder.h
Commit message (Collapse)AuthorAgeFilesLines
* QAudioDecoder: fix unit tests for GStreamerTim Blechmann2024-04-171-3/+5
| | | | | | | | | | | | | | | When setting a QUrl with an empty scheme, we need to set the file:// pattern for uridecodebin. This has been done for QMediaPlayer in the past, but not for QAudioDecoder. Compare: 8a3806f6263f56b5be5b557e321b9b13d1913d5f To keep consistency with QMediaPlayer, we introduce a QAudioDecoderPrivate class. Pick-to: 6.5 6.7 Task-number: QTBUG-96985 Change-Id: If954a04a003aecb0f862a7e5041ead43e4c9d259 Reviewed-by: Artem Dyomin <artem.dyomin@qt.io>
* Enable error reporting when failed to initialize backend elementPiotr Srebrny2022-09-261-1/+1
| | | | | | | | | | | | | | | This patch adds an option to report error message when a backend component cannot be instantiated. This error message is then displayed in the console with qWarning and in some cases reported to the app user with error signals. We need further improvements on the error reporting side. Additionally, this patch cleans up the code in the .cpp API classes. Pick-to: 6.4 Change-Id: Id39865cc8f1e9b52804bf5b9d9b15e738508f860 Reviewed-by: Lars Knoll <lars@knoll.priv.no>
* Use SPDX license identifiersLucie Gérard2022-06-241-38/+2
| | | | | | | | | | | 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>
* QAudioDecoder: Re-add API for setting desired audio formatDoris Verria2021-08-251-0/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | Re-add API for setting/getting desired format for the decoded audio samples. Readd support on all backends with the exception of Android. - Add a warning in the docs for lack of support on Android. - Make the behavior of audioFormat() consistent on all platforms. It will return an invalid format if no format is set. Change Windows implementation to do so. - Fix the documentation for audioFormat(). The format returned is the one set to the decoder, and the decoded buffers may not have this format, in the case when it was set to an invalid one. - Some small fixes on darwin and Windows. Partly reverts af1182b5e29afa0cd69f929d54da224019707214. Fixes: QTBUG-95766 Pick-to: 6.2 Change-Id: Id1d6b33a6b9d916e272d3b9d9cee78b6f63609f3 Reviewed-by: Lars Knoll <lars.knoll@qt.io>
* Fix the QAudioDecoder APILars Knoll2021-06-171-17/+4
| | | | | | | | | | | | | | | | Adjust API after code review. Remove the audioFormat property. QAudioDecoder will now always decode to the native format used in the encoded file. QAudioBuffer will have the correct format set, and it's up to the app to handle this correctly. Remove state() and replace by isDecoding(). Change-Id: I6f2ac375d98b2d7c36aebaa729599f78699b1c7b Reviewed-by: André de la Rocha <andre.rocha@qt.io> Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io> Reviewed-by: Doris Verria <doris.verria@qt.io>
* Replace deprecated Q_ENUMS with Q_ENUMPiotr Srebrny2021-06-091-3/+2
| | | | | Change-Id: I86d37b25783c844af92a6ef260547cb26848b1fb Reviewed-by: Lars Knoll <lars.knoll@qt.io>
* Cleanup the audio decoder architectureLars Knoll2021-05-171-4/+2
| | | | | | | | | | | | | | | QPlatformAudioDecoder should not be a QObject, instead just have a pointer back to the front-end class. The backend is now also properly owned by the frontend. Get rid of QAudioDecoderPrivate, we don't need it anymore. Fix the audiodecoderbackend autotest and the audiodecoder example. Change-Id: Id9a3368788b5398f37b77be819e8f12947ba045f Reviewed-by: André de la Rocha <andre.rocha@qt.io> Reviewed-by: Lars Knoll <lars.knoll@qt.io>
* Some API and doc fixes for QAudioDecoderLars Knoll2021-05-071-3/+3
| | | | | Change-Id: I0f839896c9f813939b99b01242b54a00796731a8 Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
* Fix qaudiobuffer and qaudiodecoder autotestsLars Knoll2021-04-231-1/+1
| | | | | | | | Fix one enum value in the public API to better reflect the error that is happening. Change-Id: I4a71d64c79d443eb6fa9068defb90f3b436ec194 Reviewed-by: André de la Rocha <andre.rocha@qt.io>
* Remove manual metatype declarations and registrationsLars Knoll2021-03-021-3/+0
| | | | | | | | Those aren't needed in Qt 6 anymore. Change-Id: I1d19a0dd9c42cfa3fe6d88a56accbe3af2efdf47 Reviewed-by: Doris Verria <doris.verria@qt.io> Reviewed-by: Lars Knoll <lars.knoll@qt.io>
* Remove QMediaSource dependency from QAudioDecoderLars Knoll2021-02-171-2/+3
| | | | | | | | Nothing needs this here. Change-Id: I66d5a7f22495dd24d2fdebd780f1c0ad574b55de Reviewed-by: Doris Verria <doris.verria@qt.io> Reviewed-by: Lars Knoll <lars.knoll@qt.io>
* Move QAudioDecoder over to use the new platform infrastructureLars Knoll2021-01-291-2/+0
| | | | | | | | | | | And remove the hasSupport() method for now as with QMediaPlayer and QMediaRecorder. Also adjust the auto test to use the new mock infrastructure. Change-Id: I84a8587f273525d1ee1ed26ded6822bb92448e01 Reviewed-by: Doris Verria <doris.verria@qt.io> Reviewed-by: Lars Knoll <lars.knoll@qt.io>
* Make bind/unbind() not virtualLars Knoll2021-01-221-4/+0
| | | | | | | | | They are never reimplemented and should go in the longer term. Change-Id: Ib0f6010fd14e74981750fb70f9e5988e65bebcf6 Reviewed-by: Doris Verria <doris.verria@qt.io> Reviewed-by: Lars Knoll <lars.knoll@qt.io>
* Rename QMediaObject to QMediaSourceLars Knoll2021-01-221-2/+2
| | | | | | | | That actually describes what those classes are. Change-Id: I9ce01707bb260ff6452359e211f2c22b5740e61b Reviewed-by: Doris Verria <doris.verria@qt.io> Reviewed-by: Lars Knoll <lars.knoll@qt.io>
* Replace Q_NULLPTR with nullptrKevin Funk2017-09-271-1/+1
| | | | | Change-Id: I3b7601b4a97f8a2b1d2da6ef134f1577846ba713 Reviewed-by: Lars Knoll <lars.knoll@qt.io>
* Add missing override and remove redundant virtualAlexander Volkov2016-12-121-2/+2
| | | | | Change-Id: Ifd439abf21877adff57080489324bea729ee5279 Reviewed-by: Yoann Lopes <yoann.lopes@qt.io>
* Merge remote-tracking branch 'origin/5.6' into 5.7Liang Qi2016-03-071-1/+1
|\ | | | | | | | | | | | | | | | | | | | | | | Conflicts: src/plugins/avfoundation/mediaplayer/mediaplayer.pro tests/auto/unit/qmediaserviceprovider/mockserviceplugin1/mockserviceplugin1.pro tests/auto/unit/qmediaserviceprovider/mockserviceplugin2/mockserviceplugin2.pro tests/auto/unit/qmediaserviceprovider/mockserviceplugin3/mockserviceplugin3.pro tests/auto/unit/qmediaserviceprovider/mockserviceplugin4/mockserviceplugin4.pro tests/auto/unit/qmediaserviceprovider/mockserviceplugin5/mockserviceplugin5.pro Change-Id: I5742596230dc510ba2a09eba624429bb67179194
| * Add explicit and make public headers compile with ↵Marc Mutz2016-03-031-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | -Wzero-as-null-pointer-constant ... or equivalent. QtBase 5.6 headers already compile that way, so let the other modules follow suit. Cleaned up placement of * and & in parameters as a drive-by. Added explicit where it was missing as a drive-by. This is not a source-incompatible change, because code that breaks by this is a bug. Let's not have this sitting around in an LTS. Task-number: QTBUG-45291 Change-Id: If81ed0c71393aee21d347f5ade4bf3fcc07cd82f Reviewed-by: Yoann Lopes <yoann.lopes@theqtcompany.com>
* | Updated license headersAntti Kokko2016-01-191-14/+20
|/ | | | | | | | | | | From Qt 5.7 -> LGPL v2.1 isn't an option anymore, see http://blog.qt.io/blog/2016/01/13/new-agreement-with-the-kde-free-qt-foundation/ Updated license headers to use new LGPL header instead of LGPL21 one (in those files which will be under LGPL v3) Change-Id: I324f65c61171f36641472964d095d72e452afb3a Reviewed-by: Jani Heikkinen <jani.heikkinen@theqtcompany.com> Reviewed-by: Lars Knoll <lars.knoll@theqtcompany.com>
* Update copyright headersAntti Kokko2015-02-121-7/+7
| | | | | | | | | Qt copyrights are now in The Qt Company, so we could update the source code headers accordingly. In the same go we should also fix the links to point to qt.io. Change-Id: I1c6faa4f59f8eca54f01ef20941fa60161dd7872 Reviewed-by: Yoann Lopes <yoann.lopes@theqtcompany.com>
* Update license headers and add new license filesAntti Kokko2014-08-241-19/+11
| | | | | | | | | - Renamed LICENSE.LGPL to LICENSE.LGPLv21 - Added LICENSE.LGPLv3 & LICENSE.GPLv2 - Removed LICENSE.GPL Change-Id: Ied06887225df341064c12bcc14c259ae74116f2e Reviewed-by: Jani Heikkinen <jani.heikkinen@digia.com>
* Merge remote-tracking branch 'origin/stable' into devFrederik Gladhorn2013-02-191-1/+1
|\ | | | | | | | | | | | | | | | | | | Conflicts: src/multimedia/doc/qtmultimedia.qdocconf src/plugins/blackberry/mediaplayer/bbmetadata.cpp src/plugins/blackberry/mediaplayer/bbmetadata.h tests/auto/unit/qpaintervideosurface/tst_qpaintervideosurface.cpp Change-Id: I447c297ea15a94d1d2feb0fb5f9edac8c5d4505a
| * Update copyright year in Digia's license headersSergio Ahumada2013-01-101-1/+1
| | | | | | | | | | | | Change-Id: Ia8c1c38aba1544603fada8c414cc856f365fd15b Reviewed-by: Akseli Salovaara <akseli.salovaara@digia.com> Reviewed-by: Sergio Ahumada <sergio.ahumada@digia.com>
* | Remove QT_{BEGIN,END}_HEADER macro usageSergio Ahumada2013-01-281-4/+0
|/ | | | | | | | | The macro was made empty in qtbase/ba3dc5f3b56d1fab6fe37fe7ae08096d7dc68bcb and is no longer necessary or used. Discussed-on: http://lists.qt-project.org/pipermail/development/2013-January/009284.html Change-Id: Id95d10f5d9c146d9eb496119af6a8b8501ffcb17 Reviewed-by: Jędrzej Nowacki <jedrzej.nowacki@digia.com>
* Fix syncqt-warnings.Friedemann Kleint2012-11-191-3/+3
| | | | | | | Use include with module name for the multimedia-classes. Change-Id: I8da1a4015a162959b604cd859aee139e246e3f6c Reviewed-by: Andras Becsi <andras.becsi@digia.com>
* Rename namespace QtMultimedia -> QMultimediaSze Howe Koh2012-11-061-1/+1
| | | | | | | | | | | | | | | | Main code, examples, tests and docs updated. Method: 1. Mass find+replace "QtMultimedia::" -> "QMultimedia::" 2. Hand-modified declaration in qtmedianamespace.h/cpp For consistency (with minimal disruption), namespaces with a "Qt" prefix will be renamed. Part of the Header Consistency Project (http://lists.qt-project.org/pipermail/development/2012-October/007570.html) Change-Id: I1fbc43a1aa91d996aa61869fcd8d05186bf7cf6d Reviewed-by: Lars Knoll <lars.knoll@digia.com> Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>
* Remove stale QT_MODULE() usage casesSergio Ahumada2012-10-251-2/+0
| | | | | | | As of Qt5, this macro is defined to be empty; simply get rid of these leftovers. Change-Id: Id24056c0afd013904b1e098dc49e502038fd77a4 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* Change copyrights from Nokia to DigiaIikka Eklund2012-09-241-24/+24
| | | | | | | | | Change copyrights and license headers from Nokia to Digia Change-Id: Id77334cfb15de096941c88e32d04ca07b4eb4709 Reviewed-by: Janne Anttila <janne.anttila@digia.com> Reviewed-by: Sergio Ahumada <sergio.ahumada@digia.com> Reviewed-by: Lars Knoll <lars.knoll@digia.com>
* Move QAudioDecoder to public.Michael Goddard2012-04-111-0/+149
To get better feedback between alpha & beta. Change-Id: I3620825fb9c2bb9de69951cf1d583b191d62cb0d Reviewed-by: Jonas Rabbe <jonas.rabbe@nokia.com>