platform/upstream/qtmultimedia.git
12 years agoChanges to GStreamer backend for audio decoder.
Lev Zelenskiy [Fri, 24 Feb 2012 02:50:32 +0000 (12:50 +1000)]
Changes to GStreamer backend for audio decoder.

Removed WaitingState.
New signals: finished(), positionChanged(), durationChanged().
New methods: position(), duration().
A parameter removed from read() method.
Unit tests updated.

Change-Id: Ie9d8a2804285c5542e592cce69963adbdf6ebfb8
Reviewed-by: Jonas Rabbe <jonas.rabbe@nokia.com>
Reviewed-by: Michael Goddard <michael.goddard@nokia.com>
12 years agoChanges to QAudioBuffer and QAudioDecoder (position and duration).
Lev Zelenskiy [Fri, 24 Feb 2012 00:55:17 +0000 (10:55 +1000)]
Changes to QAudioBuffer and QAudioDecoder (position and duration).

QAudioBuffer:
- Allow to specify startTime in the constructor.
QAudioDecoder:
- Removed WaitingState.
- New signals: finished(), positionChanged(), durationChanged().
- New methods: position(), duration().
- A parameter removed from read() method.

Change-Id: Ifb71502d0756aa306abd0a6bf7873934029952c4
Reviewed-by: Dmytro Poplavskiy <dmytro.poplavskiy@nokia.com>
Reviewed-by: Michael Goddard <michael.goddard@nokia.com>
12 years agoDon't use QT_ARCH to detect ARM or OpenGL ES 2 on ARM
Bradley T. Hughes [Tue, 14 Feb 2012 13:14:42 +0000 (14:14 +0100)]
Don't use QT_ARCH to detect ARM or OpenGL ES 2 on ARM

Use Q_PROCESSOR_ARM instead of QT_ARCH_ARM.

On maemo6, don't use QT_ARCH==armv6 to conditionally include egl
code. Instead check for opengles2 in QT_CONFIG, which is detected
by the configure script.

Change-Id: Ib3062fbd81c3a3acd318df32c49ad133a5b0d07c
Reviewed-by: Michael Goddard <michael.goddard@nokia.com>
12 years agoDocs: fix qml links and standalone build for Multimedia
Peter Yard [Tue, 21 Feb 2012 05:58:01 +0000 (15:58 +1000)]
Docs: fix qml links and standalone build for Multimedia

Change-Id: Ia3f1e49aef203911bb5cf1ee062c9100be213b38
Reviewed-by: Jonas Rabbe <jonas.rabbe@nokia.com>
12 years agoclean up qmake-generated projects
Oswald Buddenhagen [Tue, 21 Feb 2012 16:34:53 +0000 (17:34 +0100)]
clean up qmake-generated projects

remove assignmets which are defaults or bogus

Change-Id: I7130f22a66b294f92b0ed03749895136d0890a64
Reviewed-by: Marius Storm-Olsen <marius.storm-olsen@nokia.com>
Reviewed-by: Michael Goddard <michael.goddard@nokia.com>
12 years agoUpdate audioengine overview doc & reference doc
Ling Hu [Tue, 14 Feb 2012 01:59:13 +0000 (11:59 +1000)]
Update audioengine overview doc & reference doc

Change-Id: If1061b3dc113f4354d741c536d63cbe36e7a65eb
Reviewed-by: Michael Goddard <michael.goddard@nokia.com>
12 years agoFix a few audiodecoder things.
Michael Goddard [Fri, 17 Feb 2012 09:10:35 +0000 (19:10 +1000)]
Fix a few audiodecoder things.

Beef up the autotest a little, and check the conversion.

Change-Id: Ifffca118e092eb6c388db50a6eb12810a87aa32a
Reviewed-by: Lev Zelenskiy <lev.zelenskiy@nokia.com>
Reviewed-by: Michael Goddard <michael.goddard@nokia.com>
12 years agoFix QAudioBuffer sampleCount vs. channelCount.
Michael Goddard [Tue, 21 Feb 2012 05:19:38 +0000 (15:19 +1000)]
Fix QAudioBuffer sampleCount vs. channelCount.

There were some inconsistencies in when the sample count was per channel
or in total.  The docs mention that it is in total, so fix a few cases
where it went wrong and test it.

Change-Id: I55c855911fcde66a218d6cdd327e09ad5406d5a4
Reviewed-by: Jonas Rabbe <jonas.rabbe@nokia.com>
Reviewed-by: Lev Zelenskiy <lev.zelenskiy@nokia.com>
Reviewed-by: Michael Goddard <michael.goddard@nokia.com>
12 years agoAdd the hasAudio/hasVideo properties from MediaPlayer to Video.
Michael Goddard [Fri, 17 Feb 2012 07:43:04 +0000 (17:43 +1000)]
Add the hasAudio/hasVideo properties from MediaPlayer to Video.

Change-Id: I167184c3622c4fcb0843b17f2ab803b0bbf104fa
Reviewed-by: Mithra Pattison <mithra.pattison@nokia.com>
Reviewed-by: Michael Goddard <michael.goddard@nokia.com>
12 years agoGStreamer backend for audio decoder service.
Lev Zelenskiy [Thu, 16 Feb 2012 06:54:46 +0000 (16:54 +1000)]
GStreamer backend for audio decoder service.

