summaryrefslogtreecommitdiffstats
path: root/src/multimedia
Commit message (Collapse)AuthorAgeFilesLines
...
| | * | Merge remote-tracking branch 'origin/5.6' into 5.7Liang Qi2016-09-171-2/+4
| | |\| | | | | | | | | | | | | Change-Id: I27d68b69f2ad15e930b6adab5b2ff583f4642fac
| | | * Optimize QMediaPlaylistPrivate::readItems()Yoann Lopes2016-08-311-2/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When reading playlist items from a file, pass them to the playlist backend all at once rather than one by one. This might be faster depending on the implementation. Task-number: QTBUG-54849 Change-Id: I57acdc68604ee56fe5d7615ba0a72655e668443f Reviewed-by: Christian Stromme <christian.stromme@qt.io>
| * | | Merge remote-tracking branch 'origin/5.7' into 5.8Yoann Lopes2016-09-015-13/+52
| |\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: src/multimedia/audio/qaudiosystemplugin.cpp src/plugins/directshow/helpers/directshowobject.cpp src/plugins/directshow/player/directshowiosource.cpp src/plugins/directshow/player/directshowiosource.h Change-Id: I0e4632c7705128f81429ddbcb0d4abbc04858a8b
| | * | Merge remote-tracking branch 'origin/5.6' into 5.7Liang Qi2016-08-275-13/+52
| | |\| | | | | | | | | | | | | Change-Id: I639d42e78a2b85e939c9f8e9dd5da70cdc058857
| | | * PulseAudio (QSoundEffect): don't write data to an unready streamYoann Lopes2016-08-151-0/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The PulseAudio stream must be ready to write data to it, otherwise an assert is raised. Change-Id: Iaa108124a135b018aa84845a37665895a005f380 Reviewed-by: Christian Stromme <christian.stromme@qt.io>
| | | * PulseAudio: flush stream before loading a new source in a sound effectYoann Lopes2016-08-152-10/+45
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When loading a new QSoundEffect source, the data in the stream must be flushed to avoid that the old source plays right before the new one. Task-number: QTBUG-48982 Change-Id: Iff14884edb2fb4851f93e67ff8191b77ebb16359 Reviewed-by: Christian Stromme <christian.stromme@qt.io>
| | | * Doc: Change instances of 'OS X' to 'macOS'Topi Reinio2016-08-153-3/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | As of version 10.12 (Sierra), the name of Apple's desktop operating system will be macOS. Change all occurrences where the platform is discussed to use the macro \macos (defined in the documentation configuration in qtbase). Change-Id: I1ba3b1e3c11870523516d3a13790d40dd0803aad Reviewed-by: Leena Miettinen <riitta-leena.miettinen@qt.io>
| * | | Improve audio volume documentationYoann Lopes2016-08-227-11/+63
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Added information about volume scales. Change-Id: Ica8367396147e3e1c814b3575faa5cf0503be031 Reviewed-by: Venugopal Shivashankar <Venugopal.Shivashankar@qt.io> Reviewed-by: Christian Stromme <christian.stromme@qt.io>
* | | | GStreamer: move suggestedFileExtension() out of camerabin pluginYoann Lopes2016-08-231-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Now in QGstUtils, in order to be used from other places. Change-Id: Id8beae1b804fa22bd648e254a1ff2a1f1e455a02 Reviewed-by: Christian Stromme <christian.stromme@qt.io>
* | | | GStreamer: improve QGstCodecsInfoYoann Lopes2016-08-231-7/+13
|/ / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | - The class now works with GStreamer < 0.10.31. - New codecElement() function that returns the GStreamer encoder name for a given codec. - New codecOptions() function that returns the list of available GStreamer properties for a given codec. - Don't return duplicate codecs (when several GStreamer plugins are available for a given codec). We now only use the highest ranked one. Change-Id: I4a79099d4469907c73046d7e78df737fe4ed036c Reviewed-by: Christian Stromme <christian.stromme@qt.io>
* | | Merge remote-tracking branch 'origin/5.7' into devLiang Qi2016-08-171-7/+9
|\| | | | | | | | | | | Change-Id: Ib8d05d6e21c7beb19f618cd1edc52d248b1e43b8
| * | Merge remote-tracking branch 'origin/5.6' into 5.7Liang Qi2016-08-131-7/+9
| |\| | | | | | | | | | Change-Id: I3204cdf695f4b47730a88a7c41fc7a6de967b161
| | * Fix playing a playlist containing an invalid media as first itemYoann Lopes2016-08-121-7/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When a playlist contains an invalid media, QMediaPlayer normally continues to the next media. If an invalid media was first in the list, the backend would never go into PlayingState, which would then cause the media player to never start the next item in the list (thinking it's stopped). We now always transition to PlayingState when starting playback of a playlist, regardless of the backend going into that state or not. Change-Id: I4227f937e7a619afbd8adbe2fccedfa5d43ad89a Reviewed-by: Christian Stromme <christian.stromme@qt.io>
* | | Merge remote-tracking branch 'origin/5.7' into devLiang Qi2016-08-091-1/+1
|\| | | | | | | | | | | Change-Id: I0e74582a735dd8fd169ac928a32143ab80a2d2a0
| * | Merge remote-tracking branch 'origin/5.6' into 5.7Liang Qi2016-08-041-1/+1
| |\| | | | | | | | | | Change-Id: If640a9831fc4faf43a445bd0379fee1d53661f47
| | * QPlaylistFileParser: fix QUrl::resolved+QUrl::fromLocalFile misuseDavid Faure2016-08-041-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | QUrl::resolved can be used to resolve relative paths, but not by passing them via QUrl::fromLocalFile (8a33077 in qtbase made QUrl more strict). To resolve both relative and absolute local paths against a local directory, QUrl::fromUserInput(3 args) does the job. Change-Id: Ifc01bbd590978f939f9538e70d12f2f3704d7b5d Reviewed-by: Yoann Lopes <yoann.lopes@qt.io>
* | | Merge remote-tracking branch 'origin/5.7' into devEdward Welbourne2016-07-211-0/+3
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: src/plugins/directshow/player/directshowiosource.cpp One side disintermediated filling a vector; the other reduced it to one entry. src/plugins/directshow/player/directshowiosource.h One side renamed a member, the other added another adjacent to it. src/plugins/pulseaudio/qpulseaudioengine.h One side added a header, the other replaced the next with a different header. Change-Id: I3a031975f5af43ca39cca571f215c612f640b7d6
| * | Merge remote-tracking branch 'origin/5.6' into 5.7Liang Qi2016-06-301-0/+3
| |\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Blacklisted a few functions in tst_QAudioInput. Conflicts: .qmake.conf src/plugins/avfoundation/camera/avfcameracontrol.mm src/plugins/avfoundation/camera/avfcameraservice.h src/plugins/avfoundation/camera/avfcameraservice.mm src/plugins/avfoundation/camera/avfcamerasession.h src/plugins/avfoundation/camera/avfcamerasession.mm src/plugins/avfoundation/camera/avfcameraviewfindersettingscontrol.h src/plugins/avfoundation/camera/avfcameraviewfindersettingscontrol.mm src/plugins/avfoundation/camera/avfimagecapturecontrol.mm src/plugins/avfoundation/camera/avfimageencodercontrol.mm src/plugins/avfoundation/camera/avfmediarecordercontrol.h src/plugins/avfoundation/camera/avfmediarecordercontrol.mm tests/auto/integration/qaudioinput/BLACKLIST Task-number: QTBUG-54459 Task-number: QTBUG-49736 Change-Id: I3a1fe8cef50b44d5c2785aaf4cf69fe3f16728e6
| | * QCameraPrivate: NULL-fill fields to be set up by init().Edward Welbourne2016-06-031-0/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | c.f. the constructor already doing the same for provider and the various fields populated by initControls(), which init() calls. Should be redundant (all QCamera constructors do invoke d->init() as soon as they've constructed d), but better safe than sorry. Calms Coverity (CID 22319). Change-Id: Ibf5d13bb1ef17be8e66fa14ed5617b700051c495 Reviewed-by: Yoann Lopes <yoann.lopes@qt.io>
* | | Add LogarithmicVolumeScale to VolumeScale enum.Yoann Lopes2016-06-143-13/+55
| | | | | | | | | | | | | | | Change-Id: I0b556b5f705825fc8c8135305bda4bc860ffbf14 Reviewed-by: Christian Stromme <christian.stromme@qt.io>
* | | Fix out-of-date documentation for QAudioSystemPlugin.Yoann Lopes2016-06-031-16/+7
| | | | | | | | | | | | | | | Change-Id: I0c186ae42a6f1ad0d2fde38544341741d4e8df6a Reviewed-by: Christian Stromme <christian.stromme@qt.io>
* | | Add new volume conversion API.Yoann Lopes2016-06-033-0/+139
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | All Qt Multimedia volume APIs expect a linear volume factor. However, UI volume controls should typically use a logarithmic or cubic scale to match how the human ear perceives loudness. The new helper function (C++ and QML) provides a way to do the conversion from one scale to another. Change-Id: If7795426b728ab0e8fd6635988dbc9be795e3e5e Reviewed-by: Christian Stromme <christian.stromme@qt.io>
* | | Remove mentioning of -audio-backend command line optionLars Knoll2016-05-311-6/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | The option has not done anything for quite some time, let's get rid of it. Change-Id: I8863ae81b74f1065d0eb0dd95b8ce192a6cd6a51 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com> Reviewed-by: Yoann Lopes <yoann.lopes@qt.io>
* | | Merge remote-tracking branch 'origin/5.7' into devLiang Qi2016-05-241-3/+0
|\| | | | | | | | | | | Change-Id: I5aedca14c2bd454de0c274eeca88d15b83ae07a5
| * | Merge remote-tracking branch 'origin/5.6' into 5.7Liang Qi2016-05-191-3/+0
| |\| | | | | | | | | | Change-Id: Ib95ddbbc6e2b69663597cae045ec81eda6d12d58
| | * Doc: Remove repository name from examplesinstallpathTopi Reinio2016-05-121-3/+0
| | | | | | | | | | | | | | | | | | | | | | | | Examples in binary packages now directly match the install path. Change-Id: Ic272c741ca0bb805dc50ce591ac0ea1d93f07944 Task-number: QTBUG-52953 Reviewed-by: Antti Kokko <antti.kokko@qt.io>
* | | Improve QAudioDeviceInfo::defaultDevice().Christian Stromme2016-05-206-35/+124
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The previous implementation of QAudioDeviceInfo::defaultXDevice() would always report the first available device as the "default" one, making the order, in which devices were listed, a hidden requirement when implementing audio plugins. To make it easier and more reliable to retrieve the default device, all new plugins should implement the new QAudioSystemPluginExtension interface as well as the QAudioSystemPlugin. Devices will be chosen in the following order (first match wins): default plugin -> default device -> first available device plugins -> default device -> first available device Task-number: QTBUG-51292 Change-Id: I8ace78858976fe7c60a2c4a117ef15c4e1bb177f Reviewed-by: Yoann Lopes <yoann.lopes@qt.io>
* | | Merge remote-tracking branch 'origin/5.7' into devLiang Qi2016-05-061-3/+7
|\| | | | | | | | | | | Change-Id: I8027e798d85ae60dbcb4fbc8592e3992af7546d4
| * | Add missing implementation for QMediaPlaylist::moveMedia().Yoann Lopes2016-04-271-3/+9
| | | | | | | | | | | | | | | | | | | | | | | | QMediaNetworkPlaylistProvider, which is the default playlist provider, didn't have an implementation for that new function added in 5.7. Change-Id: I1ec8cdd60a1429addd47d0b37131f724e8d4b748 Reviewed-by: Christian Stromme <christian.stromme@theqtcompany.com>
| * | Fix unused variable warningChristian Stromme2016-04-201-2/+0
| | | | | | | | | | | | | | | | | | | | | | | | Caused by a Q_D macro in QMediaNetworkPlaylistProvider::moveMedia(). - warning: unused variable 'd' [-Wunused-variable] Change-Id: I43518366153ddabc7a8401ee112abec78640b992 Reviewed-by: Yoann Lopes <yoann.lopes@qt.io>
* | | Remove Windows CE.Friedemann Kleint2016-04-281-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | Remove #ifdef sections for Q_OS_WINCE and wince .pro file clauses. Task-number: QTBUG-51673 Change-Id: I07ea3a9522d5b6bd8cce6f5256d92e65a699e3f5 Reviewed-by: Yoann Lopes <yoann.lopes@qt.io>
* | | Merge remote-tracking branch 'origin/5.7' into devLiang Qi2016-04-0867-262/+153
|\| | | | | | | | | | | Change-Id: Ie1331c18854bea488c773807597f8ad209437657
| * | Merge remote-tracking branch 'origin/5.6' into 5.7Liang Qi2016-04-084-0/+4
| |\| | | | | | | | | | Change-Id: I7de78c63b5f81620474c69e5c651202c553a70d7
| | * winrt: add default capabilitiesMaurice Kalinowski2016-04-081-0/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | A module compiled for WinRT should define a default set of capabilities to enable all features specified by the module. Task-number: QTBUG-38802 Change-Id: I57c3aec60c72b1383b836cee2087b801196def1d Reviewed-by: Oliver Wolff <oliver.wolff@theqtcompany.com> Reviewed-by: Yoann Lopes <yoann.lopes@theqtcompany.com>
| | * Purge sRGB chunks from PNGs in documentation.Edward Welbourne2016-03-223-0/+0
| | | | | | | | | | | | | | | | | | | | | | | | Subjects each *.png file that matched grep -law "sRGB" to: pngcrush -ow -brute -rem allb -reduce -force Change-Id: I2ac34243ebe39c93860c5ac595c2f1eca4322eb8 Reviewed-by: Topi Reiniö <topi.reinio@theqtcompany.com>
| * | Merge remote-tracking branch 'origin/5.6' into 5.7Liang Qi2016-03-216-177/+64
| |\| | | | | | | | | | Change-Id: Ieb1a3081907093e31e8c8b7f95993bb3b2173672
| | * Merge remote-tracking branch 'origin/5.6.0' into 5.6Frederik Gladhorn2016-03-174-7/+7
| | |\ | | | | | | | | | | | | Change-Id: I91fb2886b4ab8f0b9e2e28329cec69dfa2cb5435
| | | * Update version number in QML plugins.v5.6.0Yoann Lopes2016-02-254-7/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Also removes unnecessary references of that import version in the documentation and snippets. The import version is always displayed at the top of every doc page anyway. Change-Id: Ifbf4666e0bc333c51f51104a5720b988e8c04d0b Reviewed-by: Christian Stromme <christian.stromme@theqtcompany.com>
| | * | PulseAudio: change the way volume is applied.Yoann Lopes2016-03-162-170/+57
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | We used to change the PulseAudio sink input volume. Doing so had some potential unwanted side effects depending on the PulseAudio server configuration. When flat volumes were enabled, it would affect the global system volume. It could also affect the volume of other streams having the same audio role. Volumes in Qt Multimedia are supposed to be relative to the application volume and should not affect anything else than the object on which it was changed. To guarantee that, PulseAudio volume APIs are not used anymore. Instead, software-based volume attenuation is applied on the audio samples before being passed to PulseAudio. Applies to QSoundEffect, QAudioOutput and QAudioInput. Task-number: QTBUG-40823 Task-number: QTBUG-49461 Change-Id: I690716976bda8fe666969ca2cbdf6d8d0b419733 Reviewed-by: Christian Stromme <christian.stromme@theqtcompany.com>
| * | | Merge remote-tracking branch 'origin/5.6' into 5.7Liang Qi2016-03-0758-85/+85
| |\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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-0356-82/+82
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | -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>
| | * | rely on the automatically defined QT_BUILD_*_LIBOswald Buddenhagen2016-02-251-1/+1
| | | | | | | | | | | | | | | | | | | | Change-Id: I8c1c755270aa0a703103925656f7c1b555e4db1f Reviewed-by: Yoann Lopes <yoann.lopes@theqtcompany.com>
| | * | consistently put {qt,qml}_{module,plugin} at the end of project filesOswald Buddenhagen2016-02-251-2/+2
| | |/ | | | | | | | | | | | | | | | | | | | | | this fixes static builds by ensuring that all dependencies are exported. Task-number: QTBUG-51071 Change-Id: I8e1554b648327ea2fb342b882ce8e439bd6f271d Reviewed-by: Yoann Lopes <yoann.lopes@theqtcompany.com>
* | | Use the static version of QFileInfo::exists(), it's faster.Sergio Martins2016-03-021-1/+1
| | | | | | | | | | | | | | | | | | | | | according to Qt documentation. [-Wclazy-qfileinfo-exists] Change-Id: If5595af7bcc6d5cfe239718c194afc7a56c64373 Reviewed-by: David Faure <david.faure@kdab.com>
* | | Pass by QUrl by const-ref, it's non-trivial.Sergio Martins2016-03-021-2/+2
| | | | | | | | | | | | | | | | | | | | | [-Wclazy-function-args-by-ref] Change-Id: Iac68ca2d3d53951190db6d24ebbbcb60e8bbd789 Reviewed-by: David Faure <david.faure@kdab.com>
* | | Make QMediaTimeRange::operator== more efficient and readableSergio Martins2016-03-011-10/+1
|/ / | | | | | | | | | | | | | | by using QList<QMediaTimeInterval>::operator== Change-Id: I4704ffa2432979e3b2752ebefa7c6b48cc7f713b Reviewed-by: Marc Mutz <marc.mutz@kdab.com> Reviewed-by: Yoann Lopes <yoann.lopes@theqtcompany.com>
* | Merge remote-tracking branch 'origin/5.6' into devLiang Qi2016-01-262-3/+2
|\| | | | | | | Change-Id: I2e4e9cca01d63ed0d1e7f71c7a58322390696036
| * Merge remote-tracking branch 'origin/5.5' into 5.6Liang Qi2016-01-211-2/+0
| |\ | | | | | | | | | Change-Id: I6d88b17f44479a522d181374023648dd007112bd
| | * GStreamer: fix GstAppSrc usage.Yoann Lopes2016-01-191-2/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Allow our GstAppSrc wrapper to be reconfigured with a new GstAppSrc object. This is necessary because that object changes every time playback is restarted, even for the same source. The consequence of not allowing the reconfigure was that playback for a given qrc media would only work the first time; any subsequent calls to play() would not work since our wrapper wouldn't know about the new GstAppSrc object and therefore wouldn't be able to produce any data. Also improved management of the wrapper lifecycle. Task-number: QTBUG-49531 Change-Id: I905afb6848cc7e9a563b4edc2c5875cdd7e53d21 Reviewed-by: Christian Stromme <christian.stromme@theqtcompany.com>
| * | Merge remote-tracking branch 'origin/5.5' into 5.6Liang Qi2016-01-191-1/+2
| |\| | | | | | | | | | Change-Id: I01940fe4f3d059fbb425492a1748e2b5d9b6804b