Commit Graph

165 Commits

Author SHA1 Message Date
Yoann Lopes
101c78983a WMF: enabled HW-accelerated video decoding for the QML video item.
It also applies to QGraphicsVideoItem when used on a GL viewport.
We now have a new video sink that is based on Microsoft's EVR sink, we just
replace the default Presenter with our own. Frames are rendered into D3D
surfaces using DXVA, then copied into a shared D3D/EGL surface and finally
bound to a GL texture to be used by the video surface.
The shared D3D/EGL surface is a feature provided by ANGLE and therefore Qt
must be compiled with ANGLE for this new video sink to be compiled and
used.

Change-Id: I0b7b9968eed5488f9ef1a2dcca5213bd0af232ab
Reviewed-by: Yoann Lopes <yoann.lopes@digia.com>
2013-01-23 22:34:07 +01:00
Yoann Lopes
ae64113c2f Fixed QSGVideoNodes not deleting their materials.
Change-Id: Ia7597ade3066c23c54354e2cc36c907e6bf0dfea
Reviewed-by: Gunnar Sletta <gunnar.sletta@digia.com>
2013-01-15 17:38:23 +01:00
Venugopal Shivashankar
51334d2995 Doc: Fixed random QDoc warnings
- Fixed \snippet paths
- Minor language edits
- Removed unnecessary multiple page commands in a single comment
block. For example, \fn and \qmlsignal in a single comment block
is not allowed. Such instances must be documented in separate
comment blocks.

Change-Id: I65f4518499e2600c4e1807356d4116c575e48c19
Reviewed-by: Andy Nichols <andy.nichols@digia.com>
Reviewed-by: Jerome Pasion <jerome.pasion@digia.com>
2013-01-15 10:48:20 +01:00
Yoann Lopes
304fdbeeb1 Added seek() function to QML Video item and updated documentation.
The Video item inline example was wrong, changing read-only properties.

Task-number: QTBUG-28741

Change-Id: Ia1f6c1110a301a96743e7ebfec51731fcaf6a862
Reviewed-by: Martin Smith <martin.smith@digia.com>
Reviewed-by: Dmytro Poplavskiy <dmytro.poplavskiy@gmail.com>
2013-01-15 09:30:08 +01:00
Sergio Ahumada
399500f87e Update copyright year in Digia's license headers
Change-Id: Ia8c1c38aba1544603fada8c414cc856f365fd15b
Reviewed-by: Akseli Salovaara <akseli.salovaara@digia.com>
Reviewed-by: Sergio Ahumada <sergio.ahumada@digia.com>
2013-01-10 17:56:01 +01:00
Oleg Shparber
b64ca061fd Make QtMultimedia an identified module
Task-number: QTBUG-28376

Change-Id: I7b27dc52b3085eb50695e559029f2533aa743d4f
Reviewed-by: Jonas Rabbe <jonas.rabbe@gmail.com>
Reviewed-by: Andy Nichols <andy.nichols@digia.com>
2013-01-04 14:02:33 +01:00
Kai Koehne
db39db98cb Update plugins.qmltypes
Run with option nonrelocatable.

Change-Id: I689d5d745dac9325aeb5db81484054b0dcdb9d24
Reviewed-by: Jonas Rabbe <jonas.rabbe@gmail.com>
Reviewed-by: Fawzi Mohamed <fawzi.mohamed@digia.com>
2012-12-07 00:57:56 +01:00
Friedemann Kleint
6826f684e2 Fix compilation with -no-rtti.
Availability of dynamic_cast should be checked.

Task-number: QTBUG-27939
Change-Id: I24c0bca7859a45c6be89c507dadd91e7175939e0
Reviewed-by: Thomas McGuire <thomas.mcguire@kdab.com>
2012-11-19 13:53:23 +01:00
Thomas McGuire
80a6b173b3 Blackberry: Enable support for audioengine if available
BB10 ships OpenAL, so the audio engine works there.

Change-Id: I49ba6201788cb41cabb1670522dc97a36fd5f2c2
Reviewed-by: Kevin Ottens <kevin.ottens.qnx@kdab.com>
Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
2012-11-07 22:38:34 +01:00
Andras Becsi
7319c194cd Fix the bufferProgress property of QDeclarativeAudio
The bufferProgress property of QDeclarativeAudio is documented to hold
how much of the data buffer is currently filled, from 0.0 (empty) to
1.0 (full) and should be declared to be of type qreal instead of int.
The implementation was correctly normalizing the buffer status
percentage to the [0, 1] range but the returned value was truncated
to int in QML because of the faulty property declaration.

