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>
It was intended to be QFlags based from the start.
Change-Id: I0919b3440eb18e84fc596fb894f18a53e5ff1da0
Reviewed-by: Michael Goddard <michael.goddard@nokia.com>
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>
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>
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>
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>
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>
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>
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>
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>
Since it seems it was never implemented, don't keep the
legacy spelling.
Change-Id: Idc918548a4ed643ba7da35e97ce08f401e74303f
Reviewed-by: Jonas Rabbe <jonas.rabbe@nokia.com>
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>
* 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>
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>
They aren't useful in the case of QtMultimedia{Kit}
Change-Id: If1b0b6625763c85907fb05beb9c440046472ddef
Reviewed-by: Jonas Rabbe <jonas.rabbe@nokia.com>
Update headers from before 2011 that were missed in the previous commit.
Change-Id: Ib0fd91a39ffc57117fe01280e34519c3f914fac0
Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
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>
Not yet fully documented in QML - needs a bit of an overhaul first.
Change-Id: Ic11684858fb872d0b4dcedf60b390571371db252
Reviewed-by: Dmytro Poplavskiy <dmytro.poplavskiy@nokia.com>
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>
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>
Since I get build failures due to other changes in lower modules.
Change-Id: Iac6a814071c019de25db52daf941185337fad14a
Reviewed-by: Michael Goddard <michael.goddard@nokia.com>
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>
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>
It's necessary to release video frames during media pipeline shutdown
or reconfiguration.
Change-Id: I386ad4d173b8731f257ec9272ef8c46a27769bd0
Reviewed-by: Michael Goddard <michael.goddard@nokia.com>
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>
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>
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>
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>