summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
...
* | | DirectShow: Add audio and video probes classesChristian Strømme2017-01-275-0/+246
| | | | | | | | | | | | | | | | | | | | | | | | This change only adds the audio and video probe controls, the actual implementation comes in a separate change. Change-Id: I0136cf1ef3cea3d83f7203d1955513ed44d93e5a Reviewed-by: Yoann Lopes <yoann.lopes@qt.io>
* | | DirectShow: Use the new sample grabber in DsCameraChristian Strømme2017-01-272-100/+22
| | | | | | | | | | | | | | | | | | | | | | | | There's no need to have a separate implementation in the camera code, so removing this one in favor of the new sample grabber. Change-Id: I5b68d804788745b6ed3d3fceba295d1d99bb5915 Reviewed-by: Yoann Lopes <yoann.lopes@qt.io>
* | | DirectShow: Sample grabberChristian Strømme2017-01-274-0/+293
| | | | | | | | | | | | | | | | | | | | | | | | Sample grabber filter to be used in the camera implementation, and a prerequisite for adding audio and video probes support in DirectShow. Change-Id: I94f6332ebf75788847bfe629e92132f8a03b40e7 Reviewed-by: Yoann Lopes <yoann.lopes@qt.io>
* | | DirectShow: Add utility classChristian Strømme2017-01-275-36/+407
| | | | | | | | | | | | | | | | | | | | | Centralized place for helper functions etc. Change-Id: Ia4474d0681a37fc95a100a3766800141a8b1d900 Reviewed-by: Yoann Lopes <yoann.lopes@qt.io>
* | | DirectShow: Sanitize DirectShowMediaTypeChristian Strømme2017-01-2713-215/+227
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The DirectShowMediaType is now a thin data wrapper around AM_MEDIA_TYPE and will for the most look and work the same way, with the exception that it cleans up after itself. All utility functions are now static, except clear() which, for convenience, is also provided as a non-static member function. In addition to the changes mentioned above, duplicated methods were removed, conversion for ARGB32 was added, and an attempt to make the usage of AM_MEDIA_TYPE and DirectShowMediaType was made more consistent. Change-Id: Iad32fb8eeabd9d4183e9bd10426cac3963e5d99a Reviewed-by: Yoann Lopes <yoann.lopes@qt.io>
* | | Add audio probe handling in the player exampleChristian Strømme2017-01-274-8/+219
| | | | | | | | | | | | | | | | | | | | | | | | Adds histogram widgets to visualize the data received from the audio probes, similar to what's done for the video probe already. Change-Id: Ie49a7766dc7ddcab1d9ccaf31372fb23f9ff5b68 Reviewed-by: Yoann Lopes <yoann.lopes@qt.io>
* | | Make QAudioSystemPlugin doc visible.Yoann Lopes2017-01-272-4/+0
| | | | | | | | | | | | | | | Change-Id: I0384fd6069349f321e60ffedd03834f1c46f634b Reviewed-by: Yoann Lopes <yoann.lopes@qt.io>
* | | Merge remote-tracking branch 'origin/5.8' into devYoann Lopes2017-01-2627-79/+175
|\| | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: .qmake.conf examples/multimediawidgets/videographicsitem/videoplayer.h src/plugins/gstreamer/mediaplayer/qgstreamerplayersession.cpp Change-Id: Id5ce05ffe2cd25657232157b162680b2e24a35ba
| * | Only update the texture if the m_glResources are validAndy Shaw2017-01-131-1/+1
| | | | | | | | | | | | | | | Change-Id: Ifa0c768e2f0299d31d3d52db975c896bdb2aab5e Reviewed-by: Yoann Lopes <yoann.lopes@qt.io>
| * | QWindowVideoWidgetBackend: scale coordinates passed to controlFriedemann Kleint2017-01-112-4/+21
| | | | | | | | | | | | | | | | | | | | | | | | | | | Use native coordinates when setting the display rectangle. Task-number: QTBUG-57145 Change-Id: I4783edcbee021e6020e8ca946f15cca8a1173589 Reviewed-by: Morten Johan Sørvig <morten.sorvig@qt.io> Reviewed-by: Yoann Lopes <yoann.lopes@qt.io>
| * | Bump versionOswald Buddenhagen2017-01-031-1/+1
| | | | | | | | | | | | Change-Id: I84adea86443741534f67a92cef5344d094ab92ae
| * | winrt: Fix pause/play for videosMaurice Kalinowski2017-01-031-1/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This is partially a revert of bff19dbe6733d245. While that commit fixed switching cameras it did not respect pausing a video, where setActive is called from a different thread than in the camera case. Using shutdown introduced a wait, which in that case deadlocked. Instead revert to request an interrupt, but when restarting make sure that the render thread is on hold before start is invoked. Task-number: QTBUG-53722 Change-Id: Id5a722911bb2c30509fabb73bec925cadbf77628 Reviewed-by: Oliver Wolff <oliver.wolff@qt.io>
| * | winrt: Fix video playbackMaurice Kalinowski2017-01-031-1/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Rendering should only be activated once the video frame size is known. Otherwise the texture is created with an invalid size and rendering will be stopped. This happens for some codecs where MF_MEDIA_ENGINE_EVENT_LOADEDMETADATA is not known instantly after loading video files. Task-number: QTBUG-57707 Change-Id: Ic2347c8606239770e129544fd228b96929ed6198 Reviewed-by: Oliver Wolff <oliver.wolff@qt.io>
| * | return better images in metadata in gstreamerTasuku Suzuki2016-12-151-1/+2
| | | | | | | | | | | | | | | | | | | | | | | | cover art image uses "preview image". But "image" is better for that. "preview image" will be used for thumbnail image. Change-Id: Ic01f878f146b0369eb84e6b153fa68fbc6c54e57 Reviewed-by: Yoann Lopes <yoann.lopes@qt.io>
| * | GStreamer: Only register one typefind functionChristian Strømme2016-12-142-12/+56
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Each time a GStreamer session was created it would register the same callback function, but each time with a new user data, which in our case was a pointer to the session. The pointer would then be used without verification of its validity. The problem with this is that the typefind function is static and used for all sessions, making multiple sessions impossible. The documentation for gst_type_find_register() also clearly specifies that the supplied user data needs to valid as long as the plugin is loaded, which of course was not the case. With this change only one callback function will be registered, and each session will register itself with a typefind delegate, that will keep track of sessions that are still alive. Note: This only makes sure that the typefind function is called on a valid session, it does not make sure that the type actually belong to the session, which is a separate issue. Task-number: QTBUG-50460 Change-Id: I20eeabfe4e85839e8845003298d6f64705c2e15e Reviewed-by: Yoann Lopes <yoann.lopes@qt.io>
| * | PulseAudio: make sound effect implementation more robustYoann Lopes2016-12-122-25/+94
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | - Always lock the pulse thread when modifying variables that are also used in callbacks (prevents concurrent access). - Improved handling of repeated calls to setSource(). - Don't try to write to the device when there is nothing to write. - Stop the Pulse thread when there are no sound effects in use anymore. Task-number: QTBUG-55735 Change-Id: I5e1c6beab89fdbb98707f5fcbb539dddea9a333f Reviewed-by: Christian Stromme <christian.stromme@qt.io>
| * | GStreamer: fix a memory leak in the media player sessionYoann Lopes2016-12-121-4/+6
| | | | | | | | | | | | | | | | | | | | | A gchar* was never freed. Change-Id: Ib28fee3d13839bf15a9216bdcd5da68b6d1f904c Reviewed-by: Christian Stromme <christian.stromme@qt.io>
| * | Examples: Add missing overrideAlexander Volkov2016-12-1219-46/+46
| | | | | | | | | | | | | | | | | | Change-Id: I54529fdc8013497edb98ee97863fe4a141bdbf1c Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io> Reviewed-by: Yoann Lopes <yoann.lopes@qt.io>
* | | Remove support for WinRT 8.1 and Windows Phone 8.1Maurice Kalinowski2017-01-195-28/+1
| | | | | | | | | | | | | | | | | | Task-number: QTBUG-57288 Change-Id: I29eb9e6fa20702fc5571b9eb184ab80ca38e137d Reviewed-by: Oliver Wolff <oliver.wolff@qt.io>
* | | QtMultimedia: Use the newly-introduced qmlWarning instead of qmlInfoRobin Burchell2017-01-131-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | qmlInfo will shortly be returning info-level messages (as the name hints), rather than warning level messages. Change-Id: I42426cf89c328db73dc307f9f587654a048047ba Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
* | | GStreamer: Add missing override and remove redundant virtualAlexander Volkov2016-12-1336-208/+208
| | | | | | | | | | | | | | | Change-Id: I61997676d7f002e769de499b19cbea3d96876480 Reviewed-by: Yoann Lopes <yoann.lopes@qt.io>
* | | GStreamer camerabin: Add missing override and remove redundant virtualAlexander Volkov2016-12-1323-119/+119
| | | | | | | | | | | | | | | Change-Id: I17d716e366cd74226ac858669b10fa0ed28a2fad Reviewed-by: Yoann Lopes <yoann.lopes@qt.io>
* | | Add missing override and remove redundant virtualAlexander Volkov2016-12-1253-323/+323
| | | | | | | | | | | | | | | Change-Id: Ifd439abf21877adff57080489324bea729ee5279 Reviewed-by: Yoann Lopes <yoann.lopes@qt.io>
* | | Improve the playlist parserChristian Strømme2016-12-124-176/+312
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The main goals of this change is to make the parser more lightweight, e.g., by removing unneeded QObject allocations, and make it possible to stop the parsing more quickly. In addition, support for the same resources as the media player was added, that is, support for QMediaContent, QMediaResource, and QIODevice. The combination of these changes should make it easier and faster to use the parser internally. Change-Id: I1f25d6529fa9bab0c6c3c9d9de35b7f8b4a708e0 Reviewed-by: Yoann Lopes <yoann.lopes@qt.io>
* | | GStreamer: Remove typefind functionChristian Strømme2016-12-122-68/+12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The typefind function was not well suited for our use-case, as it can't be configured to work with multiple sessions. The detection of playlist resources has also been moved into the abstraction layer; making this implementation redundant. Change-Id: Ife04ffe91707665a36706330f89401b49248bf91 Reviewed-by: Yoann Lopes <yoann.lopes@qt.io>
* | | Merge remote-tracking branch 'origin/5.8' into devLiang Qi2016-12-12158-3121/+855
|\| | | | | | | | | | | | | | | | | | | | Conflicts: src/plugins/gstreamer/mediacapture/qgstreameraudioencode.cpp Change-Id: I7c30c2d13fdd07ee07e4449d5d3e256e988d3793
| * | Update label for backend testMaurice Kalinowski2016-12-091-1/+1
| |/ | | | | | | | | | | | | | | The "backend for Qt Multimedia" string is just redundant information causing noise and formatting of configure to be broken. Change-Id: Iac0e7a675640e70ab7f11180b2059c61949272b9 Reviewed-by: Lars Knoll <lars.knoll@qt.io>
| * Merge remote-tracking branch 'origin/5.7' into 5.8Liang Qi2016-11-267-24/+44
| |\ | | | | | | | | | | | | | | | | | | | | | Conflicts: src/plugins/qnx/qnx.pro sync.profile Change-Id: I353a44578276264a9ffb80820d8c5a0babfa1638
| | * Merge remote-tracking branch 'origin/5.6' into 5.75.7Liang Qi2016-11-244-17/+3
| | |\ | | | | | | | | | | | | Change-Id: Ic43abb034fa0a65b86a6e3511d29b8231ced5ec2
| | | * DirectShow: Remove unused class and member in DSCameraServiceChristian Strømme2016-11-231-2/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The class DSVideoOutputControl doesn't exist anymore, and the member is not used anywhere. Change-Id: I9458822501b4669e5796b4dff0b187242134795c Reviewed-by: Yoann Lopes <yoann.lopes@qt.io>
| | | * WMF: Fix copy-and-paste errorChristian Strømme2016-11-171-1/+1
| | | | | | | | | | | | | | | | | | | | Change-Id: I6e207b49917f0d3ab1ec39b067138eefd6581a49 Reviewed-by: Yoann Lopes <yoann.lopes@qt.io>
| | | * Fix plugin class name when using neutrino serviceJanne Koskinen2016-11-081-1/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Fixes static linking issue with the plugin. Task-number: QTBUG-56966 Change-Id: Ie5803b048970a436f017251c0afd375fce11b2fb Reviewed-by: Yoann Lopes <yoann.lopes@qt.io>
| | | * remove dependencies from sync.profileOswald Buddenhagen2016-11-051-13/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | the CI obtains them from the qt5 super repo nowadays. Change-Id: Iab265fb570e45336534656ef2562d2f4953e00db Reviewed-by: Jędrzej Nowacki <jedrzej.nowacki@qt.io>
| | * | Merge remote-tracking branch 'origin/5.7.1' into 5.7Liang Qi2016-11-243-8/+42
| | |\ \ | | | | | | | | | | | | | | | Change-Id: I6690c4161c57734ad03ee3e03311a3e62f181e89
| | | * | Add changes file for 5.7.1v5.7.1Yoann Lopes2016-10-261-0/+34
| | | | | | | | | | | | | | | | | | | | | | | | | Change-Id: Icdbdc8c58c331dffd4f8dd4a05ec986ed4b9d159 Reviewed-by: Yoann Lopes <yoann.lopes@qt.io>
| | | * | Merge 5.7 into 5.7.1Oswald Buddenhagen2016-10-0620-125/+197
| | | |\ \ | | | | | | | | | | | | | | | | | | Change-Id: I72c166fd81e43c5a2a1b17a6e46e12d6c7389fc2
| | | * | | Pass the context to QtAndroidMediaPlayerBogDan Vatra2016-09-282-8/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This way it can be used in a service Task-number: QTBUG-54506 Change-Id: I2d75b69dfbf7b345322f7625baf544af2af200c5 Reviewed-by: Christian Stromme <christian.stromme@qt.io>
| * | | | | Add proper global headers for QtMultimediaLars Knoll2016-11-2349-48/+170
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | And deprecate the old qtmultimediadefs.h Change-Id: I2d4164f3a51d8e5d1813413b4f6691a721386fdf Reviewed-by: Yoann Lopes <yoann.lopes@qt.io>
| * | | | | Fix mir detectionLars Knoll2016-11-233-8/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The old check would have never triggered unless you compiled with CONFIG+=mir by hand. Change-Id: I1d418dce09adaedbdff366dfeb8f4036cac0f075 Reviewed-by: Yoann Lopes <yoann.lopes@qt.io> Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io>
| * | | | | Remove leftover OpenGl ES 1 related macrosLars Knoll2016-11-165-16/+16
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Change-Id: I9b1e31e3d1bcfbffc448551be5654f8818baf91a Reviewed-by: Laszlo Agocs <laszlo.agocs@qt.io> Reviewed-by: Yoann Lopes <yoann.lopes@qt.io>
| * | | | | Remove Blackberry specific code pathsLars Knoll2016-11-1411-530/+11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Change-Id: I187085984eb1b25d7f3de163dc05122df1259720 Reviewed-by: Rafael Roquetto <rafael.roquetto@kdab.com>
| * | | | | Fix compiler warningMaurice Kalinowski2016-11-141-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Change-Id: I6a0e9cfed72e67fe3d556264b135b6e7c5bf6b9b Reviewed-by: Yoann Lopes <yoann.lopes@qt.io>
| * | | | | Cleanup all maemo/meego specific codeLars Knoll2016-11-1429-2302/+11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Change-Id: I6c6f28084c6b030928eebc53c5d0009b168ede6a Reviewed-by: Yoann Lopes <yoann.lopes@qt.io>
| * | | | | Move qtmultimedia over to the new config systemLars Knoll2016-11-1438-210/+402
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Use the new configuration system to define external libraries, configure tests and features. Don't use pkg-config outside of the configuration step. And move all command line options over from qtbase, so that we can remove them from there in a second step. Change-Id: I1aa4b557a6aee17eeceb00602005a2d28b426a26 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io> Reviewed-by: Yoann Lopes <yoann.lopes@qt.io>
| * | | | | Merge remote-tracking branch 'origin/5.7' into 5.8Liang Qi2016-11-1132-73/+271
| |\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: qtmultimedia.pro src/multimedia/playback/qmediaplayer.cpp src/plugins/directshow/directshow.pro tests/auto/integration/qmediaplayerbackend/BLACKLIST Change-Id: I6dacdcbb223c1d12dd72eb308a67170983c709b3
| | * | | | Merge remote-tracking branch 'origin/5.6' into 5.7Liang Qi2016-11-0432-74/+271
| | |\ \ \ \ | | | |_|/ / | | |/| | / | | | | |/ | | | |/| Change-Id: Ib038c5e3ebb48c0e46569a35d530fa5ceaf06a32
| | | * | iOS: add Info.plist to declarative-camera exampleRichard Moe Gustavsen2016-11-022-0/+43
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | It contains 'NSCameraUsageDescription', which is needed for the app to have access to the camera. Change-Id: I9843524f8eff84450156dfa7a9d6000c19c8ff8d Reviewed-by: Yoann Lopes <yoann.lopes@qt.io>
| | | * | iOS: add NSCameraUsageDescription to Info.plist for qmlvideofxRichard Moe Gustavsen2016-11-021-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The 'NSCameraUsageDescription' key is needed for the app to have access to the camera. Change-Id: I8b98247993edd450772e5393551e4acb07dcf0a0 Reviewed-by: Yoann Lopes <yoann.lopes@qt.io>
| | | * | WMF: make it possible to build only the audio decode serviceYoann Lopes2016-11-0214-15/+27
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The WMF plugin can now be built without the media player service. That enables the audio decode service even when DirectShow is used as media player backend. The default configuration on Windows is now: Camera, MediaPlayer -> DirectShow AudioDecode -> WMF Change-Id: Ic6f3c85ed849e0c603719cfb03794e6abd2d52fa Reviewed-by: Christian Stromme <christian.stromme@qt.io>
| | | * | Blacklist tst_QAudioDecoderBackend on WindowsYoann Lopes2016-11-021-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | There are several issues in the WMF audio decoder implementation. Blacklist the test on the CI for now. Task-number: QTBUG-56796 Change-Id: I9284845e5f8caab8b11c86c086c7118125e4f043 Reviewed-by: Christian Stromme <christian.stromme@qt.io>