Change-Id: I494c9cd14f4b3ec511759ae66a50e9f96bcb1452
Reviewed-by: Zeno Albisser <zeno.albisser@digia.com>
2012-11-07 16:20:22 +01:00
Sze Howe Koh
832c3929f2 Rename namespace QtMultimedia -> QMultimedia
Main code, examples, tests and docs updated. Method:
1. Mass find+replace "QtMultimedia::" -> "QMultimedia::"
2. Hand-modified declaration in qtmedianamespace.h/cpp

For consistency (with minimal disruption), namespaces with a "Qt" prefix
will be renamed.

Part of the Header Consistency Project
(http://lists.qt-project.org/pipermail/development/2012-October/007570.html)

Change-Id: I1fbc43a1aa91d996aa61869fcd8d05186bf7cf6d
Reviewed-by: Lars Knoll <lars.knoll@digia.com>
Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>
2012-11-06 18:20:06 +01:00
Sze Howe Koh
00d7092163 Rename namespace QtMultimedia::MetaData -> QMediaMetaData
Main code, examples, tests and docs updated. Method:
1. Remove unused forward-declarations, "class QMediaMetaData"
2. Mass find+replace "QtMultimedia::MetaData" -> "QMediaMetaData"
3. Un-nest from the QtMultimedia namespace in qtmedianamespace.h

For consistency (with minimal disruption), namespaces with a "Qt" prefix
will be renamed. Also, Qt guidelines don't include nested namespaces
(http://lists.qt-project.org/pipermail/development/2012-October/006756.html)

Part of the Header Consistency Project
(http://lists.qt-project.org/pipermail/development/2012-October/007570.html)

Change-Id: I40e59c1cf58c1792725e735e9285c51bc5f226b1
Reviewed-by: Lars Knoll <lars.knoll@digia.com>
Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>
2012-11-06 18:19:57 +01:00
Friedemann Kleint
31d3de9a9c Fix the QML list interface
The QML list interface was changed, so that there is now a read only
constructor and the default properties are removed. This is because the
original interface was very runtime centric, like other parts in QML.
The new interface was changed for the needs of the QML designer and
debugger.

Task-number: QTBUG-9390

Change-Id: Ia61a2457432b4fc5c0cf440eeebd9d3a6c4c6463
Reviewed-by: Thomas Hartmann <Thomas.Hartmann@digia.com>
2012-10-24 10:53:07 +02:00
Friedemann Kleint
a410276d0d Compile after removal of compatibility code in QtQuick.
qtdeclarative: f21e9ba6efa2b1c8169491db271f79b87b5b0ce4
removed QQuickCanvas.

Change-Id: Ica8ae4d816d1ca08f08d299cec741837a1a77c50
Reviewed-by: Thomas McGuire <thomas.mcguire@kdab.com>
Reviewed-by: Kai Koehne <kai.koehne@digia.com>
2012-10-16 16:08:20 +02:00
Andy Nichols
bc7e9fe7c7 Fix issue sharing OpenGL context from render thread on OS X
On OS X when running in QtQuick 2 examples in debug mode we fail an
assert because we try to set a dynamic property using
QObject::setProperty from the render thread, while the object exists in
the main thread.  Now we call setProperty from the correct thread.

Change-Id: I3f26ead0f68fadcded472bf5c9014a4025f0a03e
Reviewed-by: Christian Stromme <christian.stromme@digia.com>
Reviewed-by: Jason Barron <jason.barron@digia.com>
2012-10-09 13:46:31 +02:00
Iikka Eklund
dcbbad869e Change copyrights from Nokia to Digia
Change copyrights and license headers from Nokia to Digia

Change-Id: Id77334cfb15de096941c88e32d04ca07b4eb4709
Reviewed-by: Janne Anttila <janne.anttila@digia.com>
Reviewed-by: Sergio Ahumada <sergio.ahumada@digia.com>
Reviewed-by: Lars Knoll <lars.knoll@digia.com>
2012-09-24 09:05:51 +02:00
Thiago Macieira
1450569eb1 Fix compilation after the qreal->float change in Math3D
QVector3D::length() returns float now, so this qBound call was running
into template substitution failure.

Change-Id: Ib03ab96bf18a4b04fa80a8f706761329faab2541
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@nokia.com>
2012-09-12 12:35:45 +02:00
Thomas McGuire
bce8b5486d Hide the video overlay when the QML element is hidden
An display invalid rect is used for invisible QML
items.

Change-Id: Ifb2a25f1c5387ab8cef1359ac6c3e2f90a42cd10
Reviewed-by: Dmytro Poplavskiy <dmytro.poplavskiy@gmail.com>
2012-09-06 14:56:34 +02:00
Venugopal Shivashankar
a4c23ac607 Doc: Added an index page and separated \qmlproperty and \property documentation
Change-Id: I29bcfd0a31c781deb4cce2d6bcb2afca32191ae6
Reviewed-by: Geir Vattekar <geir.vattekar@nokia.com>
Reviewed-by: Martin Smith <martin.smith@nokia.com>
2012-08-29 13:17:52 +02:00
Thiago Macieira
8e49af7ef5 Set the Qt API level to compatibility mode in all tests.
Qt 5.0 beta requires changing the default to the 5.0 API, disabling
the deprecated code. However, tests should test (and often do) the
compatibility API too, so turn it back on.

Task-number: QTBUG-25053
Change-Id: I9589f57998af237f2e89c7799789dae5a13ef634
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
2012-08-01 22:27:40 +02:00
Jerome Pasion
011e151c4e Doc: Changed \qmlclass to \qmltype and added \instantiates
-New qdoc command \qmltype replaces \qmlclass
-\instantiates <C++ class> for determining if the QML type has a C++
implementation

Change-Id: I83d1e2c3f376f96ea51afedadf88c3cf478e33d8
Reviewed-by: Martin Smith <martin.smith@nokia.com>
2012-07-27 14:56:32 +02:00
Venugopal Shivashankar
6ebee9f57e Fixed QDoc errors related to snippets and quotefromfile commands
Change-Id: I9dd6381eb95dcbd9aa5cc8f596d87cf55eee7427
Reviewed-by: Jerome Pasion <jerome.pasion@nokia.com>
2012-07-26 11:51:31 +02:00
Venugopal Shivashankar
79107a3899 Fixed the QDoc errors related to \qmlproperty usage
Change-Id: Ie4d5f8698fe8a1a774fd8f0bb127c20fc63a14e3
Reviewed-by: Jerome Pasion <jerome.pasion@nokia.com>
Reviewed-by: Michael Goddard <michael.goddard@nokia.com>
2012-07-24 07:58:20 +02:00
Dmytro Poplavskiy
6854f07257 Removed the playbackStateChanged signal from Video element
It conflicts with Video.playbackState property notifications

Change-Id: I47901547e9db6f2b71e25c05ca8ce24c402eb5a2
Reviewed-by: Michael Goddard <michael.goddard@nokia.com>
2012-07-19 09:08:48 +02:00
Toby Tomkins
b95f608612 Fix QQuickCanvas renames.
This is required because of name changes to QtDeclarative in the commit
feb996e3ab44e68082c97102556ea396f5df3f44.

Change-Id: Ia40b1ea1cf3b3cb5225b7678077b627b74c47132
Reviewed-by: Alan Alpert <alan.alpert@nokia.com>
2012-07-18 05:11:00 +02:00
Mithra Pattison
858baa7d90 Fix for broken QML multimedia import on windows
Changed qtmultimediaquicktools into a module so that it gets installed
to the bin directory. This allows the declarative_multimedia library
to locate it during the 'import multimedia' process.

Task-number: QTBUG-25984

Change-Id: I559469170bc713fb31633917bcbc210f862660cf
Reviewed-by: Michael Goddard <michael.goddard@nokia.com>
2012-07-16 08:40:43 +02:00
Ling Hu
0e846f36cb Fix a crash problem in AudioEngine due to class name change.
Change-Id: I18a831ffc692b5aa6de6e2626f0dc916eb57c8b7
Reviewed-by: Michael Goddard <michael.goddard@nokia.com>
2012-07-13 06:46:39 +02:00
Oswald Buddenhagen
d18eadc8ab use centralized qml plugin project handling
Change-Id: If9561a27d9b96d020e2ffcf2dcc6deedb4d89e4a
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com>
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
2012-07-11 23:48:23 +02:00
Mithra Pattison
53fdcca366 Delete obsolete class methods and update related code
Delete obsolete methods from QAudioFormat and QAudioDeviceInfo
and update code that relied on the obsolete methods.

Change-Id: I007e36375a45399b1d5a289341bc5d5a05dc68cc
Reviewed-by: Michael Goddard <michael.goddard@nokia.com>
2012-07-10 08:26:04 +02:00
Dmytro Poplavskiy
f9516c4c5b Fixed QML video playback on Mac
Use the same CIImage based video frames as with
QGraphicsVideoItem, but since CIImages can't be
rendered directly in Scene Graph,
the frame is rendered to FBO first.

Task-number: QT-5423
Change-Id: I16f7e6351578bae21f8642a8028538c441e1f544
Reviewed-by: Lev Zelenskiy <lev.zelenskiy@nokia.com>
Reviewed-by: Michael Goddard <michael.goddard@nokia.com>
2012-06-29 08:59:53 +02:00
Michael Goddard
b0809c027c Rename availabilityError to availability.
It's perhaps clearer in the usual case.

Change-Id: Id3cef82ac83f8c9b538b3315281664ce1c6a2b96
Reviewed-by: Ling Hu <ling.hu@nokia.com>
2012-06-29 02:47:41 +02:00
Michael Goddard
6f7867b5e9 Fix header path for audio engine on Mac.
There's a different prefix here.

Change-Id: Ifda82e19824801b1d903ab6ad40c97428fff236c
Reviewed-by: Dmytro Poplavskiy <dmytro.poplavskiy@nokia.com>
2012-06-27 09:12:48 +02:00
Oswald Buddenhagen
82ade38b11 switch to new-style configure tests
Change-Id: Ib56d0cb24065c1f990aee5d7f41bfedfe75332a1
Reviewed-by: Joerg Bornemann <joerg.bornemann@nokia.com>
2012-06-25 10:40:03 +02:00
Mithra Pattison
5705f70da1 Add default initialisation to various multimedia classes
Change-Id: I902de05984fdae152e2678e4cf2d401a0b670703
Reviewed-by: Jonas Rabbe <jonas.rabbe@gmail.com>
2012-06-25 06:39:11 +02:00
Toby Tomkins
6d301388e1 Fix namespace compilation.
Change-Id: Id8d71a48df20da16647834e8f9732012f26f928f
Reviewed-by: Michael Goddard <michael.goddard@nokia.com>
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
2012-06-25 06:39:04 +02:00
Michael Goddard
89898e4499 Add the QtBase/lib directory as a library path, not just frameworks.
This meant that any non-framework libraries there weren't found (like
the multimedia helper libraries).

Change-Id: Iacd99f82763d39fc47c779c9498dfd5e1cc0e743
Reviewed-by: Ling Hu <ling.hu@nokia.com>
2012-06-25 06:38:56 +02:00
Michael Goddard
6931cbb35a Fix a number of other qdoc issues.
* Several places needed the forward class declaration hack
* Missing/wrong minor version numbers on imports
* A few typos
* Any number of attempts to work around qdoc
* A few missing docs
* Tweaked soundeffect docs

Change-Id: I3c2ab998a11cbb0956712e0423e01fdb70f5bfff
Reviewed-by: Peter Yard <peter.yard@nokia.com>
Reviewed-by: Angus Cummings <angus.cummings@nokia.com>
Reviewed-by: Jonas Rabbe <jonas.rabbe@gmail.com>
2012-06-15 08:49:29 +02:00
Michael Goddard
c88abd0177 Replace a writable position() property with a seek() method.
Seeking is sometimes asynchronous, and more importantly nearly every
one using a slider for seeking ends up with a binding loop.

Change-Id: I45d92e19b0276c8b97c51c073754d1c9d3dc611e
Reviewed-by: Ling Hu <ling.hu@nokia.com>
2012-06-14 05:42:49 +02:00
Angus Cummings
940ef93c30 Updating brief layout of QML types
Change-Id: I1dcd7bf7427f25bb9e19cbe3c7e17808b0fc9708
Reviewed-by: Michael Goddard <michael.goddard@nokia.com>
Reviewed-by: Peter Yard <peter.yard@nokia.com>
2012-06-14 05:42:49 +02:00
Angus Cummings
80f37d2d80 Renaming StopppedState to StoppedState
Change-Id: Ib23e9795960f40b46c0b2441ec03e8b1812033e5
Reviewed-by: Michael Goddard <michael.goddard@nokia.com>
2012-06-13 05:53:47 +02:00
Michael Goddard
342b8b9be5 Remove the legacy QML API.
This means no version 4.0 (which was never released) and no
Qt.multimediakit alternative import.

Change-Id: Iaacf047b0d72381a4a8cd975e036135ed11ea383
Reviewed-by: Ling Hu <ling.hu@nokia.com>
2012-06-08 07:53:23 +02:00
Michael Goddard
f53788ae42 A number of documentation fixes.
* Remove references to private QMediaServiceProvider class and point
  new backend writers to irc/mailing lists
* Wrong or missing parameter names
* Fix a few links
* Correct a few property data types
* Various other things to keep qdoc happier

Change-Id: I5c8800d65c00f0783541afef35990bd3918acab7
Reviewed-by: Angus Cummings <angus.cummings@nokia.com>
Reviewed-by: Ling Hu <ling.hu@nokia.com>
Reviewed-by: Daniel Kovacic <daniel.kovacic@nokia.com>
2012-06-07 07:05:57 +02:00
Stephen Kelly
b93032a7df Use QPointer instead of QWeakPointer to track QObjects.
The latter is to be deprecated.

Change-Id: I01998be880feba0819a9bc51f9bec48fd4601789
Reviewed-by: Dmytro Poplavskiy <dmytro.poplavskiy@nokia.com>
2012-06-07 02:17:22 +02:00
Michael Goddard
aae2e2104b Call the base QQuickItem geometryChanged function in our override.
Otherwise you get strange errors like the width/height of a
VideoOutput element are 0.

Change-Id: Ib123112b513f5ed2f0ce24da6dbfe00e20551d74
Reviewed-by: Alan Alpert <alan.alpert@nokia.com>
2012-06-05 06:12:03 +02:00
Angus Cummings
e063610527 Fixing doc errors in MediaPlayer and CameraFlash
properties were not showing up for either type. There were
namespace errors in flash, and mediaplayer docs needed to
be copied from audio.

Change-Id: I53fa721ec9e0cfa1aee3586c7e3eb608b9a1b465
Reviewed-by: Jonas Rabbe <jonas.rabbe@gmail.com>
2012-06-01 06:35:41 +02:00
Dmytro Poplavskiy
f965f683d0 Added missing QDeclarativeCamera::CaptureViewfinder enum value
Change-Id: I75844e3a943a76649d1b51f0c845a4bf8b200a8e
Reviewed-by: Ling Hu <ling.hu@nokia.com>
2012-05-18 05:28:32 +02:00
Dmytro Poplavskiy
3b88e105f8 QML VideoOutput: don't keep video frames for more than necessary
The frame can be released as soon as it pushed to video node.

Change-Id: Ib2621cc2a001629e722bf15b6e1ca09323170870
Reviewed-by: Mithra Pattison <mithra.pattison@nokia.com>
Reviewed-by: Ling Hu <ling.hu@nokia.com>
2012-05-16 07:07:28 +02:00
Dmytro Poplavskiy
be6d80e57a Expose camera status to QML Camera element
It's exposed as Camera.cameraStatus property.

Change-Id: Id3b477266d3a666b7a2a61cd4579f0e3f873d3b8
Reviewed-by: Mithra Pattison <mithra.pattison@nokia.com>
Reviewed-by: Ling Hu <ling.hu@nokia.com>
2012-05-16 07:07:28 +02:00
Angus Cummings
9e6d03584a Minor doc fixes for QML
renaming QML element to QML type
removing some \fn tags that were making the docs not build
some rewording
some new signal docs

Change-Id: I9b350dad1780276959aef4105e53b91082a6083e
Reviewed-by: Dmytro Poplavskiy <dmytro.poplavskiy@nokia.com>
2012-05-16 05:21:25 +02:00
Dmytro Poplavskiy
08d45baac2 Fixed QML Camera errors reporting
Added missing connection to QCamera::error() signal
Added Camera.errorCode property

Change-Id: Ie0dd71d760b4b5b79b2aefaba97bc383ef2a9750
Reviewed-by: Ling Hu <ling.hu@nokia.com>
2012-05-14 08:37:41 +02:00