platform/upstream/qtmultimedia.git
12 years agoUpdate obsolete contact address.
Jason McDonald [Fri, 20 Jan 2012 04:32:56 +0000 (14:32 +1000)]
Update obsolete contact address.

Replace Nokia contact email address with Qt Project website.

Change-Id: Ie8cd560b6d9a2c6e552b6be1ad8bc96c80a6535c
Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
12 years agoUpdate documentation.
Michael Goddard [Wed, 4 Jan 2012 04:56:31 +0000 (14:56 +1000)]
Update documentation.

Rewrite the module overview, add video and audio overviews,
and update the camera overview. Tweak the radiooverview
slightly.

Still missing some links for examples and some fleshing out
but hopefully a lot better.

Change-Id: Id6486e20ba4a09c36d7739e327d4f9910ad083a5
Reviewed-by: Jonas Rabbe <jonas.rabbe@nokia.com>
12 years agoFixed compile.
Rohan McGovern [Mon, 23 Jan 2012 00:07:58 +0000 (10:07 +1000)]
Fixed compile.

Removed usage of QBool.

Change-Id: I5e1db9cd3e833a196d73a3493967daa573200c77
Reviewed-by: Toby Tomkins <toby.tomkins@nokia.com>
12 years agoFixed mapping video frames in SG nodes
Dmytro Poplavskiy [Fri, 20 Jan 2012 04:30:03 +0000 (14:30 +1000)]
Fixed mapping video frames in SG nodes

Since it's possible to map video frame in R/O mode multiple times
it's always necessary to map it before accessing frame data.

Change-Id: I13f58085a0b19dba772e0b75c64d9f07d1ac2a58
Reviewed-by: Michael Goddard <michael.goddard@nokia.com>
12 years agoDocument two VideoOutput properties.
Michael Goddard [Fri, 20 Jan 2012 06:02:21 +0000 (16:02 +1000)]
Document two VideoOutput properties.

Still needs polish.

Change-Id: Ida24f1ecd0c8a41e9fd6e34ed68cfe1ed8181c00
Reviewed-by: Dmytro Poplavskiy <dmytro.poplavskiy@nokia.com>
12 years agoChanged metadata keys type from enum to QString.
Dmytro Poplavskiy [Mon, 16 Jan 2012 06:40:47 +0000 (16:40 +1000)]
Changed metadata keys type from enum to QString.

This allows to combine metaData and extendedMetaData
and simplify metadata handling on both backend and application sides.

Change-Id: I136eedc86c215be3485db101c43069ca7c82101b
Reviewed-by: Michael Goddard <michael.goddard@nokia.com>
12 years agoFixed compile of doc snippets on Windows.
Rohan McGovern [Thu, 19 Jan 2012 23:29:41 +0000 (09:29 +1000)]
Fixed compile of doc snippets on Windows.

Make sure we link against QtWidgets.

Change-Id: Ie09e9855f8dfe9c66e1ce311de0ad6f2ca040767
Reviewed-by: Jonas Rabbe <jonas.rabbe@nokia.com>
12 years agoFixed unreliable enabling of doc snippets
Rohan McGovern [Thu, 19 Jan 2012 23:11:18 +0000 (09:11 +1000)]
Fixed unreliable enabling of doc snippets

Testing for QT.widgets.name in qtmultimedia.pro causes the behavior of
that .pro file to depend on whether or not qtbase.pro has been
processed.  Due to QTBUG-23376, and because these are sibling .pro
files, this is not safe - nothing guarantees that qtmultimedia.pro is
processed after qtbase.pro.

Work around the issue by pushing the QT.widgets.name test down one
level.

Change-Id: I3e155b3f18ad5fa8c527cf5a806313db4b6aabeb
Reviewed-by: Jonas Rabbe <jonas.rabbe@nokia.com>
12 years agoUse US spelling for organization.
Michael Goddard [Tue, 17 Jan 2012 04:34:29 +0000 (14:34 +1000)]
Use US spelling for organization.

Since it seems it was never implemented, don't keep the
legacy spelling.

Change-Id: Idc918548a4ed643ba7da35e97ce08f401e74303f
Reviewed-by: Jonas Rabbe <jonas.rabbe@nokia.com>
12 years agoEnable building the documentation snippets.
Michael Goddard [Wed, 11 Jan 2012 04:45:11 +0000 (14:45 +1000)]
Enable building the documentation snippets.

Change-Id: Ib7ef5a564408092ecd72be5d855b2defaddf9c4e
Reviewed-by: Jonas Rabbe <jonas.rabbe@nokia.com>
12 years agoQAudioRecorder: fixed handling the missing inputs control.
Dmytro Poplavskiy [Thu, 19 Jan 2012 04:07:44 +0000 (14:07 +1000)]
QAudioRecorder: fixed handling the missing inputs control.

Added check for null audioEndpointSelector
control in QAudioRecorder::audioInputs()

Change-Id: I506dcea9e8d3a468319acf2489cd4d803a5c187d
Reviewed-by: Michael Goddard <michael.goddard@nokia.com>
12 years agoReplaced QAudioCaptureSource with QAudioRecorder.
Dmytro Poplavskiy [Wed, 18 Jan 2012 04:46:58 +0000 (14:46 +1000)]
Replaced QAudioCaptureSource with QAudioRecorder.

QAudioCaptureSource name is confusing, it's essentially an audio
recording service but it's not evident from API.

QAudioRecorder replaces QAudioCaptureSource+QMediaRecorder combination.

Change-Id: I0082d766fc0d1b8d5ecbfc527f13e715add730c8
Reviewed-by: Michael Goddard <michael.goddard@nokia.com>
12 years agoAdd a simple Torch class that wraps the camera flash.
Michael Goddard [Tue, 17 Jan 2012 06:46:11 +0000 (16:46 +1000)]
Add a simple Torch class that wraps the camera flash.

Since nearly all programmable torch hardware doubles as camera flash
hardware, offer this class here that wraps the QCameraFlashControl.

Change-Id: Ib2c061c21c14221d67477d8a3fd89a76fc26ed71
Reviewed-by: Jonas Rabbe <jonas.rabbe@nokia.com>
12 years agoSet the volume for our automatic integration tests.
Michael Goddard [Wed, 18 Jan 2012 03:54:53 +0000 (13:54 +1000)]
Set the volume for our automatic integration tests.