Includes basic integration test.

Change-Id: I4c6d1dbefa1f27e107b3556a3d4da58811eeb122
Reviewed-by: Michael Goddard <michael.goddard@nokia.com>
12 years agoAdded QAudioDecoderControl::sourceChanged signal.
Lev Zelenskiy [Thu, 16 Feb 2012 06:46:21 +0000 (16:46 +1000)]
Added QAudioDecoderControl::sourceChanged signal.

The signal is mentioned in QAudioDecoder but is missing from
QAudioDecoderControl.

Change-Id: I0cd13c53541585098edd02093858501ffb5af1fb
Reviewed-by: Ling Hu <ling.hu@nokia.com>
Reviewed-by: Michael Goddard <michael.goddard@nokia.com>
Reviewed-by: Dmytro Poplavskiy <dmytro.poplavskiy@nokia.com>
12 years agoAdd a partial gstreamer based audio decoder service.
Michael Goddard [Tue, 14 Feb 2012 06:14:08 +0000 (16:14 +1000)]
Add a partial gstreamer based audio decoder service.

Doesn't work yet.

Change-Id: Iebd085d68346cb73af8df59c84e8e52a17de2a52
Reviewed-by: Michael Goddard <michael.goddard@nokia.com>
12 years agoUse QTESTFINDDATA to FIND TEST DATA.
Michael Goddard [Fri, 17 Feb 2012 04:40:58 +0000 (14:40 +1000)]
Use QTESTFINDDATA to FIND TEST DATA.

Change-Id: I5fd222e562045085b3d08e19c6544f674e9429d4
Reviewed-by: Ling Hu <ling.hu@nokia.com>
Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
12 years agoUse a PA function to compare specs instead of memcmp.
Michael Goddard [Fri, 17 Feb 2012 04:41:39 +0000 (14:41 +1000)]
Use a PA function to compare specs instead of memcmp.

Otherwise valgrind complains a lot.  Probably holes in the spec
structure.

Change-Id: I9580a73255820f49c0ac947eed1595a758f19ccd
Reviewed-by: Ling Hu <ling.hu@nokia.com>
12 years agoAdd Video_4.qml to the packaging.
Michael Goddard [Fri, 17 Feb 2012 05:20:50 +0000 (15:20 +1000)]
Add Video_4.qml to the packaging.

Change-Id: I0a6036a979ab00a2885c56450d1db9497b1cff0c
Reviewed-by: Angus Cummings <angus.cummings@nokia.com>
Reviewed-by: Ling Hu <ling.hu@nokia.com>
12 years agoQMediaRecorder: GStreamer backend changes for media probing API.
Lev Zelenskiy [Wed, 15 Feb 2012 04:45:18 +0000 (14:45 +1000)]
QMediaRecorder: GStreamer backend changes for media probing API.

QGstreamerCaptureSession: Using GStreamer buffer probe
to access media data.

Change-Id: I2ee38e864fbd69fcba9efe90d4dcf138528e00c0
Reviewed-by: Michael Goddard <michael.goddard@nokia.com>
12 years agoGStreamer backend changes for media probing API.
Lev Zelenskiy [Thu, 9 Feb 2012 06:50:30 +0000 (16:50 +1000)]
GStreamer backend changes for media probing API.

QGstreamerPlayerSession: Using GStreamer buffer probes
to access media data.

Change-Id: Ibc056283fdedaebba90456cc4e86ab63eae5f5f7
Reviewed-by: Michael Goddard <michael.goddard@nokia.com>
12 years agoFix some compiler warnings.
Michael Goddard [Tue, 14 Feb 2012 00:56:04 +0000 (10:56 +1000)]
Fix some compiler warnings.

As it turns out, we had an overloaded virtual from an earlier era,
with the extra parameter never used.  So cleaning that up was a
bonus to remove the compiler warning.

Change-Id: I780287f8a5d2b0a1ec84ec62c88ba50e051f372b
Reviewed-by: Jonas Rabbe <jonas.rabbe@nokia.com>
12 years agoTweak some more documentation.
Michael Goddard [Mon, 13 Feb 2012 11:05:35 +0000 (21:05 +1000)]
Tweak some more documentation.

A lot of the previous Qt Mobility API methods were still present,
so they are gone now.  Also removed some of the C++ documentation
since it's not public API anyway.
Made a group for camera QML APIs and used that for the list in the
camera overview documentation.

Change-Id: I0864bd2230a42596e951b68d0df1211766c90dfc
Reviewed-by: Jonas Rabbe <jonas.rabbe@nokia.com>
12 years agoUpdated audio recorder example with screenshot and correct information.
Jonas Rabbe [Mon, 13 Feb 2012 22:41:51 +0000 (08:41 +1000)]
Updated audio recorder example with screenshot and correct information.

Change-Id: Ibf0dc8df55f20988a949e49b1b434710373f0095
Reviewed-by: Ling Hu <ling.hu@nokia.com>
Reviewed-by: Mithra Pattison <mithra.pattison@nokia.com>
Reviewed-by: Michael Goddard <michael.goddard@nokia.com>
12 years agoDocumentation updates for declarative camera elements.
Michael Goddard [Fri, 10 Feb 2012 13:35:33 +0000 (23:35 +1000)]
Documentation updates for declarative camera elements.

