summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* Add changelog for 5.6.1.Yoann Lopes2016-05-231-0/+64
| | | | | Change-Id: I5e4d301ff056b3de2da8f9a5271d36364bfd5dc8 Reviewed-by: Christian Stromme <christian.stromme@qt.io>
* 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>
* Merge 5.6 into 5.6.1Oswald Buddenhagen2016-05-127-20/+68
|\ | | | | | | Change-Id: Ib4a7640e12319d78ea5ae8f58d79c9fab8d0ea60
| * winrt: Only set focus if supportedMaurice Kalinowski2016-05-101-1/+1
| | | | | | | | | | | | Change-Id: Ic6dc2eb6acbd0f5167aa4bad9af08ce8aa5a456b Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io> Reviewed-by: Oliver Wolff <oliver.wolff@qt.io>
| * decruft project fileOswald Buddenhagen2016-05-101-6/+0
| | | | | | | | | | | | | | the "created by qt creator" header is not supposed to be checked in. Change-Id: I6d8c623f41c633babe5923344c915412d3d6bcd4 Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
| * Android: improve texture rendering on API level >= 16.Yoann Lopes2016-05-104-13/+57
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Android API level 16 added SurfaceTexture::attachToGLContext(). This allows to create the OpenGL texture when the first video frame is available, rather than at initialization. This means we can do without the ugly hack that makes the render thread call us back through some custom property. Additionally, it allows to recreate a new OpenGL texture every time the SurfaceTexture is reset. Task-number: QTBUG-51911 Change-Id: I17b04524d426c42ef8aa0288b0731597bc9eba62 Reviewed-by: Christian Stromme <christian.stromme@qt.io>
| * Add FreeBSD define and include for <sys/types.h> where <linux/types.h> is usedRalf Nolden2016-05-091-0/+4
| | | | | | | | | | | | | | | | Compile fix: FreeBSD uses <sys/types.h> instead of the linux version <linux/types.h>, so this patch changes the include by Q_OS_FREEBSD define. Change-Id: Iafe18614ad2360dce9858039b22f9b6c2dd9caaa Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
| * Android: detect more error cases when rendering frames to textures.Yoann Lopes2016-05-091-0/+3
| | | | | | | | | | | | | | | | Don't render the frame if the SurfaceTexture has been released or if the render size is invalid. Change-Id: I6b8bf14e023ff54a560b0a9e6027ef9d7d06ab6a Reviewed-by: Christian Stromme <christian.stromme@theqtcompany.com>
| * Android: correctly use mutex for texture rendering.Yoann Lopes2016-05-091-0/+3
| | | | | | | | | | | | | | | | | | | | Some sections were not protected by the mutex, even though they should have been. An example of problem that could happen because of this was if the SurfaceTexture was reset while the render thread was rendering that texture. Change-Id: Ie95860fd4eb722bbac04cccc430cc1a8abf1df4d Reviewed-by: Christian Stromme <christian.stromme@theqtcompany.com>
* | winrt: Fix crash when initializing certain camerasMaurice Kalinowski2016-05-111-9/+24
|/ | | | | | | | | | | Some cameras return video properties when querying for MediaStreamType_Photo, ie. Surface Book. This caused an assert. Instead when asking for photo resolutions, only query the available image resolutions and skip results not of type image. Change-Id: Ia1886a11f47676d6713eec86f3a80c664871a968 Reviewed-by: Oliver Wolff <oliver.wolff@qt.io>
* Polish the videowidget example.Friedemann Kleint2016-05-043-19/+62
| | | | | | | | | | - Add command line parsing and file argument. - Port to Qt 5 connection syntax. - Adapt size to available geometry (for High DPI). Task-number: QTBUG-53114 Change-Id: I1c1c547ddb14210ef5900f99f4870d6d91b67088 Reviewed-by: Yoann Lopes <yoann.lopes@qt.io>
* DirectShow: Invoke IGraphBuilder::AddSourceFilter() with local file name.Friedemann Kleint2016-05-031-1/+4
| | | | | | | | | | When possible, convert the URL to a local file name with native separators. The method seems to accept URLs with file scheme, but fails when passing UNC paths. Task-number: QTBUG-53114 Change-Id: Ib7418090080be8c1b8472e77541e686adaa3a18a Reviewed-by: Yoann Lopes <yoann.lopes@qt.io>
* fix example installsOswald Buddenhagen2016-04-286-0/+16
| | | | | Change-Id: I9daec1e1ec1bc163d451ac03685ef6caba7dbde7 Reviewed-by: Yoann Lopes <yoann.lopes@qt.io>
* GStreamer camerabin: return the proper camera sourceZhang Xingtao2016-04-283-7/+19
| | | | | | | | | | | | | - return m_cameraSrc for function cameraSource() instead of m_videoSrc. m_videoSrc is not always assigned(default 0), it will crash on: if (g_object_class_find_property( G_OBJECT_GET_CLASS(m_session->cameraSource()), "exposure-mode")) { And as the function name says, it would be better to return the value m_cameraSrc. - make sure pointers are not NULL before using them. Change-Id: I8a56db34a805724b428409b87de7d072ee7bfa57 Reviewed-by: Yoann Lopes <yoann.lopes@qt.io>
* CoreAudio: use AudioComponent instead of deprecated Carbon ComponentDyami Caliri2016-04-272-54/+11
| | | | | | | | | | OS X 10.11 generates a warning when the code uses the Carbon Component Manager to locate audio devices. The new AudioComponent interface has been available since 10.7. Change-Id: I46ecbcd62871ecc46ce3ebd9ea2a37a9e1342f41 Task-number: QTBUG-48828 Reviewed-by: Yoann Lopes <yoann.lopes@qt.io>
* QNX: Avoid reading frames faster than they're renderedDan Cape2016-04-275-247/+241
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | The previous code would capture frames with a 60Hz timer into two pixmaps alternating pixmaps with each successive frame. Rendering was somewhat disconnected from this, if rendering was unable to occur at 60fps, multiple frames might be copied for each frame rendered. This meant that it might try copying a video frame into a pixmap that was currently being used by the GPU with bad effects. The primary effect being severe flicker on i.mx6 targets. The change is to ensure that we don't read the window data until we're just about to make use of it. This means we don't ever get ahead of ourselves and read the video window once for every frame rendered. The code has been significantly refactored. There is now a class that manages the pixmaps and egl images. This is created on demand and the images are created and destroyed when sizes change. Since this all now occurs in the proper thread, much of the nonsense of setting _q_GLThreadCallback to arrange a call from the render thread is avoided. Remove BlackBerry ifdefs that are no longer used. Change-Id: I4bf5efa4c39c8170e3f55499c167ee10e521e100 Reviewed-by: James McDonnell <jmcdonnell@qnx.com> Reviewed-by: Rafael Roquetto <rafael.roquetto@kdab.com>
* Fix macro redefinition warningChristian Stromme2016-04-271-12/+7
| | | | | | | Don't re-define APIENTRY macros unconditionally on mac. Change-Id: I894f866da0ec0d6da76a62f01c24739be92d851f Reviewed-by: Yoann Lopes <yoann.lopes@qt.io>
* Fix unused variable warningChristian Stromme2016-04-261-2/+5
| | | | | | | - warning: unused variable 'm_renderer' [-Wunused-variable] Change-Id: Ie7d8ebe35a3ab0beb66cda3448595ed952f7dea4 Reviewed-by: Yoann Lopes <yoann.lopes@qt.io>
* Fix property attributes.Christian Stromme2016-04-261-5/+5
| | | | | | | A property can't be both constant and writable at the same time. Change-Id: Ie1f81fdf10eba7fe84f98f7c34f829cdac654e75 Reviewed-by: Yoann Lopes <yoann.lopes@qt.io>
* winrt: Disable camera deactivation automation in debug modeMaurice Kalinowski2016-04-221-0/+4
| | | | | | | | | | Camera control reacts to an application becoming inactive and turns off the camera. However, when debugging or watching internals inside an IDE this feature breaks the state of the application as the IDE gets focus and hence camera is turned off. Change-Id: I6f80476592c0faa32e9da11401f699c6211d226a Reviewed-by: Oliver Wolff <oliver.wolff@qt.io>
* winrt: Fix device watcher handlingMaurice Kalinowski2016-04-221-1/+2
| | | | | | | | | | When device watcher has been started it can have the enumerationComplete state in addition to started. Hence only start the watcher if none of those two states is present. This fixes an assert where starting an already started watcher failed. Change-Id: Idc3af256845f0993a26e8d186b499ef1c7e7dacc Reviewed-by: Oliver Wolff <oliver.wolff@qt.io>
* winrt: fix camera control after move to xaml threadMaurice Kalinowski2016-04-225-193/+230
| | | | | | | | | | | | | | | | | Camera control management has to happen inside the xaml thread, otherwise the behavior is undefined. This results in ie. the first capture not working due to synchronization issues. When (de-)activating the videoRenderer we have to switch to the UI thread first. In addition add focus for Windows 10 (Mobile), previously it was compiled for Windows Phone 8.1 only. On desktop this might return no focus mode to be supported, but API-wise this is available. Task-number: QTBUG-47803 Change-Id: I9b345ebc82502fc6e00aede43b9096893cd0ad53 Reviewed-by: Oliver Wolff <oliver.wolff@qt.io>
* winrt: Add categorized logging to camera controlMaurice Kalinowski2016-04-223-0/+17
| | | | | | Change-Id: I6d823ac07950212d766905c9409469f2b1b84954 Reviewed-by: Oliver Wolff <oliver.wolff@qt.io> Reviewed-by: Yoann Lopes <yoann.lopes@qt.io>
* winrt: Use ComPtr for better ref count trackingMaurice Kalinowski2016-04-223-4/+6
| | | | | | | Just forwarding the content of a ComPtr is potentially dangerous. Change-Id: I4f3dfa04a5844d299a5653e31a4a0d1e1b86f9b5 Reviewed-by: Oliver Wolff <oliver.wolff@qt.io>
* AVFMediaAssetWriter - fix potential race condition(s)Timur Pocheptsov2016-04-214-109/+71
| | | | | | | | | | | | | | | | | 1. m_writerQueue is now shared by recorder control and asset writer to ensure it lives long enough. 2. m_delegate->method() calls from async block can be dangerous, since by the time this block is actually executed, delegate can be deleted already. This fix uses Q_INVOKABLE and invokeMethod with QueuedConnection instead. 3. -finishWritingWithCompletionHandler: is async and when the block finally gets executed, lock and 'if aborted' test are still needed. 4. Simplify the logic and reduce locking. Change-Id: If23daf2fe22043244033427a7f6517a0fe3f23d1 Reviewed-by: Yoann Lopes <yoann.lopes@qt.io>
* winrt: Remove capability specificationMaurice Kalinowski2016-04-211-3/+0
| | | | | | | This is handled with 34e0e908c896126138a95abdeba7456499d0fb68 in qtbase. Change-Id: I41cf27690189aefb3000de90df4a518d8dd449f0 Reviewed-by: Oliver Wolff <oliver.wolff@theqtcompany.com>
* AVFFoundation - fix a compilation error (iOS, XCode 7.3)Timur Pocheptsov2016-04-191-3/+3
| | | | | | | | | __weak previously was a simple noop, but now it ends up in a compilation error in non-ARC'ed source code ('declaration uses __weak, but ARC is disabled'). Task-number: QTBUG-52671 Change-Id: I574519f892ba1d5f71488c5cc26423d04d5e02cf Reviewed-by: Yoann Lopes <yoann.lopes@qt.io>
* ALSA: Call snd_pcm_drain() on suspendStephen Hurd2016-04-152-0/+2
| | | | | | | | | | | | The ALSA plugin previously didn't suspend the ALSA device when the ::suspend() method is called. This results in underrun errors when it's resumed. In ALSA, stopping a pcm doesn't close it, so the ALSA stop/start functions map to the QAudioInput suspend/resume functions. Change-Id: I2507065a1b7472af29eef70c531b9f6e8e5b3072 Reviewed-by: Christian Stromme <christian.stromme@theqtcompany.com>
* AVFoundation: fix switching to still image capture mode.Yoann Lopes2016-04-131-0/+3
| | | | | | | | It would reset the active format on the capture device. The patch prevents that. Change-Id: I97c192c064bf3c6ed4ba1f8d78768196927819a7 Reviewed-by: Christian Stromme <christian.stromme@theqtcompany.com>
* AVFoundation: return correct viewfinder settings.Yoann Lopes2016-04-131-1/+6
| | | | | | | When the camera is unloaded, return the requested settings. Change-Id: If39e158cd8d0fd8d4bbd7cf6cd48226cdefc1272 Reviewed-by: Christian Stromme <christian.stromme@theqtcompany.com>
* tests: skip tst_qaudiodecoderbackend when no audio decoding supportLiang Qi2016-04-082-41/+8
| | | | | | Task-number: QTBUG-46331 Change-Id: I9168ae7d89869cc0811394fc4091a5e44c136b9b Reviewed-by: Christian Stromme <christian.stromme@theqtcompany.com>
* 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>
* wince: revert flipping Video contentAndreas Holzammer2016-04-061-2/+0
| | | | | | | | It turned out in my previous tests, that the codec which I used is buggy and does not play well with this documented behavior. Change-Id: I8aff9f68d449da10de4fa33073d5d5cbe9b2a281 Reviewed-by: Yoann Lopes <yoann.lopes@theqtcompany.com>
* DirectShow: Release all filters when disconnecting the graph.Christian Strømme2016-03-311-3/+13
| | | | | | | | | | | | When disconnecting the graph we need to make sure that all the filters in the graph are released, even the ones that are automatically added. Since we can't know in advance which filters the graph consists of, we need release them one by one. Task-number: QTBUG-49281 Change-Id: Ifdf2fb6fe1c90ab85b47565c5fe82b6ebe55b183 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@theqtcompany.com> Reviewed-by: Yoann Lopes <yoann.lopes@theqtcompany.com>
* tst_qdeclarativeaudio: fix ubsan buildMarc Mutz2016-03-291-0/+2
| | | | | | | | | | | The test uses QDeclarativePlaylist, but no out-of-line methods or data members, so it got by with just including the header. But a ubsan build requires access to the class' typeinfo objects, so add QDeclarativePlaylist's implementation to the test, too. Change-Id: Ib6bb155b71c0082969f77a13a0e50132a782db2d Reviewed-by: Yoann Lopes <yoann.lopes@theqtcompany.com>
* QNX: Fix video playback on VMWareDan Cape2016-03-221-0/+4
| | | | | | | | | | Mark eglImage as not supported on VMWare since that path requires that the image data be in GPU accessible memory which is not the case for video Change-Id: I2ea1ec52842adf0bc1ca39c882e6771e6a992c65 Reviewed-by: Marc Mutz <marc.mutz@kdab.com> Reviewed-by: Rafael Roquetto <rafael.roquetto@kdab.com>
* Purge sRGB chunks from PNGs in documentation.Edward Welbourne2016-03-226-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>
* Purge sRGB chunks from PNGs in examples.Edward Welbourne2016-03-222-0/+0
| | | | | | | | Subjects each *.png file that matched grep -law "sRGB" to: pngcrush -ow -brute -rem allb -reduce Change-Id: Iff326d7e63d6e0106204beb1f42700032cb6b79a Reviewed-by: Topi Reiniö <topi.reinio@theqtcompany.com>
* DirectShow: Fix MinGW warnings about signedness of comparison.Friedemann Kleint2016-03-211-6/+7
| | | | | | | | | | | | | | | | | Use a switch on int instead of else if. common\evr\evrcustompresenter.cpp: In member function 'virtual bool EVRCustomPresenter::event(QEvent*)': common\evr\evrcustompresenter.cpp:1882:22: warning: comparison between 'enum QEvent::Type' and 'enum EVRCustomPresenter::PresenterEvents' [-Wenum-compare] if (e->type() == StartSurface) { ^ common\evr\evrcustompresenter.cpp:1885:29: warning: comparison between 'enum QEvent::Type' and 'enum EVRCustomPresenter::PresenterEvents' [-Wenum-compare] } else if (e->type() == StopSurface) { ^ common\evr\evrcustompresenter.cpp:1888:29: warning: comparison between 'enum QEvent::Type' and 'enum EVRCustomPresenter::PresenterEvents' [-Wenum-compare] } else if (e->type() == PresentSample) { Change-Id: I8533e2c6d9b0a01b7b95e1d8bb119b50d4aabd25 Reviewed-by: Mark Brand <mabrand@mabrand.nl>
* QNX: Fixed issue with non Qt-related mm-renderer windowsDan Cape2016-03-201-1/+2
| | | | | | | | | | | Windowgrabber would catch events from windows that were not related to Qt Media Playback. Now there is a check to ensure the window id to compare against is set before assigning the window to the Windowgrabber. Change-Id: Ic85198de5fdb05e9fa740fc7b3b81f3bdffd631d Reviewed-by: Marc Mutz <marc.mutz@kdab.com> Reviewed-by: James McDonnell <jmcdonnell@qnx.com> Reviewed-by: Rafael Roquetto <rafael.roquetto@kdab.com>
* fix case of included filesMark Brand2016-03-181-2/+2
| | | | | | | | | Cross-compiling for mingw requires lowercase filenames. Change-Id: I135deca455ca2ff6bb3969aca990fe9d1c2dd345 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com> Reviewed-by: Friedemann Kleint <Friedemann.Kleint@theqtcompany.com> Reviewed-by: Mark Brand <mabrand@mabrand.nl>
* Merge remote-tracking branch 'origin/5.6.0' into 5.6Frederik Gladhorn2016-03-1717-63/+150
|\ | | | | | | Change-Id: I91fb2886b4ab8f0b9e2e28329cec69dfa2cb5435
| * Update version number in QML plugins.v5.6.0Yoann Lopes2016-02-2514-62/+10
| | | | | | | | | | | | | | | | | | 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>
| * Add 5.6.0 changelog.Yoann Lopes2016-02-251-0/+138
| | | | | | | | | | Change-Id: I1e7ad9b663db94d2986277c92abf574f6380e44d Reviewed-by: Christian Stromme <christian.stromme@theqtcompany.com>
| * [Win] Compile fix, the mmdeviceapi.h header can only be included oncev5.6.0-rc1Andy Shaw2016-02-152-1/+2
| | | | | | | | | | Change-Id: Idb9a995c90e6e0e8be392022e2a76b4d8fea853a Reviewed-by: Yoann Lopes <yoann.lopes@theqtcompany.com>
* | PulseAudio: change the way volume is applied.Yoann Lopes2016-03-166-307/+113
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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>
* | Windows EVR: show frames when pausing from stopped state.Yoann Lopes2016-03-151-4/+3
| | | | | | | | | | | | | | | | | | | | | | | | The QAbstractVideoSurface was started only when calling play(), causing frames received before (e.g. when pausing from stopped state) to not be rendered. The surface is now started as soon as a media type is agreed between the EVR and the upstream element. Conversely, the surface is stopped whenever the media type is cleared. Change-Id: Ia96a07dbd277adce67de5a9cfbf9acc0d33b6497 Reviewed-by: Christian Stromme <christian.stromme@theqtcompany.com>
* | Reinitialize audio when changing device in examplesMaurice Kalinowski2016-03-112-9/+10
| | | | | | | | | | | | | | | | | | Different devices might have different audio formats supported. Always relying on the format of the default device can cause the audio endpoint to not start/initialize. Change-Id: I4d05949fd023f2cc7eb1f75db3577242e0e66680 Reviewed-by: Oliver Wolff <oliver.wolff@theqtcompany.com>
* | ALSA: simplify checking the available version.Lisandro Damián Nicanor Pérez Meyer2016-03-104-9/+9
| | | | | | | | | | | | | | | | | | | | | | Make use of SND_LIB_VERSION instead of SND_LIB_[MAJOR MINOR SUBMINOR] in order to simplify the tests. Task-number: QTBUG-51681 Change-Id: Ib9f28ff15ddc643cc426ded3a5779fb4ff651139 Reviewed-by: Dmitry Shachnev <mitya57@gmail.com> Reviewed-by: Christian Stromme <christian.stromme@theqtcompany.com> Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com>
* | Port DirectShow backend to winceAndreas Holzammer2016-03-0920-29/+100
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | dshow.h needs to be included before Qt headers as they include the windows header with NOMINMAX macro set. DirectShow header needs min/max macro definition to compile. The min/max macro then conflicts with QDateTime header, hence needs to be undefined again for some occasions. Windows Embedded Compact then defines INTERFACE as macro, which conflicts. Windows Embedded Compact does not support audio end point selection. Feature has been disabled for this platform. Windows Embedded Compact does not support setting meta data, control has been disabled. Windows Embedded Compact does not support VMR, feature was disabled. Direct Show renders always top to buttom. Change-Id: Id17700835e2105fb127b12e3448bea16e3b52546 Reviewed-by: Yoann Lopes <yoann.lopes@theqtcompany.com>