These aren't manual test, so we don't care if you can't hear it.

QSound does not have a volume property (yet).

Change-Id: I6ef90262decf4630de84478215bfe8d259db4751
Reviewed-by: Ling Hu <ling.hu@nokia.com>
12 years agoFixed compile of quicktime plugin
Rohan McGovern [Wed, 18 Jan 2012 01:35:48 +0000 (11:35 +1000)]
Fixed compile of quicktime plugin

This code was including the qmacdefines_mac.h header from QtWidgets,
which has recently been removed.  Using the header is no longer
necessary.

Note that the qmacdefines_mac.h contained a workaround for some mac
system headers declaring variables named `slots'.  Replace that
workaround with the standard no_keywords method.

Change-Id: Icd47a562d64953692e50a9fea8bb4a9c8424375c
Reviewed-by: Michael Goddard <michael.goddard@nokia.com>
12 years agoUse relative instead of absolute SUBDIRS, as usual.
Rohan McGovern [Wed, 18 Jan 2012 01:17:50 +0000 (11:17 +1000)]
Use relative instead of absolute SUBDIRS, as usual.

There doesn't seem to be any reason for using the full path to subdirs
here.  Using the full path is unconventional, and it causes the
makefile targets to be named after the full path to the subdir, which
is unnecessarily long and also unpredictable.

Change-Id: I88361b50a4814b5b063f6d84bc68ff6955af1960
Reviewed-by: Michael Goddard <michael.goddard@nokia.com>
12 years agoFixed wrong type for autoLoad property in Video element.
Jonas Rabbe [Tue, 17 Jan 2012 05:02:41 +0000 (15:02 +1000)]
Fixed wrong type for autoLoad property in Video element.

Change-Id: I803fc3950fd652cb1c2d547636111cdc23b42939
Reviewed-by: Ling Hu <ling.hu@nokia.com>
Reviewed-by: Michael Goddard <michael.goddard@nokia.com>
12 years agoAdded documentation for the convenience Video element
Jonas Rabbe [Tue, 17 Jan 2012 01:35:21 +0000 (11:35 +1000)]
Added documentation for the convenience Video element

Change-Id: I1963e312c65ec4cc91a54410e86f0606a285086c
Reviewed-by: Angus Cummings <angus.cummings@nokia.com>
Reviewed-by: Michael Goddard <michael.goddard@nokia.com>
12 years agoMore minor doc fixes.
Michael Goddard [Tue, 17 Jan 2012 03:10:20 +0000 (13:10 +1000)]
More minor doc fixes.

- Missing enums
- Misspelt \fn etc
- Missing QSoundEffect C++ docs
- A few typos etc

Change-Id: I3418e79b5d50a7ab86e54d79676c33d06954bef5
Reviewed-by: Jonas Rabbe <jonas.rabbe@nokia.com>
12 years agoFix up a few doc issues
Michael Goddard [Mon, 16 Jan 2012 06:27:32 +0000 (16:27 +1000)]
Fix up a few doc issues

* lingering references to Mobility
* missing group tags on some classes meant they went missing
* put classes into functional groups as well (e.g. audio, camera)
* added some of the qdoc files to OTHER_FILES so they show up in Creator

There are still a lot of warnings since it seems like qdoc is not
processing the controls directory.

Change-Id: I036f8826ae63f8273b3e649cb32c091d964ce830
Reviewed-by: Jonas Rabbe <jonas.rabbe@nokia.com>
12 years agoChanged QCamera::captureMode property to QFlags
Dmytro Poplavskiy [Thu, 12 Jan 2012 06:27:34 +0000 (16:27 +1000)]
Changed QCamera::captureMode property to QFlags

This enables the expression of extra camera modes like
viewfinder only or capture during video recording.

Change-Id: Ie02fdeef5eb7fd6fc2f133c1afb0141e37c22b06
Reviewed-by: Mithra Pattison <mithra.pattison@nokia.com>
Reviewed-by: Jonas Rabbe <jonas.rabbe@nokia.com>
12 years agoRemove antiquated \since lines in docs.
Michael Goddard [Mon, 16 Jan 2012 05:19:20 +0000 (15:19 +1000)]
Remove antiquated \since lines in docs.

They aren't useful in the case of QtMultimedia{Kit}

Change-Id: If1b0b6625763c85907fb05beb9c440046472ddef
Reviewed-by: Jonas Rabbe <jonas.rabbe@nokia.com>
12 years agoRemove out-of-line uses of qMalloc/qFree/qRealloc.
Robin Burchell [Fri, 6 Jan 2012 18:31:00 +0000 (19:31 +0100)]
Remove out-of-line uses of qMalloc/qFree/qRealloc.

Per http://codereview.qt-project.org/#change,11562,  we are trying to
remove these in favour of direct allocation,  or (in the case of inline code)
specialised out-of-line wrappers.

Change-Id: If3fb6c4851633bdbb2b2771de0180c668bb01d14
Reviewed-by: Mithra Pattison <mithra.pattison@nokia.com>
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
12 years agoFix build for the camera support of QtMultimedia GStreamer plugin.
Alexis Menard [Fri, 13 Jan 2012 12:28:19 +0000 (09:28 -0300)]
Fix build for the camera support of QtMultimedia GStreamer plugin.

Include the correct header file (it was renamed) and also remove
duplicate declaration.

Change-Id: I2683851e9fd0978427273c4739f47b54e1af743b
Reviewed-by: Simon Hausmann <simon.hausmann@nokia.com>
Reviewed-by: Michael Goddard <michael.goddard@nokia.com>
12 years agoAdd a metaData property to QVideoFrame.
Michael Goddard [Thu, 12 Jan 2012 06:11:47 +0000 (16:11 +1000)]
Add a metaData property to QVideoFrame.

Change-Id: I6614cd86e3e1e170277bfc751222b5b42cb657eb
Reviewed-by: Dmytro Poplavskiy <dmytro.poplavskiy@nokia.com>
12 years agoRemove some very out of date information.
Michael Goddard [Fri, 13 Jan 2012 02:37:35 +0000 (12:37 +1000)]
Remove some very out of date information.

The module overview still needs a lot of work.

Change-Id: I675e94d2fbcfec550a3d96056f52325e6150de7d
Reviewed-by: Dmytro Poplavskiy <dmytro.poplavskiy@nokia.com>
12 years agoPolish the video documentation a bit.
Michael Goddard [Thu, 12 Jan 2012 05:45:07 +0000 (15:45 +1000)]
Polish the video documentation a bit.

Change-Id: I7f76f710b64379ae6935cd86aed37914a7f85d0b
Reviewed-by: Dmytro Poplavskiy <dmytro.poplavskiy@nokia.com>
Reviewed-by: Jonas Rabbe <jonas.rabbe@nokia.com>
12 years agoAdded overview documentation for the radio
Jonas Rabbe [Thu, 12 Jan 2012 03:23:08 +0000 (13:23 +1000)]
Added overview documentation for the radio

Change-Id: I71b072512db51f23b0aed82545b504f9efc824d0
Reviewed-by: Dmytro Poplavskiy <dmytro.poplavskiy@nokia.com>
12 years agoUpdate year in Nokia copyright headers.
Jason McDonald [Tue, 10 Jan 2012 05:24:54 +0000 (15:24 +1000)]
Update year in Nokia copyright headers.

Update headers from before 2011 that were missed in the previous commit.

Change-Id: Ib0fd91a39ffc57117fe01280e34519c3f914fac0
Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
12 years agoImprove the QCameraFocus and QCameraImageProcessing documentation.
Michael Goddard [Wed, 11 Jan 2012 04:48:52 +0000 (14:48 +1000)]
Improve the QCameraFocus and QCameraImageProcessing documentation.

Also adds documentation for QCameraFocusZone.

Change-Id: I805806e9a683244b0c03553e00bebb41e6767ff1
Reviewed-by: Dmytro Poplavskiy <dmytro.poplavskiy@nokia.com>
12 years agoUpdated QtMultimedia declarative module to version 5.0
Jonas Rabbe [Wed, 11 Jan 2012 02:12:55 +0000 (12:12 +1000)]
Updated QtMultimedia declarative module to version 5.0

The QtMultimedia module should have version 5.0 to align with
Qt 5 in general. This change updates the version, but keeps
4.0 versions of the elements for compatability purposes.

Documentation and examples has also been updated to reflect
this version change.

Change-Id: Ica10c1a5ecc2c7233192a65e04ff77eb33a77e30
Reviewed-by: Michael Goddard <michael.goddard@nokia.com>
12 years agoAdded documentation for the Radio and RadioData QML elements.
Jonas Rabbe [Tue, 10 Jan 2012 04:32:56 +0000 (14:32 +1000)]
Added documentation for the Radio and RadioData QML elements.

Change-Id: I60c98b23138664543a1738ae93043432f66c8ab8
Reviewed-by: Michael Goddard <michael.goddard@nokia.com>
12 years agoRemove widgets config test.
Michael Goddard [Mon, 9 Jan 2012 06:59:54 +0000 (16:59 +1000)]
Remove widgets config test.

Since it's not guaranteed that other Qt modules will be built by the
time qmake is run (and config.tests are created) we can't rely on
compilation.  Just check the module.pri variable for widgets instead.

Change-Id: I352cf6427b748b89b69ec17588ce0dd83065090f
Reviewed-by: Jonas Rabbe <jonas.rabbe@nokia.com>
12 years agosync.profile: introduce dependency on qtjsbackend
Rohan McGovern [Tue, 10 Jan 2012 08:04:38 +0000 (18:04 +1000)]
sync.profile: introduce dependency on qtjsbackend

sync.profile needs to enumerate indirect dependencies too.
qtdeclarative now depends on qtjsbackend; update sync.profile
accordingly.

Change-Id: I45cd8d2ca7e35abbb58b83f133e33a052aa4598e
Reviewed-by: Simon Hausmann <simon.hausmann@nokia.com>
12 years agoFix for QSoundEffect crash bug
Mithra Pattison [Fri, 6 Jan 2012 02:54:26 +0000 (12:54 +1000)]
Fix for QSoundEffect crash bug

When multiple QSoundEffect instances play the same wav source file
simultaneously, the system would crash due to some instances not
waiting for the underlying pulse audio stream to complete its
setup logic. QSoundEffect now waits for the stream to attain the
correct state before playing the sound.

Change-Id: Ib5a1e6bc3f1cc314054f9cdc89c10100ad546721
Reviewed-by: Ling Hu <ling.hu@nokia.com>
Reviewed-by: Michael Goddard <michael.goddard@nokia.com>
12 years agoAdd the spot for spot metering mode.
Michael Goddard [Fri, 6 Jan 2012 05:21:38 +0000 (15:21 +1000)]
Add the spot for spot metering mode.

Not yet fully documented in QML - needs a bit of an overhaul first.

Change-Id: Ic11684858fb872d0b4dcedf60b390571371db252
Reviewed-by: Dmytro Poplavskiy <dmytro.poplavskiy@nokia.com>
12 years agoProperly handle the case where QtWidgets is not available.
Michael Goddard [Thu, 5 Jan 2012 07:22:19 +0000 (17:22 +1000)]
Properly handle the case where QtWidgets is not available.

It does use a config test for now, just to make it clearer.  The Mac
backend currently requires widgets, but most of the others should work
without it (just not supporting QVideoWidget/WindowControl).

The QVideoDeviceControl interface was modified to remove the QIcon
usage - it was never implemented.

Unfortunately even the QML examples need widgets for the wrapper
application, and will need to be ported to QtGui based wrapper.

Change-Id: I8a55ad5cf09ab51749510bf16f49de0bd3f0bcdb
Reviewed-by: Ling Hu <ling.hu@nokia.com>
12 years agoUpdate copyright year in license headers.
Jason McDonald [Thu, 5 Jan 2012 05:41:44 +0000 (15:41 +1000)]
Update copyright year in license headers.

Change-Id: Ib82c1be5548443ef1f5e97b3d5641a2f55d212af
Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
12 years agoQtMultimedia: Fix compiler warnings.
Friedemann Kleint [Thu, 5 Jan 2012 07:17:54 +0000 (08:17 +0100)]
QtMultimedia: Fix compiler warnings.

- Fix deprecated QDeclarative includes.
- Comment out unused parameter.
- Remove trailing comma from enumeration value (Clang)

Reviewed-by: Michael Goddard <michael.goddard@nokia.com>
Change-Id: I31d54a12505f4e3a48eb4b7736a48d5dacc2c0d9
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com>
12 years agoQSound/QSoundEffect: Use QFINDTESTDATA to locate test data.
Friedemann Kleint [Tue, 3 Jan 2012 12:41:33 +0000 (13:41 +0100)]
QSound/QSoundEffect: Use QFINDTESTDATA to locate test data.

Replace SRCDIR define by QFINDTESTDATA, which is the standard
method of locating test data. Remove apparently unused code path
within QT_QSOUNDEFFECT_USEAPPLICATIONPATH.

Change-Id: Id7120e75af727839ad2d1d2b3ef25c7ef2122fa5
Reviewed-by: Mithra Pattison <mithra.pattison@nokia.com>
Reviewed-by: Michael Goddard <michael.goddard@nokia.com>
12 years agoRestructure the source code a little.
Michael Goddard [Wed, 4 Jan 2012 06:05:55 +0000 (16:05 +1000)]
Restructure the source code a little.

Change-Id: I995b0fb33bdda7f01bf6266c1c50a1b17eba6760
Reviewed-by: Jonas Rabbe <jonas.rabbe@nokia.com>
12 years agoadd Q_OBJECT to QMediaGaplessPlaybackControl
Ling Hu [Wed, 4 Jan 2012 05:41:14 +0000 (15:41 +1000)]
add Q_OBJECT to QMediaGaplessPlaybackControl

Change-Id: I010b14f7900bd168012bb876f708397eec4dfa4b
Reviewed-by: Michael Goddard <michael.goddard@nokia.com>
12 years agoQAudioIn/Output-tests: Remove SRCDIR-macro/stabilize.
Friedemann Kleint [Tue, 3 Jan 2012 12:29:28 +0000 (13:29 +0100)]
QAudioIn/Output-tests: Remove SRCDIR-macro/stabilize.

- Introduce QTemporaryDir to create a temporary directory
  to write the files, preventing file open failures caused
  by left-overs of failed tests.
- Use smart pointers for files and QTemporaryDir to ensure
  that files and the directory are always cleaned up
  at destruction time.

Change-Id: Icfbb331dbdd586012b5787f91c36e164033c4120
Reviewed-by: Michael Goddard <michael.goddard@nokia.com>
12 years agoAdd new gapless playback control interface
Ling Hu [Tue, 3 Jan 2012 03:59:02 +0000 (13:59 +1000)]
Add new gapless playback control interface

Change-Id: If14c20af6da81dd65177102c9b955e3ebd40c722
Reviewed-by: Mithra Pattison <mithra.pattison@nokia.com>
Reviewed-by: Michael Goddard <michael.goddard@nokia.com>
12 years agoInitialize the mock player state variables.
Michael Goddard [Tue, 3 Jan 2012 06:42:36 +0000 (16:42 +1000)]
Initialize the mock player state variables.

So valgrind is less grumpy.

Change-Id: I3219fd1eaa2296bc6e158876137e0b79c4d8b714
Reviewed-by: Ling Hu <ling.hu@nokia.com>
Reviewed-by: Dmytro Poplavskiy <dmytro.poplavskiy@nokia.com>
12 years agoRemove a random instantiation of a backend.
Michael Goddard [Tue, 3 Jan 2012 06:41:55 +0000 (16:41 +1000)]
Remove a random instantiation of a backend.

Not appropriate for a unit test.

Change-Id: I7b05bb8aa067382b34e30d0602809c9fe56b27ef
Reviewed-by: Ling Hu <ling.hu@nokia.com>
12 years agoRemove some test functions that are actually integration tests.
Michael Goddard [Tue, 3 Jan 2012 06:41:02 +0000 (16:41 +1000)]
Remove some test functions that are actually integration tests.

And they're already in the qcamerabackend test.

Change-Id: If3edba9035380372a2e8d46efe1cf41e91ce5f09
Reviewed-by: Ling Hu <ling.hu@nokia.com>
Reviewed-by: Dmytro Poplavskiy <dmytro.poplavskiy@nokia.com>
12 years agoAdd new implementation of QSound class
Mithra Pattison [Thu, 22 Dec 2011 05:12:03 +0000 (15:12 +1000)]
Add new implementation of QSound class

Added a re-implementation of QSound, using functionality derived from
QSoundEffect. QSound API remains the same as the original 4.x version.

It offers both a static interface (with auto resource cleanup on sound
completion), as well as an object instance interface for more detailed
control.

Change-Id: I85c00dd88547f8dea9b1e1ef2da31d2f2e28a172
Reviewed-by: Michael Goddard <michael.goddard@nokia.com>
12 years agoAdding hasAudio and hasVideo properties to QML MediaPlayer
Mithra Pattison [Thu, 29 Dec 2011 01:19:19 +0000 (11:19 +1000)]
Adding hasAudio and hasVideo properties to QML MediaPlayer

Adding hasAudio and hasVideo to MediaPlayer QML object to allow users
to determine whether the current media has audio and/or video
streams. Also adding notifies for when these properties change.

Change-Id: Ife7606e148f0c0ad558b4019c68c70973c199c08
Reviewed-by: Sergey Dubitskiy
Reviewed-by: Michael Goddard <michael.goddard@nokia.com>
12 years agoAdded Video.qml to QtMultimedia, Video component
Angus Cummings [Fri, 23 Dec 2011 05:56:30 +0000 (15:56 +1000)]
Added Video.qml to QtMultimedia, Video component

Change-Id: I0f5707a7cae931988aaddced23ad157105d0643b
Reviewed-by: Michael Goddard <michael.goddard@nokia.com>
12 years agoFix namespace compilation.
Michael Goddard [Thu, 22 Dec 2011 05:48:21 +0000 (15:48 +1000)]
Fix namespace compilation.

By removing unnamespaced forward decls.

Change-Id: Icccb34092ef7451d29f52db08811a2152c50e4b8
Reviewed-by: Jonas Rabbe <jonas.rabbe@nokia.com>
12 years agoFix some of the effects in qmlvideofx
Michael Goddard [Thu, 22 Dec 2011 03:08:25 +0000 (13:08 +1000)]
Fix some of the effects in qmlvideofx

* TiltShift was sometimes applying the effect in the wrong place.
* Blur had some QML properties duplicated
* Blur kernel wasn't quite summing to 1, and was applying opacity twice
* The target width for the second pass was incorrect, so it was blending
darkness, resulting in a dreary image.

Change-Id: Ib8ba93d979c597cf4d225b3d24d26a22d0cdffc2
Reviewed-by: Jonas Rabbe <jonas.rabbe@nokia.com>
12 years agoDisable some build time messages.
Michael Goddard [Thu, 22 Dec 2011 03:07:17 +0000 (13:07 +1000)]
Disable some build time messages.

Change-Id: I5a46b36c72f4307471cfe77f055706539a77049c
Reviewed-by: Jonas Rabbe <jonas.rabbe@nokia.com>
12 years agoEnable the new examples.
Michael Goddard [Thu, 22 Dec 2011 03:06:57 +0000 (13:06 +1000)]
Enable the new examples.

Change-Id: I6078090d706c633cf0e85c74495d092f2d653127
Reviewed-by: Jonas Rabbe <jonas.rabbe@nokia.com>
12 years agoExpress qmlvideofx effect parameters declaratively
Gareth Stockwell [Tue, 20 Dec 2011 13:51:34 +0000 (13:51 +0000)]
Express qmlvideofx effect parameters declaratively

Each effect item now exposes a ListModel property which describes the
set of user-controllable parameters.  This model is used by the
ParameterPanel component to generate a ListView whose delegate displays
the parameter name and a slider.

Change-Id: Ib26877fe434d8b746ef621e0b4adbcbe1ed9aaa8
Reviewed-by: Michael Goddard <michael.goddard@nokia.com>
12 years agoAdd qmlvideo and qmlvideofx examples
Gareth Stockwell [Thu, 15 Dec 2011 13:14:24 +0000 (13:14 +0000)]
Add qmlvideo and qmlvideofx examples

Based on code imported from master branch of QtMobility repo,
ported to Qt Quick 2.

Task-number: QTBUG-23118
Change-Id: Ifd297de0e595c675ff1a8e3218d91b03629295b9
Reviewed-by: Jonas Rabbe <jonas.rabbe@nokia.com>
Reviewed-by: Michael Goddard <michael.goddard@nokia.com>
12 years agoFix readyChanged signal emit in gstreamervideorenderer
Mithra Pattison [Mon, 19 Dec 2011 09:23:21 +0000 (19:23 +1000)]
Fix readyChanged signal emit in gstreamervideorenderer

Modified handling of source update in gstreamervideorenderer as
the existing logic meant that it would never emit the readyChanged
signal.

Change-Id: I0a1488cfc151388fe0145d231001e502e9f45f0e
Reviewed-by: Michael Goddard <michael.goddard@nokia.com>
Reviewed-by: Mithra Pattison <mithra.pattison@nokia.com>
12 years agoFix a compiler warning.
Michael Goddard [Wed, 21 Dec 2011 02:18:21 +0000 (12:18 +1000)]
Fix a compiler warning.

Change-Id: Ie53ebaecc14a5bd2baa609b7cae6f0ee59aa0fd2
Reviewed-by: Dmytro Poplavskiy <dmytro.poplavskiy@nokia.com>
12 years agoFix X11 and QPA compilation problems
Jonas Rabbe [Fri, 9 Dec 2011 01:45:11 +0000 (11:45 +1000)]
Fix X11 and QPA compilation problems

The X11 buffer pool was using outdated APIs, and as the 'qpa'
configuration value is being removed, it caused the X11 code
to be pulled in, and therefore cause compilation failures.

Change-Id: I5fdaed854c6525716fccca44b5fbd0b850880cb9
Reviewed-by: Michael Goddard <michael.goddard@nokia.com>
12 years agoRemove the module prefix from a number of includes.
Michael Goddard [Fri, 9 Dec 2011 05:43:18 +0000 (15:43 +1000)]
Remove the module prefix from a number of includes.

Since I get build failures due to other changes in lower modules.

Change-Id: Iac6a814071c019de25db52daf941185337fad14a
Reviewed-by: Michael Goddard <michael.goddard@nokia.com>
12 years agoRegistered CameraFlash qml type
Dmytro Poplavskiy [Thu, 8 Dec 2011 13:17:13 +0000 (15:17 +0200)]
Registered CameraFlash qml type

Change-Id: I0d05006dcfd690b2246bc0ccfea468168b207333
Reviewed-by: Michael Goddard <michael.goddard@nokia.com>
12 years agoSoundEffects System Tests added
dakovaci [Wed, 7 Dec 2011 03:54:19 +0000 (13:54 +1000)]
SoundEffects System Tests added

Added some soundeffects systems test to the audio systems test

Change-Id: I9f9392a9bee50c11d0ec9d32490b79241e49014a
Reviewed-by: Natalia Shubina <natalia.shubina@nokia.com>
12 years agoEdited the Camera systemtest
dakovaci [Tue, 6 Dec 2011 05:25:31 +0000 (15:25 +1000)]
Edited the Camera systemtest

Just some small editing

Change-Id: I918a259570ef105047015dccfbf27c1be6e5a513
Reviewed-by: Natalia Shubina <natalia.shubina@nokia.com>
12 years agoRemove unused QTRY_WAIT macros.
Jason McDonald [Tue, 6 Dec 2011 07:15:15 +0000 (17:15 +1000)]
Remove unused QTRY_WAIT macros.

Change-Id: I8484c19d0458d9ec9a3a621fa0b866258e8212c3
Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
12 years agoRemove duplicates of QTRY_VERIFY and QTRY_COMPARE.
Jason McDonald [Tue, 6 Dec 2011 07:10:25 +0000 (17:10 +1000)]
Remove duplicates of QTRY_VERIFY and QTRY_COMPARE.

These macros are now provided by testlib via the QtTest/QtTest header.

Change-Id: I6b499395888268aab315d63404e2b0eed8688615
Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
12 years agoQtMultiMedia: Fix warnings about missing return values.
Friedemann Kleint [Mon, 5 Dec 2011 10:09:03 +0000 (11:09 +0100)]
QtMultiMedia: Fix warnings about missing return values.

In QDebug operator<< for enumerations.

Change-Id: I52309356f05a9520b7472a673450a224d7fa71d3
Reviewed-by: Michael Goddard <michael.goddard@nokia.com>
12 years agoQtMultimedia: Fix warnings about declarative/quick.
Friedemann Kleint [Mon, 5 Dec 2011 12:58:30 +0000 (13:58 +0100)]
QtMultimedia: Fix warnings about declarative/quick.

Change-Id: Ic9323b222641e41dae05cb4b0dccb6531e845676
Reviewed-by: Kent Hansen <kent.hansen@nokia.com>
12 years agoCleanup multimedia unit tests.
Jason McDonald [Fri, 2 Dec 2011 04:39:42 +0000 (14:39 +1000)]
Cleanup multimedia unit tests.

Use QTEST_MAIN or QTEST_GUILESS_MAIN instead of equivalent custom main()
functions.  Also collapse each test into a single source file, in line
with most other autotests.

Change-Id: I38c7b6a9eb0ff1c9b8ac44de7d5f40d6ac6c46ea
Reviewed-by: Michael Goddard <michael.goddard@nokia.com>
12 years agoAdd playlist test
dakovaci [Fri, 2 Dec 2011 03:32:33 +0000 (13:32 +1000)]
Add playlist test

Added some playlist tests and edit some audio

Change-Id: I936ef4772be9aebe5baf8f755cedadc93107f9e4
Reviewed-by: Natalia Shubina <natalia.shubina@nokia.com>
12 years agoImplemented QDeclarativeCameraCapture::setMetadata
Dmytro Poplavskiy [Thu, 1 Dec 2011 04:29:32 +0000 (14:29 +1000)]
Implemented QDeclarativeCameraCapture::setMetadata

QMetaDataWriterControl is used if it's available.

Change-Id: I18fd36c411b6d3c397ff22ebfea9b2c0e878cdeb
Reviewed-by: Ling Hu <ling.hu@nokia.com>
12 years agoAllow nested read only maps of QVideoFrame.
Dmytro Poplavskiy [Mon, 28 Nov 2011 05:00:26 +0000 (15:00 +1000)]
Allow nested read only maps of QVideoFrame.

It's useful when video frame is accessed from multiple places
like display and encoding.

Change-Id: I8af175c780783216d8b7717cdf0744ad9bc95348
Reviewed-by: Michael Goddard <michael.goddard@nokia.com>
12 years agoAdd orientation support to VideoOutput.
Michael Goddard [Fri, 25 Nov 2011 05:25:22 +0000 (15:25 +1000)]
Add orientation support to VideoOutput.

Just uses an integer to represent the degrees rotation from standard.
Only supports multiples of 90 - other rotation can be done with
standard QML.

Change-Id: Id4013169c5d9da473b6e5be94ba341da21c2f2a3
Reviewed-by: Dmytro Poplavskiy <dmytro.poplavskiy@nokia.com>
12 years agoFixed QtMultimedia core namespace compilation.
Toby Tomkins [Fri, 25 Nov 2011 05:38:27 +0000 (15:38 +1000)]
Fixed QtMultimedia core namespace compilation.

Change-Id: Ie276a7766bd26f3e49b2bc9c1a28ec96f1e3e4b0
Reviewed-by: Michael Goddard <michael.goddard@nokia.com>
12 years agoUpdated I420 video node to be consistent with RGB node implementation.
Dmytro Poplavskiy [Thu, 24 Nov 2011 04:23:45 +0000 (14:23 +1000)]
Updated I420 video node to be consistent with RGB node implementation.

Don't keep the frame after it was uploaded to texture;
Upload frame data during rendering (in material shader updateState)
instead of updatePaintNode().

Change-Id: Ia6a4063bfa02d4d20f75735649fe4f777cf50494
Reviewed-by: Michael Goddard <michael.goddard@nokia.com>
Reviewed-by: Jonas Rabbe <jonas.rabbe@nokia.com>
12 years agoQAudioDeviceInfo is actually an integration test.
Michael Goddard [Thu, 24 Nov 2011 03:25:21 +0000 (13:25 +1000)]
QAudioDeviceInfo is actually an integration test.

It should be separated at some point.

Change-Id: I03adde303eed558d52e06f0afa673252e54c2182
Reviewed-by: Jonas Rabbe <jonas.rabbe@nokia.com>
12 years agoIf we fail to connect to pulse, don't enumerate sinks or sources.
Michael Goddard [Thu, 24 Nov 2011 02:42:24 +0000 (12:42 +1000)]
If we fail to connect to pulse, don't enumerate sinks or sources.

Otherwise the pulse client library dislikes having methods called
with a null context.

Change-Id: I96629065b7a0e36e0d10402526cb167e65458e27
Reviewed-by: Jonas Rabbe <jonas.rabbe@nokia.com>
12 years agoAdd testDestroyWhileRestartPlaying for qsoundeffect
Ling Hu [Tue, 22 Nov 2011 06:17:23 +0000 (16:17 +1000)]
Add testDestroyWhileRestartPlaying for qsoundeffect

This covers the potential crash reported by qfeedbackmmk test.

Change-Id: Ib533e80b25c4c7fb291527d62445aaa40960baa0
Reviewed-by: Michael Goddard <michael.goddard@nokia.com>
12 years agoVideoOutput: release video frames when the video surface is stopped.
Dmytro Poplavskiy [Fri, 18 Nov 2011 03:23:21 +0000 (13:23 +1000)]
VideoOutput: release video frames when the video surface is stopped.

It's necessary to release video frames during media pipeline shutdown
or reconfiguration.

Change-Id: I386ad4d173b8731f257ec9272ef8c46a27769bd0
Reviewed-by: Michael Goddard <michael.goddard@nokia.com>
12 years agoFix SoundEffect(pulseaudio) crash in qfeedbackmmk auto test
Ling Hu [Fri, 18 Nov 2011 06:59:36 +0000 (16:59 +1000)]
Fix SoundEffect(pulseaudio) crash in qfeedbackmmk auto test

Task-Number: QTBUG-22779

Some pulseaudio callback may happen after SoundEffect was deleted,
thus the userdata(SoundEffect point) we passed previously may
result in potential crash with QMetaObject::invokeMethod to queue some event.

To solve this problem, the release mehtod is added to SoundEffectPrivate,
and instead of calling d->deleteLater in SoundEffect::dtor,
 d->release is called. So SoundEffectPrivate will no when it is going to
be deleted soon rather than handle everything in SoundEffectPrivate::dtor
which may be too late.

class RefObject is also added to be able to track the SoundEffectPrivate
status by pulseaduio callbacks. I thought this could be avoided by checking
the connection state of pulse stream. However, that doesn't work as expected,
stream state remains Ready when checked in callbacks even after disconnect
stream has been called. So RefObject is used instead and its lifecycle is
managed by an internal reference count.

When release is invoked,
m_ref->onDeleted is called first, this will mark SoundEffectPrivate as dead.
and then unloadPulseStream is called.
After those two invocations, we can be asured that:
1. if some pulse callbacks has been called without knowing
 SoundEffectPrivate dead, the queued invocation on SoundEffectPrivate
would be safe, since SoundEffectPrivate::deleteLater would
 be called after them.

2. Since on pulse callbacks would be executed when unloadPulseStream is called,
then at this moment if some pulse callbacks is called again, it would certainly
knows that SoundEffectPrivate is marked as dead and would not queue and
event on SoundEffectPrivate.

Now, the deleteLater can be safely called.

Change-Id: I807f29cddb677d1f4bc078fd306ed0d83d6f7dc4
Reviewed-by: Ling Hu <ling.hu@nokia.com>
12 years agoFixed qtmultimedia imports -qtnamespace issues.
Toby Tomkins [Mon, 21 Nov 2011 07:37:31 +0000 (17:37 +1000)]
Fixed qtmultimedia imports -qtnamespace issues.

Change-Id: Ie7896faf92b3cc5fdf2b6dbe885913c2669e6e36
Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
12 years agoIf the sample hasn't been loaded, don't try and delete things.
Michael Goddard [Fri, 18 Nov 2011 02:30:42 +0000 (12:30 +1000)]
If the sample hasn't been loaded, don't try and delete things.

Causes entirely reasonable warnings from QCoreApplication::postEvents,
when calling deleteLater on a null pointer.

Change-Id: I5f1fa526b2d57844b9c0d2e634d434e2f7867bdf
Reviewed-by: Ling Hu <ling.hu@nokia.com>
12 years agoIf the sample hasn't been loaded, don't try and delete things.
Michael Goddard [Fri, 18 Nov 2011 02:30:42 +0000 (12:30 +1000)]
If the sample hasn't been loaded, don't try and delete things.

Causes entirely reasonable warnings from QCoreApplication::postEvents,
when calling deleteLater on a null pointer.

Change-Id: I5f1fa526b2d57844b9c0d2e634d434e2f7867bdf
Reviewed-by: Ling Hu <ling.hu@nokia.com>
12 years agoExport QMediaPluginLoader so it can be used by libqgsttools_p.
Jonas Rabbe [Fri, 18 Nov 2011 00:53:29 +0000 (10:53 +1000)]
Export QMediaPluginLoader so it can be used by libqgsttools_p.

Change-Id: I2af6a68646cccaa92ae8b85b67e2095dcfee485e
Reviewed-by: Michael Goddard <michael.goddard@nokia.com>
Reviewed-by: Dmytro Poplavskiy <dmytro.poplavskiy@nokia.com>
12 years agoExport QMediaPluginLoader so it can be used by libqgsttools_p.
Jonas Rabbe [Fri, 18 Nov 2011 00:53:29 +0000 (10:53 +1000)]
Export QMediaPluginLoader so it can be used by libqgsttools_p.

Change-Id: I2af6a68646cccaa92ae8b85b67e2095dcfee485e
Reviewed-by: Michael Goddard <michael.goddard@nokia.com>
Reviewed-by: Dmytro Poplavskiy <dmytro.poplavskiy@nokia.com>
12 years agoIf Pulse isn't ready, don't crash when trying to play.
Michael Goddard [Thu, 17 Nov 2011 07:22:36 +0000 (17:22 +1000)]
If Pulse isn't ready, don't crash when trying to play.

Change-Id: I996581e4492004f716d44a39fb5f74c26c9f9ac2
Reviewed-by: Ling Hu <ling.hu@nokia.com>
12 years agoFix volume change error on mono stream for soundeffect(pulseaudio)
Ling Hu [Wed, 28 Sep 2011 02:15:51 +0000 (12:15 +1000)]
Fix volume change error on mono stream for soundeffect(pulseaudio)

(Cherry-picked from 663df44fc8563c548c26a7ae21927b09664c28f2)

Change-Id: I005071bc1a8b2eae4d0660042fc8986d61804c47
Reviewed-by: Michael Goddard
Reviewed-by: Michael Goddard <michael.goddard@nokia.com>
12 years agoAdd cap on internal read/write buffer for QAudioOuput(PA)
Ling Hu [Tue, 15 Nov 2011 05:40:04 +0000 (15:40 +1000)]
Add cap on internal read/write buffer for QAudioOuput(PA)

cap set to no more than 5x period size

Change-Id: If3ae244993a8929832f6724c386dac6f12ef0f03
Reviewed-by: Michael Goddard <michael.goddard@nokia.com>
12 years agoAdded support for non QMediaObject based VideoOutput sources.
Dmytro Poplavskiy [Mon, 14 Nov 2011 23:56:32 +0000 (09:56 +1000)]
Added support for non QMediaObject based VideoOutput sources.

VideoOutput element checks first for mediaObject property of
source object and if it's not available it checks
for videoSurface property.

It allows to implement video frames generator and connect it
to optimized VideoOutput QML element.

Change-Id: I8ee618cf61b9d9100f25e742c631ea8724c188dc
Reviewed-by: Jonas Rabbe <jonas.rabbe@nokia.com>
12 years agoAdd additional protection on the write size in QAudioOuput(pulseaudio)
Ling Hu [Mon, 14 Nov 2011 04:37:40 +0000 (14:37 +1000)]
Add additional protection on the write size in QAudioOuput(pulseaudio)

Check and cap the write size in pull mode to handle the case
where user returned an invalid write size through QIODevice

Change-Id: Ie0610a63f1d5400fba87f32a99bdc38479e0e7e8
Reviewed-by: Michael Goddard <michael.goddard@nokia.com>
Reviewed-by: Jonas Rabbe <jonas.rabbe@nokia.com>
12 years agoChanged QVideoSurfaceGstSink to take pools from plugins
Jonas Rabbe [Tue, 8 Nov 2011 02:38:02 +0000 (12:38 +1000)]
Changed QVideoSurfaceGstSink to take pools from plugins

Change-Id: Iec743efc52513e2000276b9a18d1d9639c270699
Reviewed-by: Dmytro Poplavskiy <dmytro.poplavskiy@nokia.com>
12 years agoRemove SkipMode parameter from QSKIP.
Jason McDonald [Wed, 9 Nov 2011 04:14:08 +0000 (14:14 +1000)]
Remove SkipMode parameter from QSKIP.

The SkipMode parameter has been removed from the API in qtbase, so it
must be in all calls to QSKIP.

Task-number: QTBUG-21851, QTBUG-21652
Change-Id: Ib6225572a46eac7881222fdce192750b8b13ee3b
Reviewed-by: Steve Schilz <sschilz@pasco.com>
Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
12 years agoRadio systemtests
dakovaci [Mon, 31 Oct 2011 05:52:26 +0000 (15:52 +1000)]
Radio systemtests

Added some radio functionality to match the qlm radio example

Change-Id: Ie0358c3443121b638db406e095467b18b4d6b57c
Reviewed-by: Daron Andrew Edie
(cherry picked from commit 1e542df82fbcc4e3a8f75537af204f83827a4587)
Reviewed-by: Michael Goddard <michael.goddard@nokia.com>
12 years agoAdd qRegisterMetaTypes for the public Q_DECLARE_METATYPEs.
Michael Goddard [Tue, 8 Nov 2011 07:41:00 +0000 (17:41 +1000)]
Add qRegisterMetaTypes for the public Q_DECLARE_METATYPEs.

Also turned qtmedianamespace.qdoc into a cpp file so I
could stick the qRegisterMetaTypes into it.

Change-Id: Idd6d3e2f348f1ed45b0a35ce180d023a170e8625
Reviewed-by: Jonas Rabbe <jonas.rabbe@nokia.com>
12 years agoFix pullmode data lost problem in QAudioOutput(pulseaudio)
Ling Hu [Mon, 7 Nov 2011 01:49:09 +0000 (11:49 +1000)]
Fix pullmode data lost problem in QAudioOutput(pulseaudio)

At each userFeed, m_bytesAvailable is not updated properly in pullmode,
so the pull data size become irrelevent to the size we can actually write.
This problem is fixed by checking the actual writable size each time
before pulling the data and limit the size of the pulled and written data.

Change-Id: I6f53e6348693ddf4e3c79e90d3c3d0c1ffc713aa
Reviewed-by: Jonas Rabbe <jonas.rabbe@nokia.com>
Reviewed-by: Michael Goddard <michael.goddard@nokia.com>
12 years agoChange the order textures are bound.
Michael Goddard [Tue, 8 Nov 2011 06:56:12 +0000 (16:56 +1000)]
Change the order textures are bound.

Leave texture unit 0 active at the end, since the active texture unit
is not restored by SG itself.

Change-Id: I4970a955fea5c9342cc93c1d1b07ffbfb71e5f04
Reviewed-by: Dmytro Poplavskiy <dmytro.poplavskiy@nokia.com>
12 years agoAdded qRegisterMetatype for QVideoSurfaceFormat.
Jonas Rabbe [Tue, 8 Nov 2011 03:32:14 +0000 (13:32 +1000)]
Added qRegisterMetatype for QVideoSurfaceFormat.

Change-Id: I7dbae1dde2f24db89479dcb23ef6fc5e29377f25
Reviewed-by: Dmytro Poplavskiy <dmytro.poplavskiy@nokia.com>
12 years agoUse QAtomicInt::load() and ::store()
Bradley T. Hughes [Tue, 1 Nov 2011 12:37:41 +0000 (13:37 +0100)]
Use QAtomicInt::load() and ::store()

The operator=(int) and implicit int cast operators are deprecated
and will be removed.

Change-Id: I5091d705fba45195239c901f210355e09e123faa
Reviewed-by: João Abecasis <joao.abecasis@nokia.com>
12 years agoRearrange the automatic tests.
Michael Goddard [Fri, 4 Nov 2011 03:38:44 +0000 (13:38 +1000)]
Rearrange the automatic tests.

Split them into unit and integration tests.  Integration tests really
need to be run on the real platform (not in a VM etc) since they are
somewhat unstable or nonfunctional otherwise.

A few tests were previously broken by QUrl changes and they were repaired.
Removed one test since it was not providing a lot of value.

There are still a number of tests that rely on Q_AUTOTEST_EXPORT symbols.

Change-Id: Ic402abf0af946baa5945075d975b3f584f9ef280
Reviewed-by: Kalle Lehtonen <kalle.ju.lehtonen@nokia.com>
12 years agoDeclare more metatypes and debug operators.
Michael Goddard [Tue, 1 Nov 2011 02:46:48 +0000 (12:46 +1000)]
Declare more metatypes and debug operators.

Nearly all of the multimedia metatypes used in the auto tests are
now declared properly, and a large number of the types have debug
operators as well.

Removed the superfluous decls as well.

Change-Id: I42cfe37562db0c71d9811b4577fc326a3326ccc9
Reviewed-by: Jonas Rabbe <jonas.rabbe@nokia.com>
12 years agoAdd a private class, since we now can.
Michael Goddard [Tue, 1 Nov 2011 01:19:22 +0000 (11:19 +1000)]
Add a private class, since we now can.

This was a XXX Qt5 thing for binary compatibility. We could also
now use QObjectPrivate if we wanted to.

Change-Id: I7d95e3adf7b0725e91e1e229646a453863e989ed
Reviewed-by: Dmytro Poplavskiy <dmytro.poplavskiy@nokia.com>