A number of things were missing.

Change-Id: Ic4eb2e88804b519478eeae733cc5f473b717270d
Reviewed-by: Jonas Rabbe <jonas.rabbe@nokia.com>
12 years agoRemove duplicates definitions of QTRY_VERIFY and QTRY_COMPARE.
Jason McDonald [Mon, 13 Feb 2012 04:35:46 +0000 (14:35 +1000)]
Remove duplicates definitions of QTRY_VERIFY and QTRY_COMPARE.

These definitions were already ignored due to #ifndef directives
surrounding them, so presumably the differences in timeout values
between these definitions and those in testlib are acceptable.

Change-Id: Ib860fc1ed27ef0690e619ffeed516f7417ae4cd0
Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
12 years agoFix shader file loading in qmlvideofx example
Gareth Stockwell [Fri, 10 Feb 2012 14:09:59 +0000 (14:09 +0000)]
Fix shader file loading in qmlvideofx example

Each effect is implemented as a QML element, whose
fragment/vertexShaderFilename properties specify paths from which
shader programs are loaded.  These paths are relative to the application
installation directory, e.g. "shaders/billboard.fsh".  If the current
directory from which the application is launched does not match the
installation directory, shader program loading fails.  This patch
converts the relative filename provided by the QML element into an
absolute path before attempting to open the file.

Change-Id: I8ed39d271c4f1f59180588843e500ed73a93a543
Reviewed-by: Jonas Rabbe <jonas.rabbe@nokia.com>
12 years agoDisable flicking of qmlvideofx example parameter panel
Gareth Stockwell [Fri, 10 Feb 2012 10:37:11 +0000 (10:37 +0000)]
Disable flicking of qmlvideofx example parameter panel

Change-Id: I4cf563c288aaf37fe60ba1ec56ffc9fd72060b99
Reviewed-by: Jonas Rabbe <jonas.rabbe@nokia.com>
12 years agoImprove usability of qmlvideofx example on small touchscreens
Gareth Stockwell [Fri, 10 Feb 2012 15:25:14 +0000 (15:25 +0000)]
Improve usability of qmlvideofx example on small touchscreens

* Add tolerance to mouse press detection on divider and slider grips,
  so that clicks just outside of the grip radius are treated as if the
  click was inside the grip.
* When slider bar outside of grip radius is clicked, increment slider
  position by a fixed amount, towards the click position.

Change-Id: Iefb0b274ee5a97ed5cb789596bf6b3c07a7fc8b8
Reviewed-by: Jonas Rabbe <jonas.rabbe@nokia.com>
12 years agoFixed gst bus helper when qt build without glib support
Dmytro Poplavskiy [Fri, 10 Feb 2012 06:17:01 +0000 (16:17 +1000)]
Fixed gst bus helper when qt build without glib support

The bus helper should not be singleton.
Also combined glib and non glib cases.

Change-Id: Ie18a94bfdb5413a92a5c4ff4283527360737d52d
Reviewed-by: Michael Goddard <michael.goddard@nokia.com>
12 years agoChanges to media probing API.
Lev Zelenskiy [Thu, 9 Feb 2012 06:40:10 +0000 (16:40 +1000)]
Changes to media probing API.

Added flush signals.

Change-Id: I9c124317e843c9b9011e69c44649ae9a4e974161
Reviewed-by: Dmytro Poplavskiy <dmytro.poplavskiy@nokia.com>
12 years agoAdded location specific metadata keys.
Dmytro Poplavskiy [Thu, 9 Feb 2012 01:55:51 +0000 (11:55 +1000)]
Added location specific metadata keys.

Tags names and meaning matches the exif specification,
except of latitude and longitude following Qt Location format.

Change-Id: I2acc0194f129ccc737b0fd00ca4ebfb6b62ebdca
Reviewed-by: Michael Goddard <michael.goddard@nokia.com>
12 years agoMoved camera tests
dakovaci [Fri, 3 Feb 2012 03:57:00 +0000 (13:57 +1000)]
Moved camera tests

Moved camera tests out of Qt5Multimedia

Change-Id: I571332217dac885810c8fb7a6d28020d4578e55f
Reviewed-by: Natalia Shubina <natalia.shubina@nokia.com>
12 years agoAdd some recent things to the overview docs.
Michael Goddard [Wed, 8 Feb 2012 13:48:58 +0000 (23:48 +1000)]
Add some recent things to the overview docs.

Also clean up a few other doc related bits and pieces.

Change-Id: I56714e1811e38a7225131c1d141430b49f5f509c
Reviewed-by: Jonas Rabbe <jonas.rabbe@nokia.com>
12 years agoUpdated documentation for the QAudioRecorder class
Jonas Rabbe [Wed, 8 Feb 2012 22:25:37 +0000 (08:25 +1000)]
Updated documentation for the QAudioRecorder class

Change-Id: I93ab03e9a386578f0b43ba0e966b1570163ff056
Reviewed-by: Michael Goddard <michael.goddard@nokia.com>
12 years agoFixed 'magnify' shader in qmlvideofx example
Gareth Stockwell [Wed, 8 Feb 2012 15:51:32 +0000 (15:51 +0000)]
Fixed 'magnify' shader in qmlvideofx example

