Commit Graph

176 Commits

Author SHA1 Message Date
Dmytro Poplavskiy
00d1e2f65e 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>
2012-02-07 05:01:24 +01:00
Dmytro Poplavskiy
ee39683e27 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>
2012-02-06 13:57:42 +01:00
Michael Goddard
c0fd63d143 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>
2012-02-06 07:45:05 +01:00
Ling Hu
809bbc35c6 Add AudioEngine with new implementation
Change-Id: I5eebe662ecbce9814ed3e763db56df9be737d11f
Reviewed-by: Michael Goddard <michael.goddard@nokia.com>
2012-02-06 05:35:28 +01:00
Dmytro Poplavskiy
0924cff7b3 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>
2012-02-06 05:35:15 +01:00
Dmytro Poplavskiy
d292f4a7d3 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>
2012-02-02 03:34:13 +01:00
Dmytro Poplavskiy
a26bf6c8b6 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>
2012-02-01 08:10:28 +01:00
Dmytro Poplavskiy
a22a0195f1 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>
2012-02-01 08:10:20 +01:00
Jonas Rabbe
9d3102efe2 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>
2012-01-30 21:32:18 +01:00
Jason McDonald
5e801e2793 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>
2012-01-30 07:08:05 +01:00
Michael Goddard
88431b2841 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>
2012-01-27 07:35:09 +01:00
Michael Goddard
bad94a5329 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>
2012-01-27 07:35:06 +01:00
Dmytro Poplavskiy
2db9b4b1c8 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>
2012-01-25 06:14:59 +01:00
Dmytro Poplavskiy
a78a95ccd4 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>
2012-01-24 09:11:07 +01:00
Jason McDonald
6390157fd7 Update obsolete contact address.
Replace Nokia contact email address with Qt Project website.

Change-Id: Ie8cd560b6d9a2c6e552b6be1ad8bc96c80a6535c
Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
2012-01-23 04:21:51 +01:00
Dmytro Poplavskiy
a465e37bd6 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>
2012-01-20 08:27:50 +01:00
Michael Goddard
48f714037e Document two VideoOutput properties.
Still needs polish.

Change-Id: Ida24f1ecd0c8a41e9fd6e34ed68cfe1ed8181c00
Reviewed-by: Dmytro Poplavskiy <dmytro.poplavskiy@nokia.com>
2012-01-20 07:21:48 +01:00
Dmytro Poplavskiy
8ff5b88b27 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>
2012-01-20 06:30:37 +01:00
Michael Goddard
f050d8fe2b 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>
2012-01-19 05:37:51 +01:00
Michael Goddard
8c74e5e7e7 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>
2012-01-19 01:16:55 +01:00
Jonas Rabbe
50f5987f36 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>
2012-01-17 07:52:59 +01:00
Jonas Rabbe
c4b9eb46dc 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>
2012-01-17 06:04:27 +01:00
Michael Goddard
b7fcfd4ea9 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>
2012-01-17 05:19:02 +01:00
Michael Goddard
508ca28196 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>
2012-01-17 01:57:58 +01:00
Dmytro Poplavskiy
53d71baed3 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>
2012-01-17 00:58:30 +01:00
Michael Goddard
a6268601c9 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>
2012-01-16 07:32:24 +01:00
Jonas Rabbe
96eceb5f0a Added overview documentation for the radio
Change-Id: I71b072512db51f23b0aed82545b504f9efc824d0
Reviewed-by: Dmytro Poplavskiy <dmytro.poplavskiy@nokia.com>
2012-01-12 07:40:49 +01:00
Jason McDonald
0dca769d5a 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>
2012-01-12 01:08:31 +01:00
Jonas Rabbe
3d88a055d0 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>
2012-01-11 04:11:48 +01:00
Jonas Rabbe
99b80809c7 Added documentation for the Radio and RadioData QML elements.
Change-Id: I60c98b23138664543a1738ae93043432f66c8ab8
Reviewed-by: Michael Goddard <michael.goddard@nokia.com>
2012-01-11 02:16:32 +01:00
Michael Goddard
6b67a11032 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>
2012-01-06 07:26:59 +01:00
Michael Goddard
c97f5f8c2e 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>
2012-01-06 05:26:01 +01:00
Jason McDonald
bc7d964a05 Update copyright year in license headers.
Change-Id: Ib82c1be5548443ef1f5e97b3d5641a2f55d212af
Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
2012-01-06 01:43:40 +01:00
Friedemann Kleint
3910efbda6 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>
2012-01-05 08:18:37 +01:00
Mithra Pattison
c13a13c486 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>
2011-12-29 04:54:38 +01:00
Angus Cummings
b094a91c9d Added Video.qml to QtMultimedia, Video component
Change-Id: I0f5707a7cae931988aaddced23ad157105d0643b
Reviewed-by: Michael Goddard <michael.goddard@nokia.com>
2011-12-23 08:10:51 +01:00
Michael Goddard
9d526fca67 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>
2011-12-09 07:06:19 +01:00
Dmytro Poplavskiy
47ef58967b Registered CameraFlash qml type
Change-Id: I0d05006dcfd690b2246bc0ccfea468168b207333
Reviewed-by: Michael Goddard <michael.goddard@nokia.com>
2011-12-08 21:27:06 +01:00
Friedemann Kleint
a5d2b2ed60 QtMultimedia: Fix warnings about declarative/quick.
Change-Id: Ic9323b222641e41dae05cb4b0dccb6531e845676
Reviewed-by: Kent Hansen <kent.hansen@nokia.com>
2011-12-05 14:44:19 +01:00
Dmytro Poplavskiy
0034b177e2 Implemented QDeclarativeCameraCapture::setMetadata
QMetaDataWriterControl is used if it's available.

