summaryrefslogtreecommitdiff
path: root/src
Commit message (Collapse)AuthorAgeFilesLines
...
* Android: fix QMediaRecorder failing to start in some cases.Yoann Lopes2014-03-171-2/+6
| | | | | | | | | | Because camera operations are performed in a dedicated thread, starting a recorder was sometimes failing because the camera was not yet ready (unlocking it was not done yet). Camera locking and unlocking are now synchronous operations. Change-Id: I92c3c2f3666b63e7451e4ee1ab89dcbc85ae6c24 Reviewed-by: Christian Stromme <christian.stromme@digia.com>
* Doc: Qt Audio Engine: Restore lost docsSze Howe Koh2014-03-178-80/+80
| | | | | | | | When QDoc stopped accepting the version number of QML modules, some parts of QML documentation disappeared silently. Change-Id: I528a2d77587e5803ed971dfe8849d0b37d9c555a Reviewed-by: Jerome Pasion <jerome.pasion@digia.com>
* Fix crash in QCameraInfo when no camera is available on the system.Yoann Lopes2014-03-171-1/+1
| | | | | Change-Id: I04bea9d6afcf567c64788c3765cc6626dc9cd482 Reviewed-by: Christian Stromme <christian.stromme@digia.com>
* Android: print Java traces for MediaRecorder when in debug mode.Yoann Lopes2014-03-171-10/+56
| | | | | Change-Id: Ie39dd16227c49c8c07831750869e0cc28d2cc8ee Reviewed-by: Christian Stromme <christian.stromme@digia.com>
* Android: restart camera viewfinder after a recorder error.Yoann Lopes2014-03-172-9/+15
| | | | | Change-Id: I33f083fda5c10cfb997a21100c0ec3d4a314aee0 Reviewed-by: Christian Stromme <christian.stromme@digia.com>
* Android: correctly report QMediaRecorder actual output location.Yoann Lopes2014-03-172-6/+5
| | | | | | | | Report the recorded media location to have changed only when recording is finished and successful. Change-Id: Iee7565b9ba12d9de09f86dffb34c40936fee198c Reviewed-by: Christian Stromme <christian.stromme@digia.com>
* Android: correctly report QMediaRecorder status.Yoann Lopes2014-03-172-33/+47
| | | | | | | | | | | QMediaRecorder should have the LoadedStatus before starting recording. When recording the camera, the recorder should be considered loaded when all prerequisites are met (viewfinder started, recording mode set to video and capture ready). Task-number: QTBUG-36828 Change-Id: I3279bdfdc2b361c7e0707c52e74ae47e0bb4a93d Reviewed-by: Christian Stromme <christian.stromme@digia.com>
* AVFoundation: Fix another crash when destroying a QMediaPlayerAndy Nichols2014-03-141-2/+2
| | | | | | | | We need to unload media before we delete the player. Task-number: QTBUG-37447 Change-Id: I09263214c425339c0d8c192091aeaa6e3fb5331f Reviewed-by: Yoann Lopes <yoann.lopes@digia.com>
* Add missing documentation for Audio and MediaPlayer loops property.Yoann Lopes2014-03-101-0/+24
| | | | | | Task-number: QTBUG-35306 Change-Id: If0e9784ede5db887d3756972e8db54b5485d6cdd Reviewed-by: Jerome Pasion <jerome.pasion@digia.com>
* Fix typo Inavlid -> InvalidSergio Ahumada2014-03-071-1/+1
| | | | | Change-Id: I3fc6ec3cc319784f32368585ae4eb379317ef4ce Reviewed-by: Fabian Bumberger <fbumberger@rim.com>
* WMF: each media player now has its own volume.Yoann Lopes2014-03-072-28/+26
| | | | | | | | | | | | | | | Instead of setting the volume on the audio session, which is shared by all QMediaPlayers, we now set the volume on the media player's own audio stream. This results in all QMediaPlayers correctly having independent volumes. [ChangeLog][QtMultimedia][Windows] QMediaPlayer::setVolume() does not affect the volume of other QMediaPlayers anymore. Task-number: QTBUG-30317 Change-Id: I8ea8ec47fc86127da01dc5c8247fb6f72c834630 Reviewed-by: Wouter Huysentruit <wouter_huysentruit@hotmail.com> Reviewed-by: Andy Nichols <andy.nichols@digia.com>
* AVFoundation: fix crash when no camera is available on the system.Yoann Lopes2014-03-071-3/+5
| | | | | Change-Id: I0b473babae4d1fae605667957deca21ba1dc0c09 Reviewed-by: Andy Nichols <andy.nichols@digia.com>
* CoreAudio: Set default audio category to Playback on iOSAndy Nichols2014-03-073-1/+17
| | | | | | | | | | | | | This fixes the issue that when we use QSoundEffect we dont need to get permission to use the microphone. This was because we were defaulting to PlayAndRecord. Now we only switch to the PlayAndRecord category when we try and use an input device. [ChangeLog][QtMultimedia][iOS] Using QSoundEffect (or SoundEffect in QML) no longer requires permission to use the microphone. Change-Id: I94535215497a718005c280bfd84b428b4bf1b16a Reviewed-by: Yoann Lopes <yoann.lopes@digia.com>
* AVFoundation: Prevent Crash in QMediaPlayerAndy Nichols2014-03-071-1/+4
| | | | | | | Task-number: QTBUG-34213 Change-Id: I0883436175439abbb4ea964ed552a17b970ed05c Reviewed-by: Michael Bruning <michael.bruning@digia.com> Reviewed-by: Yoann Lopes <yoann.lopes@digia.com>
* Release videoframe on painter stop()Wouter Huysentruit2014-03-061-0/+12
| | | | | | | | | QVideoSurfaceGLPainter/QVideoSurfaceGlslPainter needs to release the video frame on stop (just like QVideoSurfaceGenericPainter already does). Change-Id: Iaf3eb13eaf51fbc22fab6b1f80db8e8978ac328d Reviewed-by: Yoann Lopes <yoann.lopes@digia.com>
* GStreamer: Remove tags when an invalid QVariant is assigned.Andrew den Exter2014-03-062-8/+15
| | | | | | | | | | Clear the tag list before syncing with reference set so old values are removed and explicitly remove invalid QVariants from the reference set so that the type correction doesn't result in invalid values being written instead. Change-Id: I7d1bdc95cd2a2d601720db84c9b3ef629477bc99 Reviewed-by: Yoann Lopes <yoann.lopes@digia.com>
* videonode: imx6: clear texture cache when the format changesMichael Olbrich2014-03-042-0/+19
| | | | | | | | The old textures won't match anyways. So there is no need to keep them. Change-Id: Id3482333d10cf022d04076ec0f5c7df475c522ae Signed-off-by: Michael Olbrich <m.olbrich@pengutronix.de> Reviewed-by: Andy Nichols <andy.nichols@digia.com>
* videonode: imx6: cleanup pixel formatsMichael Olbrich2014-03-042-7/+5
| | | | | | | | | | | All formats are now tested. Also, don't use the alpha channel. This is not quite correct for formats with alpha channel but for video probably a good idea. Change-Id: I4a2404d7c96023bb1e3fca41e1f224d23347f290 Signed-off-by: Michael Olbrich <m.olbrich@pengutronix.de> Reviewed-by: Andy Nichols <andy.nichols@digia.com>
* enable imx6 specific QSGVideoNode based on a config testMichael Olbrich2014-03-041-1/+1
| | | | | | | | This way it also works custom mkspecs Change-Id: I7414aac775b797da3487e9625c7212486118b532 Signed-off-by: Michael Olbrich <m.olbrich@pengutronix.de> Reviewed-by: Andy Nichols <andy.nichols@digia.com>
* AVFoundation: Cleanup AVCaptureSession with proper reference countingAndy Nichols2014-03-041-0/+17
| | | | | | | | | | | | The reference counting was not being done for AVCaptureSession so it was being destroyed before we got a chance to properly clean it up (which lead to crashes). We also make sure to remove any observers from AVCaptureSession now before destroying it. Task-number: QTBUG-37109 Task-number: QTBUG-29955 Change-Id: Ia9b49ad1eab01b4f7424e2a1c699d903cd9bf902 Reviewed-by: Yoann Lopes <yoann.lopes@digia.com>
* AVFoundation: implement QCameraInfoControl.Yoann Lopes2014-03-0411-66/+258
| | | | | Change-Id: I05f3daa5c4acb90e046e26d6d577ae40dfed0e30 Reviewed-by: Andy Nichols <andy.nichols@digia.com>
* AVFoundation: Call stop() on VideoSurface when changing sourcesAndy Nichols2014-03-041-0/+5
| | | | | | | | | | Before we were reusing the active surface when we switched videos. This leads to an inconsitency in states, and the sourceRect property of the video surface does not get updated. Task-number: QTBUG-28655 Change-Id: Ie29bf1d9b1c11b6f51a869253c730202001c07cf Reviewed-by: Yoann Lopes <yoann.lopes@digia.com>
* AVFoundation: Fix y-inverted QML VideosAndy Nichols2014-03-041-2/+3
| | | | | | | | | | | | When the code that supports iOS was added, we introduced a bug where QML videos would be played y-inverted on OS X. This is because we made no effort to y-invert the Framebuffer Object before rendering the texture in the SceneGraph. Now we render the video the the FBO y-inverted, so there is no need to y-invert the resulting texture. Task-number: QTBUG-35955 Change-Id: I41af1aaae57923b9972b5be5ec65f7d2a97d77c5 Reviewed-by: Yoann Lopes <yoann.lopes@digia.com>
* AVFoundation: Remove debug codeAndy Nichols2014-03-031-2/+2
| | | | | | | | | Some debug code made it into the released code, so each time you used the QWidget based video player the terminal would print data about the window frame size. Change-Id: I86eb00ce5edb23b7a2abf6a63893cd17aaeb0ee3 Reviewed-by: Yoann Lopes <yoann.lopes@digia.com>
* CoreAudio: Use the real default audio device for QSoundEffectAndy Nichols2014-03-031-3/+8
| | | | | | | | | | | There is an assumption in QtMultimedia that the first audio device returned by QAudioDeviceInfo::availableDevices is the default device, so we must make an effor to make sure this is true. This commit should fix the issue on OS X. Task-number: QTBUG-36638 Change-Id: Id388d7218b465cb29d826f46ee825e982c5f7ffc Reviewed-by: Yoann Lopes <yoann.lopes@digia.com>
* CoreAudio: Make it possible to set volume on of QAudioOutputAndy Nichols2014-03-031-3/+28
| | | | | | | | | | | | | | QAudioOutput::setVolume stopped working for CoreAudio when it was ported to live in it's own plugin. This was because it was not possible to set the volume of QAudioOutput in iOS. Now the functionality has been restored and added for iOS as well. For OS X we use the old method of setting the volume property of the AudioUnit. On iOS it is not possible to set the volume on a per AudioUnit basis, so we now manually modify the buffer contents (the same we do for QAudioInput already). Task-number: QTBUG-36756 Change-Id: I42b5892fe5534217043fa55e7b5b9a4ce824050d Reviewed-by: Yoann Lopes <yoann.lopes@digia.com>
* CoreAudio: Allow more flexability when specifying SampleRatesAndy Nichols2014-03-031-3/+6
| | | | | | | | | | | | The available sample rates for a given device are the nominal sample rates reported by the device. It is possible to use other sample rates and CoreAudio will take care of the conversion. So what we will do is report what rates are available for a device, but not explicitly require those sample rates to have a valid format. Task-number: QTBUG-36265 Change-Id: Idbbdeacbb6bc1fe434bcd8dec519ad70d4ccd545 Reviewed-by: Yoann Lopes <yoann.lopes@digia.com>
* Add missing virtual destructor for new classThiago Macieira2014-03-011-0/+1
| | | | | | | | qmediaserviceproviderplugin.h:166:28: error: ‘struct QMediaServiceCameraInfoInterface’ has virtual functions and accessible non-virtual destructor [-Werror=non-virtual-dtor] Change-Id: I08c6718bfd87c5adeea9969afdd4766150163238 Reviewed-by: Jędrzej Nowacki <jedrzej.nowacki@digia.com> Reviewed-by: Yoann Lopes <yoann.lopes@digia.com>
* Android: implement QCameraInfoControl.Yoann Lopes2014-02-2814-170/+273
| | | | | | | | | VideoOutput will now take into account the camera sensor orientation to adjust the viewport orientation, we don't need to apply a rotation on the Android Camera anymore. Change-Id: Ia7639f0a5711ab6cc6f80b9716bc1a6f389499b4 Reviewed-by: Christian Stromme <christian.stromme@digia.com>
* VideoOutput: fix autoOrientation with a camera source.Yoann Lopes2014-02-283-2/+28
| | | | | | | | | Don't assume the camera frames are always in the same orientation as the display in its primary orientation. We now take into account the camera sensor position and orientation to calculate the viewport orientation. Change-Id: Ib333c87f1804d1010ada42cb757e4fab78d75a04 Reviewed-by: Christian Stromme <christian.stromme@digia.com>
* New QCameraInfo class.Yoann Lopes2014-02-2836-124/+1307
| | | | | | | | | | | | | | | | | | | | The class allows to get the list of available cameras on the system as well as getting some static information about them such as their unique ID, display name, physical position and sensor orientation. This makes QCamera::availableDevices() and QCamera::deviceDescription() obsolete. This patch contains the API, documentation and auto-tests but not the actual implementation by each backend (except for retrieving the default camera device). [ChangeLog][QtMultimedia] Added new QCameraInfo class [ChangeLog][QtMultimedia] QCamera: availableDevices() and deviceDescription() are deprecated, use QCameraInfo instead Change-Id: I64fd65729ab26a789468979ed5444ee90bb82cd0 Reviewed-by: Christian Stromme <christian.stromme@digia.com>
* QSoundEffect: fix changing the loop count while playing.v5.3.0-alpha1Yoann Lopes2014-02-253-10/+23
| | | | | | | | | | | | The running count was not updated with the new value. Auto-test added and documentation updated to be more clear about this behavior. Task-number: QTBUG-36643 Change-Id: I29e98ca4679f950a75133b21873738bcb72d23d4 Reviewed-by: Christian Stromme <christian.stromme@digia.com>
* android: add missing feature tags.Yoann Lopes2014-02-211-1/+3
| | | | | | | | | | Adding the CAMERA and RECORD_AUDIO permissions implicitely makes some features a hard requirement for the app. By adding these features in the .pro file, androiddeployqt will mark them as unrequired in the final package. Change-Id: Ie9357d05626cb12272001d63b04e230737fbf1bc Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@digia.com>
* QNX: Use window group of top-level window for mmrFrank Osterfeld2014-02-191-2/+10
| | | | | | | | | | Pass the top-level window's window group to mm-renderer, as required by mmr. Change-Id: I2a2e8b4aa48f5c2292b03593c6d528068f383b5c Reviewed-by: Bernd Weimer <bweimer@blackberry.com> Reviewed-by: Rafael Roquetto <rafael.roquetto@kdab.com> Reviewed-by: Fabian Bumberger <fbumberger@rim.com>
* Merge remote-tracking branch 'origin/dev' into stableOswald Buddenhagen2014-02-1985-586/+913
|\ | | | | | | Change-Id: I84b36fa41f3d5f8fea2dec2545f72ebe6a0c7908
| * AVFoundation: mirror viewfinder frames of front-facing cameras.Yoann Lopes2014-02-144-7/+56
| | | | | | | | | | Change-Id: I95920aa459ff0931819cb6f8278ab296db542601 Reviewed-by: Andy Nichols <andy.nichols@digia.com>
| * Merge remote-tracking branch 'origin/stable' into devFrederik Gladhorn2014-02-1218-82/+876
| |\ | | | | | | | | | Change-Id: Ie93615076177662e75d46f3d13beeb88d424b4a6
| * | Replace win32-g++ with mingw scopeKai Koehne2014-02-072-4/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Commit 773dd01 in qtbase introduced a general mingw platform scope, which is cleaner and more flexible than matching the spec name. (see 278152fff for a similar commit in qtbase). Change-Id: Ib46b9e83f690b0b26933b73764c7d7d4b031d792 Reviewed-by: Yoann Lopes <yoann.lopes@digia.com>
| * | Normalize signal & slot signatures in connectionThiago Macieira2014-02-0315-32/+32
| | | | | | | | | | | | | | | | | | | | | Profiling shows Qt Creator spends 2% of its load time normalizing Change-Id: I1a4bef16be79ced35c47da865153ebe1bee22f9c Reviewed-by: Yoann Lopes <yoann.lopes@digia.com>
| * | Ensure the backend has had its geometry updated.Roger Maclean2014-02-031-0/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When trying to play video in an overlay window, the video fails to be displayed because everything that would cause updateGeometry to be called on the backend has already occurred prior to the backend having been created. Change-Id: Ida3c8feea69b497a18e9f44d7143bed03380d6ae Reviewed-by: Yoann Lopes <yoann.lopes@digia.com>
| * | Exclude win32 plugins from WinRT buildMaurice Kalinowski2014-02-031-1/+1
| | | | | | | | | | | | | | | Change-Id: Icd07ad6805341f763a7abcfc8a24104c5d672ad7 Reviewed-by: Yoann Lopes <yoann.lopes@digia.com>
| * | Move win32 and Alsa audio backends into plugins.Christian Strømme2014-01-3023-332/+589
| | | | | | | | | | | | | | | Change-Id: I9835cf5ee97900569f26421a19543b485e933051 Reviewed-by: Yoann Lopes <yoann.lopes@digia.com>
| * | Alsa: fix crash when detecting devices.Yoann Lopes2014-01-302-75/+83
| | | | | | | | | | | | | | | | | | | | | | | | | | | Some old versions of Alsa crash when snd_device_name_hint(-1, ...) is called. This patch works around the problem by iterating manually over all the available sound cards. Change-Id: Ic380a371acc15013d137553ff30d68bed5af664e Reviewed-by: Christian Stromme <christian.stromme@digia.com>
| * | Merge "Merge remote-tracking branch 'origin/stable' into dev" into ↵Yoann Lopes2014-01-3039-280/+1356
| |\ \ | | | | | | | | | | | | refs/staging/dev
| | * \ Merge remote-tracking branch 'origin/stable' into devFrederik Gladhorn2014-01-2739-280/+1356
| | |\ \ | | | | | | | | | | | | | | | Change-Id: I83d589c55e8463cce23068dc81096aa66ec596a5
| * | | | whitespace fixesOswald Buddenhagen2014-01-3041-132/+132
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | remove trailing spaces & expand tabs. Change-Id: I05ef110abed90f13b47752760ffb4567a11a6a5e Reviewed-by: Yoann Lopes <yoann.lopes@digia.com> Reviewed-by: Tony Sarajärvi <tony.sarajarvi@digia.com>
| * | | | Android: fix crash in QAndroidCaptureSession.Yoann Lopes2014-01-291-1/+3
| |/ / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | Don't try to apply video recording settings until a camera is actually started. Change-Id: I5348b91669835b9d776f56a3f49e3f8a11533d15 Reviewed-by: Christian Stromme <christian.stromme@digia.com>
| * | | Merge remote-tracking branch 'origin/stable' into devFrederik Gladhorn2014-01-1730-104/+272
| |\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: .qmake.conf Change-Id: Id367a610a3aefd288bfe287a3bf64606e582deb9
| * | | | BlackBerry: Changed documentationBernd Weimer2014-01-132-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Changed platform notes title to be able to reference it from elsewhere. Change-Id: I0edcebc6aa04e7a063cbe8b386ca8b38e0ae22a9 Reviewed-by: Thomas McGuire <thomas.mcguire@kdab.com>
| * | | | Merge remote-tracking branch 'origin/stable' into devFrederik Gladhorn2014-01-1019-24/+265
| |\ \ \ \ | | | | | | | | | | | | | | | | | | Change-Id: I7dc36a224702721b67ffa2cf7f9ce2a6b047f88e