Previous shader caused untransformed pixels (those outside of the lens)
radius to be offset slightly from their original positions.

Change-Id: I4df847fdc40073a55da8777981c3fdd373937658
Reviewed-by: Michael Goddard <michael.goddard@nokia.com>
12 years agoEnable qmlvideofx window to be resized, when large screen layout used
Gareth Stockwell [Wed, 8 Feb 2012 15:32:14 +0000 (15:32 +0000)]
Enable qmlvideofx window to be resized, when large screen layout used

Change-Id: I3010b9fd5f68e922ff94edd4d08d8114c689c037
Reviewed-by: Jonas Rabbe <jonas.rabbe@nokia.com>
12 years agoTidy up frame rate display in video examples
Gareth Stockwell [Mon, 6 Feb 2012 15:40:49 +0000 (15:40 +0000)]
Tidy up frame rate display in video examples

* Use a Column element to position QML and video frame rate counters.
* When using small-screen layouts, hide frame rate counters when dialogs
  or menus are displayed.
* Do not display instantaneous frame rate.  If changes in this rate
  trigger a repaint, then the rate itself is changed.  If the repaint
  occurs in less time than the QElapsedTimer resolution, the displayed
  instantaneous rate is always zero.
* Add a label, so it is clear which is the QML repaint rate, and which
  is the video frame rate.

Change-Id: Ie58ab162ab44bd7f1c4b297eed929b9baa73552c
Reviewed-by: Jonas Rabbe <jonas.rabbe@nokia.com>
12 years agoTidy up file browsing in video examples
Gareth Stockwell [Mon, 6 Feb 2012 16:10:15 +0000 (16:10 +0000)]
Tidy up file browsing in video examples

* Use QStandardPaths to determine the initial folder displayed when
  the file browser is launched
* Persist folder between file browser invocations

Change-Id: I5b86dd3d304c3f33802f3189716e1d360774198d
Reviewed-by: Jonas Rabbe <jonas.rabbe@nokia.com>
12 years agoAdd the audio decoder variant of QMediaPlayer.
Michael Goddard [Mon, 6 Feb 2012 07:45:10 +0000 (17:45 +1000)]
Add the audio decoder variant of QMediaPlayer.

Rather than the probe based way of doing it.  Initially private.

Change-Id: I30005f8da22f6451cb9de8eb3f0e193838d48c93
Reviewed-by: Ling Hu <ling.hu@nokia.com>
Reviewed-by: Jonas Rabbe <jonas.rabbe@nokia.com>
12 years agoFixed possible dependency problem in the qmake structure
Jonas Rabbe [Wed, 8 Feb 2012 04:54:29 +0000 (14:54 +1000)]
Fixed possible dependency problem in the qmake structure

If gstreamer is present, then the gstreamer plugin (and
hence the plugins sub directory) should depend on the
gst tools library.

Change-Id: I6012df02d14731107fc0656089aa27ae61f0ef71
Reviewed-by: Dmytro Poplavskiy <dmytro.poplavskiy@nokia.com>
12 years agoRemove some more QTest::qWait(10) calls.
Michael Goddard [Wed, 8 Feb 2012 01:54:11 +0000 (11:54 +1000)]
Remove some more QTest::qWait(10) calls.

Since it seems to have changed slightly recently.  Just use
QTRY_COMPARE instead.

Change-Id: I802c2e26acf5418bb5904fadd2a978a44fd9eb01
Reviewed-by: Jonas Rabbe <jonas.rabbe@nokia.com>
12 years agoAdded loading of video node factories from plugins
Jonas Rabbe [Mon, 6 Feb 2012 00:55:59 +0000 (10:55 +1000)]
Added loading of video node factories from plugins

This change will allow us to add new video node factories that
can be loaded dynamically at runtime.

The previous video node factories, I420 and RGB have been kept
as static parts of the Qt Multimedia imports, but can be moved
to plugins at a later date.

For plugins to be able to find and use QSGVideoNode, the class
has to be exported.

Change-Id: Idbead9a8ad33619cebe90fcec92eb29cf52ae9bd
Reviewed-by: Michael Goddard <michael.goddard@nokia.com>
12 years agoAPI changes to QML element MediaPlayer aka Audio
Angus Cummings [Fri, 3 Feb 2012 01:49:47 +0000 (11:49 +1000)]
API changes to QML element MediaPlayer aka Audio

Changed Video.qml for new API
Removed lowercase enum copies, replaced with calling
parent (VideoOutput, MediaPlayer) enums
Removed properties playing, paused
Removed signals started, resumed
Added readonly property playbackState
Added signal playing
Added autoPlay property
Fixed unit tests for new API

Added backwards compatibility for QtMultimedia 4

Change-Id: I27c91cd46d91402b8c4c42bb7d4961ad67909aeb
Reviewed-by: Michael Goddard <michael.goddard@nokia.com>
Reviewed-by: Dmytro Poplavskiy <dmytro.poplavskiy@nokia.com>
12 years agoAdd exports for probe classes.
Michael Goddard [Tue, 7 Feb 2012 12:12:06 +0000 (22:12 +1000)]
Add exports for probe classes.

Oops.