Change-Id: I18fd36c411b6d3c397ff22ebfea9b2c0e878cdeb
Reviewed-by: Ling Hu <ling.hu@nokia.com>
2011-12-01 05:41:29 +01:00
Michael Goddard
be7cc17cbf 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>
2011-11-25 08:30:55 +01:00
Dmytro Poplavskiy
b05819f939 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>
2011-11-24 06:41:47 +01:00
Dmytro Poplavskiy
290523bc4c 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>
2011-11-22 05:27:48 +01:00
Toby Tomkins
cc61a0a8c7 Fixed qtmultimedia imports -qtnamespace issues.
Change-Id: Ie7896faf92b3cc5fdf2b6dbe885913c2669e6e36
Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
2011-11-21 08:52:42 +01:00
Dmytro Poplavskiy
434075645a 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>
2011-11-15 02:28:02 +01:00
Michael Goddard
9eeb1389f5 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>
2011-11-08 08:06:50 +01:00
Kent Hansen
711f49efea Adapt to QtDeclarative api renaming (QSG --> QQuick)
Change-Id: Iefee24c6262679263caef1976d0d9af541834ea0
Reviewed-by: Michael Goddard <michael.goddard@nokia.com>
2011-10-24 05:59:53 +02:00
Sami Nurmenniemi
6aea1a22ee Added RDS functionality to the QRadioTuner/QDeclarativeRadio
Change-Id: I865e3caba82977002cf1f01f1d64ee0a42de77c6
Reviewed-by: Jonas Rabbe <jonas.rabbe@nokia.com>
Reviewed-by: Michael Goddard <michael.goddard@nokia.com>
2011-10-21 03:40:14 +02:00
Ling Hu
9011296e65 Init mediaobject at classBegin rather than componentComplete
Since we use an explicit backgroundaudio class,
there is no need to wait for other property to determine
the mediaobject type. So it is better to init the mediaobject
at classBegin to prevent being accessed before mediaobject initialized.

Change-Id: Ia55b8b4c1ab70cc0acbf6f49bcb3e20bdb813a88
Reviewed-by: Michael Goddard <michael.goddard@nokia.com>
Reviewed-by: Jonas Rabbe <jonas.rabbe@nokia.com>
Reviewed-by: Dmytro Poplavskiy <dmytro.poplavskiy@nokia.com>
2011-10-17 06:02:10 +02:00
Michael Goddard
d414247afe Make the C++ API of QSoundEffect public.
The QML API already was.  The C++ API still needs good documentation,
though.

Change-Id: I669f5ec7dd17d616788d71d77dc906acc0c0279f
Reviewed-by: Jonas Rabbe <jonas.rabbe@nokia.com>
Reviewed-by: Ling Hu <ling.hu@nokia.com>
2011-10-17 05:10:21 +02:00