Change-Id: I2273ac6789d2eb1042aa1d4b6ec64dac1904ce55
Reviewed-by: Michael Goddard <michael.goddard@nokia.com>
12 years agoUpdated declarative camera image processing with C++ API changes
Dmytro Poplavskiy [Tue, 7 Feb 2012 03:52:21 +0000 (13:52 +1000)]
Updated declarative camera image processing with C++ API changes

Changed ranges and meaning of image adjustments parameters.

Change-Id: I1710bfabc4f216c83df7983a871bffb474cfbcc2
Reviewed-by: Jonas Rabbe <jonas.rabbe@nokia.com>
Reviewed-by: Mithra Pattison <mithra.pattison@nokia.com>
Reviewed-by: Michael Goddard <michael.goddard@nokia.com>
12 years agoUpdated declarative camera recorder with C++ API changes.
Dmytro Poplavskiy [Tue, 7 Feb 2012 04:34:50 +0000 (14:34 +1000)]
Updated declarative camera recorder with C++ API changes.

Added key,value parameters to metadataChanged() signal;
Added a separate actualLocation property to desribe the path of
recorded file. It may be different from outputLocation when default
location is used.

Change-Id: I5a4b77833b6458a19ed7e1dcf7e53fc7400cdf21
Reviewed-by: Jonas Rabbe <jonas.rabbe@nokia.com>
Reviewed-by: Michael Goddard <michael.goddard@nokia.com>
12 years agoExpose capture request id in the declarative camera.
Dmytro Poplavskiy [Tue, 7 Feb 2012 02:52:11 +0000 (12:52 +1000)]
Expose capture request id in the declarative camera.

It's useful to associate imageCaptured/Saved signals data with
capture requests.

Change-Id: I3e98c4a194403bd338a1b5313d8736b4baf79961
Reviewed-by: Jonas Rabbe <jonas.rabbe@nokia.com>
12 years agoAdd some media probing API.
Michael Goddard [Fri, 27 Jan 2012 05:02:31 +0000 (15:02 +1000)]
Add some media probing API.

Change-Id: Ib83918f99b699ac3fbc7ede82a392d00d4c18005
Reviewed-by: Jonas Rabbe <jonas.rabbe@nokia.com>
12 years agotst_qmediaplayerbackend: try to load test file from the current dir.
Dmytro Poplavskiy [Tue, 7 Feb 2012 03:00:24 +0000 (13:00 +1000)]
tst_qmediaplayerbackend: try to load test file from the current dir.

This makes testing easier on other system than test was build.

Change-Id: I75c4d620c8132a7fd298fe735dfdc1bf6f775e08
Reviewed-by: Jonas Rabbe <jonas.rabbe@nokia.com>
12 years agoAdd a QAudioBuffer class.
Michael Goddard [Thu, 2 Feb 2012 05:28:21 +0000 (15:28 +1000)]
Add a QAudioBuffer class.

Prereq for probing or decoding.  The abstract API probably needs
to change.

Change-Id: Ie0bf796c1f581f34bbc0a8af2dffc387c513a330
Reviewed-by: Jonas Rabbe <jonas.rabbe@nokia.com>
12 years agoMoved QMediaServiceProvider to private header.
Dmytro Poplavskiy [Mon, 6 Feb 2012 06:43:53 +0000 (16:43 +1000)]
Moved QMediaServiceProvider to private header.

It's not intended to be used by applications.

Change-Id: I2acc26180ebb5c2419438169827f39aaf4578389
Reviewed-by: Michael Goddard <michael.goddard@nokia.com>
12 years agoChanges to QMediaPlayer GStreamer backend to allow setPosition before pause
Lev Zelenskiy [Mon, 6 Feb 2012 03:52:56 +0000 (13:52 +1000)]
Changes to QMediaPlayer GStreamer backend to allow setPosition before pause

Do not display prerolled frames in stopped state.
Instead store prerolled frame and display it only after switching to
pause or playback state.
Added new unit test with a sample video file to check this functionality.

Change-Id: I3fd159a199b65ca10fdf9843af5675c5ae9dad05
Reviewed-by: Michael Goddard <michael.goddard@nokia.com>
12 years agoGst player backend: fixed prerolled frames rendering
Lev Zelenskiy [Fri, 3 Feb 2012 03:01:38 +0000 (13:01 +1000)]
Gst player backend: fixed prerolled frames rendering

Don't use queued render request if it's called from
the object own thread.

Change-Id: I61ac11f5cf68edf82d0681c95123e804869d0647
Reviewed-by: Dmytro Poplavskiy <dmytro.poplavskiy@nokia.com>
12 years agoDocumentation tweaks.
Michael Goddard [Mon, 6 Feb 2012 05:49:54 +0000 (15:49 +1000)]
Documentation tweaks.

Mostly move widgets classes into the QtMultimediaWidgets module, but
also mark a few mostly internal playlist classes as \internal.  A few other
tweaks.

Change-Id: If0e376410bf2187cafb24f583108c6beb7b910a9
Reviewed-by: Dmytro Poplavskiy <dmytro.poplavskiy@nokia.com>
12 years agoQMediaPlayer::setPosition: do not check isSeekable and do not bound by duration
Lev Zelenskiy [Mon, 6 Feb 2012 03:11:10 +0000 (13:11 +1000)]
QMediaPlayer::setPosition: do not check isSeekable and do not bound by duration

To allow setPosition to be called in stopped state we no longer check
if the player is in seekable state and allow position to be greater than
duration.
Unit test has been updated accordingly.

Change-Id: I29447ffe797a7cc3dcc80d20b2527e9eda493ab6
Reviewed-by: Michael Goddard <michael.goddard@nokia.com>
Reviewed-by: Dmytro Poplavskiy <dmytro.poplavskiy@nokia.com>
12 years agoFix some warnings.
Michael Goddard [Mon, 6 Feb 2012 04:58:47 +0000 (14:58 +1000)]
Fix some warnings.

Change-Id: I2ea7f6f016d34490a41e4c9449cbc92bd040de49
Reviewed-by: Dmytro Poplavskiy <dmytro.poplavskiy@nokia.com>
12 years agoAdd AudioEngine with new implementation
Ling Hu [Wed, 18 Jan 2012 07:17:54 +0000 (17:17 +1000)]
Add AudioEngine with new implementation

Change-Id: I5eebe662ecbce9814ed3e763db56df9be737d11f
Reviewed-by: Michael Goddard <michael.goddard@nokia.com>
12 years agoChanged plugin loader to try unloading plugin if unused
Jonas Rabbe [Mon, 6 Feb 2012 00:49:21 +0000 (10:49 +1000)]
Changed plugin loader to try unloading plugin if unused

Deleting the root component can delete plugins already
used elsewhere in the application or library.

Change-Id: Ibd0afb61cf0e118eb13f9782252c1fec554ea901
Reviewed-by: Michael Goddard <michael.goddard@nokia.com>
12 years agoRemoved QFlags from declarative camera properties.
Dmytro Poplavskiy [Fri, 3 Feb 2012 06:30:59 +0000 (16:30 +1000)]
Removed QFlags from declarative camera properties.

It doesn't work, while even without QFlags
camera.captureMode = Camera.CaptureVideo + Camera.CaptureStillImage
works correctly.

Change-Id: I00727ad37cbf33e0c6d557a9da08160d6ea4bdc9
Reviewed-by: Michael Goddard <michael.goddard@nokia.com>
12 years agoAdded metaDataChanged(key,value) signal to metadata controls.
Dmytro Poplavskiy [Fri, 3 Feb 2012 04:23:56 +0000 (14:23 +1000)]
Added metaDataChanged(key,value) signal to metadata controls.

It may be more efficient and convenient for application to use this
signal instead of metaDataChanged().

metaDataChanged() signal is emitted for compatibility,
backends should emit both signals.

Signal added QMetadataReader/WritterControl,
QMediaObject and QMediaRecorder.

Change-Id: I5ca34a40e64b22034e6fde8cd7f9735cc3f72c68
Reviewed-by: Michael Goddard <michael.goddard@nokia.com>
12 years agoMade camera unit tests more stable
Dmytro Poplavskiy [Mon, 6 Feb 2012 04:12:57 +0000 (14:12 +1000)]
Made camera unit tests more stable

Replaced qWait() with QTRY_COMPARE()

Change-Id: I951bd8ca1eaaf8d0fd7308a90f82afcdb0475819
Reviewed-by: Michael Goddard <michael.goddard@nokia.com>
12 years agoRemove QMediaImageViewer (SC break).
Michael Goddard [Fri, 6 Jan 2012 04:29:20 +0000 (14:29 +1000)]
Remove QMediaImageViewer (SC break).

This class has turned out to be not very useful at this point in time.

Change-Id: Ic07132bdcd01a912a6dd1160c867979fd1307b6a
Reviewed-by: Jonas Rabbe <jonas.rabbe@nokia.com>
12 years agoFix up various doc issues.
Peter Yard [Wed, 1 Feb 2012 23:05:35 +0000 (09:05 +1000)]
Fix up various doc issues.

Change-Id: I43a8b1b982c4af093bd0bb14573f2299ae28ae94
Reviewed-by: Michael Goddard <michael.goddard@nokia.com>
12 years agoChanged QCameraFocus::focusMode type to QFlags based FocusModes
Dmytro Poplavskiy [Tue, 31 Jan 2012 04:04:53 +0000 (14:04 +1000)]
Changed QCameraFocus::focusMode type to QFlags based FocusModes

It was intended to be QFlags based from the start.

Change-Id: I0919b3440eb18e84fc596fb894f18a53e5ff1da0
Reviewed-by: Michael Goddard <michael.goddard@nokia.com>
12 years agoQCameraImageProcessingControl API fixes
Dmytro Poplavskiy [Wed, 25 Jan 2012 06:24:55 +0000 (16:24 +1000)]
QCameraImageProcessingControl API fixes

Moved white balance preset from the separate methods to
QCameraImageProcessingControl::ProcessingParameter;

Separated absolute contrast/saturation/sharpening/denoising
settings with adjustments to backend decided values,
with QCameraImageProcessing using adjustments versions.

Changed type of parameters from int to qreal
with [0..1] range for absolute values and [-1..1] for adjustments.

Change-Id: I85c8781c046be6dd45bcf626c25908e1ce5f6bcb
Reviewed-by: Jonas Rabbe <jonas.rabbe@nokia.com>
Reviewed-by: Michael Goddard <michael.goddard@nokia.com>
12 years agoAdd a file documenting what has changed from previous versions of MM.
Michael Goddard [Wed, 1 Feb 2012 06:06:34 +0000 (16:06 +1000)]
Add a file documenting what has changed from previous versions of MM.

Change-Id: Ia178ba9f159de29f358ad0a62789d8d73a55c0d1
Reviewed-by: Ling Hu <ling.hu@nokia.com>
12 years agoRename multimediaoverview.qdoc to multimedia.qdoc.
Michael Goddard [Wed, 1 Feb 2012 04:48:07 +0000 (14:48 +1000)]
Rename multimediaoverview.qdoc to multimedia.qdoc.

For more consistency across projects.

Change-Id: I686c8af01b0b7c574d3c680167ee6a98a0a4efad
Reviewed-by: Michael Goddard <michael.goddard@nokia.com>
12 years agoAdded QMediaRecorder::actualLocation property
Dmytro Poplavskiy [Tue, 31 Jan 2012 03:20:17 +0000 (13:20 +1000)]
Added QMediaRecorder::actualLocation property

To report the actual location file was written.

Change-Id: Ibb56a720a258a1e5cedceaf0f9bcea73fb93bc96
Reviewed-by: Michael Goddard <michael.goddard@nokia.com>
12 years agoAdded more encoding settings to declarative camera recorder.
Dmytro Poplavskiy [Tue, 31 Jan 2012 03:36:36 +0000 (13:36 +1000)]
Added more encoding settings to declarative camera recorder.

Change-Id: If2ec0297a2db5fedaf27c009fb8d55ccf4254c21
Reviewed-by: Ling Hu <ling.hu@nokia.com>
Reviewed-by: Michael Goddard <michael.goddard@nokia.com>
12 years agoSplit QMediaRecorder::setEncodingSettings to separate setters.
Dmytro Poplavskiy [Tue, 31 Jan 2012 00:08:49 +0000 (10:08 +1000)]
Split QMediaRecorder::setEncodingSettings to separate setters.

It's easier to change only the necessary part of encoding settings.
The settings are applied during the next event loop or before recording
starts.

Change-Id: Ia2b5c93826a302212aa7f79a0c75e4cbaaf1dd7a
Reviewed-by: Ling Hu <ling.hu@nokia.com>
Reviewed-by: Michael Goddard <michael.goddard@nokia.com>
12 years agoAdded antennaConnected property to QRadioTuner and radio qml element
Jonas Rabbe [Mon, 30 Jan 2012 03:53:30 +0000 (13:53 +1000)]
Added antennaConnected property to QRadioTuner and radio qml element

Change-Id: I5af8487277e0444629c710c6a0a4e890a8d35c6f
Reviewed-by: Dmytro Poplavskiy <dmytro.poplavskiy@nokia.com>
Reviewed-by: Michael Goddard <michael.goddard@nokia.com>
12 years agoRemove "All rights reserved" line from license headers.
Jason McDonald [Tue, 24 Jan 2012 04:22:21 +0000 (14:22 +1000)]
Remove "All rights reserved" line from license headers.

As in the past, to avoid rewriting various autotests that contain
line-number information, an extra blank line has been inserted at the
end of the license text to ensure that this commit does not change the
total number of lines in the license header.

Change-Id: I20e5215108c6ebd5f8474fed5c3665118e4791e6
Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
12 years agoMoved zoom related properties out of QCameraFocusControl
Dmytro Poplavskiy [Tue, 24 Jan 2012 00:56:52 +0000 (10:56 +1000)]
Moved zoom related properties out of QCameraFocusControl

Change-Id: I16f9b80ebbacc0b325530e81c291dc030763b65e
Reviewed-by: Michael Goddard <michael.goddard@nokia.com>
12 years agoAdd a viewfinder resolution control for camera.
Michael Goddard [Fri, 27 Jan 2012 04:10:35 +0000 (14:10 +1000)]
Add a viewfinder resolution control for camera.

For attempting to set the resolution.

Change-Id: I9f3b189b90fee95bf6430e9a74a6599ebcc38697
Reviewed-by: Dmytro Poplavskiy <dmytro.poplavskiy@nokia.com>
12 years agoFix some surface assignment errors.
Michael Goddard [Fri, 27 Jan 2012 02:38:35 +0000 (12:38 +1000)]
Fix some surface assignment errors.

On destruction and changing sources, make sure we don't clobber the
surface property if it's been changed.

Change-Id: I3080b98a547911543a391c8bc040792d260782fd
Reviewed-by: Dmytro Poplavskiy <dmytro.poplavskiy@nokia.com>
12 years agoAdd a rendered and content rectangle properties to VideoOutput QML.
Michael Goddard [Fri, 20 Jan 2012 05:51:22 +0000 (15:51 +1000)]
Add a rendered and content rectangle properties to VideoOutput QML.

So you can align controls with an edge of the rendered area.  There's
also some convenience functions for mapping source to and from
destination coordinates. Also tweaked the updateGeometry function to
bail out if no input parameters have changed, rather than doing some
more boring maths.

Added a unit test for a lot of the class, too.

Change-Id: I943bb45e4e56356247d5d6deb5d446222edcb7ca
Reviewed-by: Dmytro Poplavskiy <dmytro.poplavskiy@nokia.com>
12 years agoAdd a volume (gain) property to QAudioInput.
Michael Goddard [Wed, 25 Jan 2012 03:50:37 +0000 (13:50 +1000)]
Add a volume (gain) property to QAudioInput.

Only implemented for PulseAudio so far, but the API does explain that
it's optional.

Change-Id: I4543a1c81d810fe92bb08f1ed13f3a3534a371e4
Reviewed-by: Ling Hu <ling.hu@nokia.com>
12 years agoUpdate in line with recent QWindow API change
Alan Alpert [Wed, 25 Jan 2012 04:25:38 +0000 (14:25 +1000)]
Update in line with recent QWindow API change

Change-Id: Id495215c7861f05849ffbfd1a0e66af9990a1365
Reviewed-by: Michael Goddard <michael.goddard@nokia.com>
12 years agoQCameraExposure API refactoring
Dmytro Poplavskiy [Tue, 10 Jan 2012 03:32:24 +0000 (13:32 +1000)]
QCameraExposure API refactoring

QCameraExposureControl:
 Separated requested from actual exposure values.
 Removed ParameterFlags, it's confusing and seldom used.
 Moved ExposureMode and MeteringMode to parameters.

QCameraExposure:
 Added requestedAperture/ShutterSpeed/Iso getters

Change-Id: I408586d85e6c9de0c8a711c32b3c90ea46052270
Reviewed-by: Michael Goddard <michael.goddard@nokia.com>
12 years agoFix some static analysis defects.
Michael Goddard [Wed, 25 Jan 2012 01:44:55 +0000 (11:44 +1000)]
Fix some static analysis defects.

A few silly errors, a few unlikely errors, a few changes that should
not have resulted in a problem but makes the code clearer.

Change-Id: Id2c82e9317d53822e4da13c94dec9595ea33b07a
Reviewed-by: Ling Hu <ling.hu@nokia.com>
Reviewed-by: Dmytro Poplavskiy <dmytro.poplavskiy@nokia.com>
12 years agoAdd a feedback control for Camera.
Michael Goddard [Tue, 24 Jan 2012 06:58:04 +0000 (16:58 +1000)]
Add a feedback control for Camera.

To control capture sounds etc.

Change-Id: I4db63587be9c74f78c93081d9d46477e34f4a042
Reviewed-by: Dmytro Poplavskiy <dmytro.poplavskiy@nokia.com>
12 years agoFix header changes for wmf
Ling Hu [Tue, 24 Jan 2012 05:53:01 +0000 (15:53 +1000)]
Fix header changes for wmf

Change-Id: I9d06dd9a39f26851589b1c1f259db8de2ee992a0
Reviewed-by: Michael Goddard <michael.goddard@nokia.com>
12 years agoRemoved QMediaServiceProvider parameter from media objects constructors.
Dmytro Poplavskiy [Thu, 19 Jan 2012 00:01:02 +0000 (10:01 +1000)]
Removed QMediaServiceProvider parameter from media objects constructors.

QMediaServiceProvider should be removed from the public API,
to provide media objects with a custom media service.

A protected QMediaPlayer/QCamera/QRadioTuner/etc constructor
with QMediaService* parameter is a cleaner and more
flexible solution.

Change-Id: I335cce4bbebe0e548c3df338f206e7be7c93c3dd
Reviewed-by: Michael Goddard <michael.goddard@nokia.com>
Reviewed-by: Jonas Rabbe <jonas.rabbe@nokia.com>
12 years agoDisable wmf for now
Ling Hu [Tue, 24 Jan 2012 07:11:40 +0000 (17:11 +1000)]
Disable wmf for now

Change-Id: I4d28741a6546dfafc5c60c7ccdc34d814276b518
Reviewed-by: Michael Goddard <michael.goddard@nokia.com>
12 years agoDisabled CameraBin2 based camera backend.
Dmytro Poplavskiy [Mon, 23 Jan 2012 06:29:57 +0000 (16:29 +1000)]
Disabled CameraBin2 based camera backend.

It's not currently tested enough to be enabled.

Change-Id: I3c8eb7a81af982b6c98b733755d19c78f2f1c5ed
Reviewed-by: Michael Goddard <michael.goddard@nokia.com>
12 years agoImplement QAudioDeviceInfo operator==/!=
Michael Goddard [Mon, 23 Jan 2012 01:52:42 +0000 (11:52 +1000)]
Implement QAudioDeviceInfo operator==/!=

Compares some of the useful parts, but perhaps should be made more
tolerant.

Also refactored the auto test to properly skip if there are no
(output) devices, rather than manually skip.

Task-number: QTBUG-13723
Change-Id: I3b83f87a440a83f4237fa119a23009bc99e7626a
Reviewed-by: Jonas Rabbe <jonas.rabbe@nokia.com>
Reviewed-by: Dmytro Poplavskiy <dmytro.poplavskiy@nokia.com>
12 years agoRemoved camera simulator backend.
Dmytro Poplavskiy [Mon, 23 Jan 2012 06:18:36 +0000 (16:18 +1000)]
Removed camera simulator backend.

It's not used on any Qt5 platform.

Change-Id: Ia5a97523c84fe273a265355cc51a1cfa68701085
Reviewed-by: Michael Goddard <michael.goddard@nokia.com>
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>