Commit Graph

1025 Commits

Author SHA1 Message Date
Yoann Lopes
c74b544610 DirectShow: avoid unnecessary RGB32 -> BGR32 conversion.
Frames in the RGB32 format are actually using the BGR byte order, no need
to do the conversion.

Task-number: QTBUG-29206
Change-Id: I13527bd9dacc8330df78beb0965b31469c1d7a87
Reviewed-by: Yoann Lopes <yoann.lopes@digia.com>
2013-07-19 14:43:26 +02:00
Yoann Lopes
d8e56bc4b8 DirectShow: Don't create the widget and renderer controls until requested.
Task-number: QTBUG-32282
Change-Id: If37ed4c35bcc2cc879f50d3b2ea3720b90603e9a
Reviewed-by: Yoann Lopes <yoann.lopes@digia.com>
2013-07-19 12:35:20 +02:00
Yoann Lopes
d599f7319a WMF: fixed MediaPlayer buffering logic.
To have a consistent behavior with other backends, the WMF plugin now
starts the session after loading a media in order to start buffering some
data and correctly notify when the media is buffered.
It was previously reporting a BufferedMedia status only (and wrongly)
after explicitly starting the media player.

Not all source readers (usually a source reader is specific to a file
format) implement the service needed to query buffering progress. In that
case just report the media to be buffered immediately after loading.

Change-Id: I6e6332ae08e96fc789556761e5169b88c36c5e37
Reviewed-by: Christian Stromme <christian.stromme@digia.com>
2013-07-19 09:42:42 +02:00
Yoann Lopes
680c9cab91 OpenSL ES audio plugin.
Adds support for QAudioOutput, QAudioInput and QAudioDeviceInfo using
OpenSL ES 1.0.1. This plugin is used on Android.

Change-Id: Idf2c22a861e067196f6c5139e51393b086f64183
Reviewed-by: Christian Stromme <christian.stromme@digia.com>
2013-07-19 09:42:19 +02:00
Frederik Gladhorn
0a05ae5446 Merge remote-tracking branch 'origin/stable' into dev
Change-Id: Ia2cf3c55e57d7ac17f02965915fa6933ff2c8cce
2013-07-11 23:26:39 +02:00
Yoann Lopes
e15a2b92b6 Android: removed unnecessary init class for QtMultimedia.jar
Change-Id: Ib13597389a3896da8b619993d197623e7c74a7e0
Reviewed-by: Christian Stromme <christian.stromme@digia.com>
2013-07-09 14:47:01 +02:00
Christian Strømme
6c941c6c2b Android: Make it possible for MediaPlayer to read from assets.
The Android MediaPlayer doesn't handle assets automatically, so we need to
open it and pass it in as a file descriptor.

Task-number: QTBUG-31422
Change-Id: Ic29c0ab6348d760cf21aa89ae423d41e15523976
Reviewed-by: Yoann Lopes <yoann.lopes@digia.com>
2013-07-09 14:46:49 +02:00
Yoann Lopes
5e7e8e04d1 Android: wait to have a valid video surface before loading a media.
Setting the video surface on the Android media player after it has
loaded the media doesn't work on some hardware.

Change-Id: I5e621a34ace9de458bfc65bfac8fa50c29cee9a5
Reviewed-by: Christian Stromme <christian.stromme@digia.com>
2013-07-09 09:41:32 +02:00
Yoann Lopes
1dfbe44d90 Android: release the Android media player before destroying it.
Change-Id: I18715efd7ff346a9f6f2214727ec66ee79ad0d33
Reviewed-by: Christian Stromme <christian.stromme@digia.com>
2013-07-09 09:41:17 +02:00
tommyadam
1eb77d3782 Fix resource leak in directshow plugin.
Add two missing release calls to free file handles.

Task-number: QTBUG-23822
Change-Id: I8f5b6d0dcf9ad66bdaa2f378c0d3e401388d7add
Reviewed-by: Wouter Huysentruit <wouter.huysentruit@dzine.be>
Reviewed-by: Yoann Lopes <yoann.lopes@digia.com>
2013-07-04 15:49:35 +02:00
Frederik Gladhorn
0a3f1aacd3 Merge remote-tracking branch 'origin/stable' into dev
Change-Id: I48a140d1bbe82ab65e54683d77aea8c97c06ec80
2013-06-27 13:00:02 +02:00
Jerome Pasion
6d40540fce Doc: Setting navigation variables for Multimedia and Multimedia Widgets
-for navigation bar

Change-Id: I2d60e0145952c99afb6b103d0188ce846c192634
Reviewed-by: Yoann Lopes <yoann.lopes@digia.com>
Reviewed-by: Martin Smith <martin.smith@digia.com>
2013-06-26 11:34:57 +02:00
Frederik Gladhorn
18a8381ab3 Merge remote-tracking branch 'origin/release' into stable
Change-Id: I9ad818eecef74983e09660871f39ee66a6b666a1
2013-06-25 23:27:28 +02:00
Yoann Lopes
f424e8249b Use correct default audio output and input devices on Windows.
It was returning the first available device as the default, which might
not be the actual default device. Use the WAVE_MAPPER device ID instead
that tells Windows to use the most appropriate device.

Change-Id: Id1e9324e889bbaaab54bc0e0da810a7ce5fcb592
Reviewed-by: Andy Nichols <andy.nichols@digia.com>
2013-06-25 14:05:15 +02:00
Sergio Ahumada
1c0cfdf408 Add changes-5.1.0 file
Change-Id: I01369d608876e69da57839165283ed343b683e88
Reviewed-by: Iikka Eklund <iikka.eklund@digia.com>
Reviewed-by: Yoann Lopes <yoann.lopes@digia.com>
2013-06-21 12:53:29 +02:00
Yoann Lopes
e25db62a59 Multimedia plugins now have a unique JSON metadata 'Keys' property.
They previously had the multimedia services they provided as keys. This
was a problem when several plugins were available on the same platform,
providing the same multimedia service, but with different features or
capabilities. Since they had the same key, only the first plugin in the
directory was loaded.

Nevertheless, it was actually working until commit 732dcfe7 in qtbase,
as all plugins were loaded even when sharing the same key.

The services a multimedia plugin provides are now declared in the
'Services' property. To preserve compatibility with third-party plugins,
if that new property doesn't exist it falls back to the 'Keys' property.

Task-number: QTBUG-31868
Task-number: QTBUG-31476
Change-Id: Ic3ba32eeef21b69b922bd3d4feb111101559d132
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
Reviewed-by: Lars Knoll <lars.knoll@digia.com>
2013-06-21 12:07:00 +02:00
Frederik Gladhorn
7a688806f6 Merge remote-tracking branch 'origin/stable' into dev
Change-Id: Iaadfcd68fec91611b6341860e41a70b9023719de
2013-06-20 16:29:21 +02:00
Frederik Gladhorn
17053a450b Merge remote-tracking branch 'origin/release' into stable
Change-Id: I0361cbb4f5398bb13e675c3de04519c414daea43
2013-06-20 16:23:34 +02:00
Christian Strømme
16a775d47a Android: Fix for uncaught java exception.
If an exception's getMessage() function returns a null object, we can't
send it directly to the Log function, as it will throw an exception...
To avoid this we can prepend the string from getMessage() with an empty
string.

Change-Id: Ie026cbf9af133352919a4536c152b6d35cb8c0a7
Reviewed-by: Paul Olav Tvete <paul.tvete@digia.com>
Reviewed-by: Yoann Lopes <yoann.lopes@digia.com>
2013-06-13 17:56:04 +02:00
Sze Howe Koh
09fea23419 Doc: Fix some broken links and quote paths
The correct paths are relative to:
- <reporoot>/examples/<module>, or
- <reporoot>/src/<module>

Removing the module specifier fixes these links/quotes.

Change-Id: I6be4f28c44bd26361b60a394158b0e6cc46b1ec0
Reviewed-by: Laszlo Papp <lpapp@kde.org>
Reviewed-by: Yoann Lopes <yoann.lopes@digia.com>
Reviewed-by: Jerome Pasion <jerome.pasion@digia.com>
2013-06-13 16:43:33 +02:00
Christian Strømme
ccc4138304 Fix for url bug in the qmlvideo examples.
In the FileBrowser paths where being prepended with file:///, since all
the paths already starts with a forward slash, navigating away from the
initial directory was therefore not possible.

To make the examples work on Android, QT += multimedia was added.

Change-Id: Iff96729d476c4292999b022bdd6d5770b6b011e7
Reviewed-by: Paul Olav Tvete <paul.tvete@digia.com>
Reviewed-by: Andy Nichols <andy.nichols@digia.com>
2013-06-13 14:15:36 +02:00
Frederik Gladhorn
d07aa35bc8 Merge remote-tracking branch 'origin/release' into stable
Change-Id: Ic82ed2ba60d9855f1490d4ca66451dbc42ae6e2f
2013-06-12 14:45:09 +02:00
Bernd Weimer
1410fda0ff Purged ALSA implementation
Avoided potential memory leak and null pointer access, removed unused
variables, reduced redundant code, etc.

Change-Id: Ia0ddf56a7a1a0f142f2edb070c2c0b32cbf76ce7
Reviewed-by: Andy Nichols <andy.nichols@digia.com>
2013-06-11 13:39:46 +02:00
Tasuku Suzuki
593e1b99f1 disable module when gui is not available
Change-Id: I414b67d8c4fe34a41e1d96d51879138c01c6e3a5
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
2013-06-10 17:29:37 +02:00
Tobias Koenig
056fe7e11e BlackBerry: Fix frame size of video playback
Adapt the frame size dynamically, since mmrenderer resizes
the source viewport of the native video window at runtime on
some hardware platforms.

Task-number: QTBUG-31534
Change-Id: Ie637d7a80697175dacb454535fbe251b2c7a6809
Reviewed-by: Thomas McGuire <thomas.mcguire@kdab.com>
2013-06-05 10:26:53 +02:00
Frederik Gladhorn
9785766067 Merge remote-tracking branch 'origin/stable' into dev
Conflicts:
	.qmake.conf
	sync.profile

Change-Id: I62a3095e4a4d507de199fac32b64e9e76323bbf4
2013-06-04 19:50:11 +02:00
Topi Reinio
fca12620b1 Doc: Add Qt Multimedia platform notes for Windows
Add a page with details about Qt Multimedia backends on Windows, and
link to it from the module index page.

Initially, cover the status of camera backend in WMF and DirectShow
plugins.

Task-number: QTBUG-29552
Change-Id: I53e5901e2d621c4bbc96a61d5dbb249b4debb8d4
Reviewed-by: Yoann Lopes <yoann.lopes@digia.com>
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
2013-06-04 11:23:10 +02:00
Jerome Pasion
2998a24d35 Doc: Adding import statement for in Qt Multimedia QML Types
Change-Id: I17e108c5d8524fe428ab8f0ca14130cd4bb78d2d
Reviewed-by: Liang Qi <liang.qi@digia.com>
Reviewed-by: Venugopal Shivashankar <venugopal.shivashankar@digia.com>
Reviewed-by: Martin Smith <martin.smith@digia.com>
2013-06-03 14:54:36 +02:00
Mitch Curtis
9d5a639ee8 Fix typo in QMediaPlayer docs.
Change-Id: I0b9110488a2d116cea73abe30f80fc1f487029aa
Reviewed-by: Jerome Pasion <jerome.pasion@digia.com>
2013-05-31 15:22:20 +02:00
Sergio Ahumada
3d45b9147e Bump MODULE_VERSION to 5.1.1
Change-Id: Id8ce3bd0f245e25930506cdaf8d9a7a23bed2cc1
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
2013-05-29 20:39:21 +02:00
Eskil Abrahamsen Blomfeldt
3196d3869e Android: Fix compilation on Windows
The qtCompileTest function in configure.prf does not work when
cross-compiling on Windows because it detects the wrong make executable.
And it's anyway not the best way to do this, since what we really want
to check for is the existence of the SDK version, whereas the compile
test could potentially hide a lot of other problems under the same
error message.

Task-number: QTBUG-31405
Change-Id: I2c16b214e40bac5751d4e7098edcc30318756621
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
Reviewed-by: Paul Olav Tvete <paul.tvete@digia.com>
Reviewed-by: Christian Stromme <christian.stromme@digia.com>
2013-05-28 21:53:31 +02:00
Liang Qi
0f94c42683 Update all plugins.qmltypes files
Task-number: QTBUG-31388
Change-Id: Ia65490a262417f98fe69a89637ec2f9e7c0d0095
Reviewed-by: Shawn Rutledge <shawn.rutledge@digia.com>
Reviewed-by: Yoann Lopes <yoann.lopes@digia.com>
2013-05-27 19:40:33 +02:00
Friedemann Kleint
5c5d19e874 WMF-plugin: Fix warnings about unused variables.
Change-Id: I2b7864463799b23418fc4c3099d73a63709fe8c5
Reviewed-by: Yoann Lopes <yoann.lopes@digia.com>
2013-05-27 16:11:29 +02:00
Liang Qi
dbdd1946a0 Update qmldir file for QtAudioEngine
Change-Id: I2fe64c72520a7b2b6b1d79bbddfdeb7d0bf4f977
Reviewed-by: Yoann Lopes <yoann.lopes@digia.com>
2013-05-27 14:27:32 +02:00
Sergio Ahumada
19edbfc565 sync.profile: Point dependencies to an empty string
This means that we are going to use the same branch name for the
dependencies as the branch of the repository under test.

If we are testing the 'stable' branch, all dependencies will point
to the 'stable' branch as well.

Change-Id: I8f899a9a9fb9e94b99a9250eb5eb2dbe2eed8fc5
Reviewed-by: Iikka Eklund <iikka.eklund@digia.com>
2013-05-26 06:04:57 +02:00
Jerome Pasion
23e51e0928 Doc: Removed multimedia overview from "technology-apis" group.
The group in qtdoc was removed.

Change-Id: Ifa8b67421f4eb7b117ee947b186c85bfdd5a8c5d
Reviewed-by: Geir Vattekar <geir.vattekar@digia.com>
2013-05-24 13:28:31 +02:00
Frederik Gladhorn
0ef52f0102 Merge remote-tracking branch 'origin/stable' into dev
Change-Id: I24ffb71c4cc2e262394797deb8a22b2cf9a80c3c
2013-05-23 13:15:45 +02:00
Christian Strømme
94652ea6dd Android: add libQt5MultimediaQuick_p to the list of dependencies.
libQt5MultimediaQuick_p is first loaded as a result of a qml import, and
is therefore not detected as a dependency.
Note that libQt5MultimediaQuick_p will only be added as a dependency if
QtQuick is used.

Task-number: QTBUG-30861
Change-Id: I8ce818ef1648302bbbbdf63ef133185a66b66cca
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@digia.com>
2013-05-23 11:56:37 +02:00
Yoann Lopes
5c087bb615 Android: fixed crash when resetting the video surface.
Change-Id: I64a28cbcb8a48d13a9e1c98005da9f4cce821cb4
Reviewed-by: Christian Stromme <christian.stromme@digia.com>
2013-05-22 12:56:07 +02:00
Yoann Lopes
853fc50347 Fixed signal not being emitted in QDeclarativeCameraFocus.
Change-Id: If504ec5ecc59c46edeac24442181eedaacc7e5d8
Reviewed-by: Christian Stromme <christian.stromme@digia.com>
2013-05-17 17:39:09 +02:00
Friedemann Kleint
b604d96ba8 Make directshow-plugin available.
No longer include <qedit.h> in directshow-plugin,
which no longer ships in newer SDKs.

Ensure it only provides the camera service if the
WMF-plugin is built by using a different .json-file.

Adapt qcamerabackend-test to use widgets.

Task-number: QTBUG-28047

Change-Id: I22ea441b9edb56ff55bc275dba37c01c77d8dd90
Reviewed-by: Yoann Lopes <yoann.lopes@digia.com>
2013-05-15 12:43:08 +02:00
Sze Howe Koh
f4348fe3ae Decouple qmediametadata.h from qmultimedia.h
qmultimedia.h is included in more places, but qmediametadata.h is
larger. This patch should reduce unnecessary #include-ing.

Change-Id: I4a3d174bafc555d794bb75087c1f6b79745ae903
Reviewed-by: Yoann Lopes <yoann.lopes@digia.com>
2013-05-14 11:27:05 +02:00
David Fries
46bf67b7dc qmlvideo example, add missing #ifdef PERFORMANCEMONITOR_SUPPORT
This usage of PerformanceMonitor needs to be protected by the same
preprocessor check as the header include that makes it available.

Change-Id: Ie8a1b6e99a61c333ceedcf2e9751235fc2efb415
Reviewed-by: Martin Smith <martin.smith@digia.com>
2013-05-08 06:58:45 +02:00
Thomas McGuire
0d9526b5c9 VideoOutput: Take the surface's viewport into account
Task-Number: QTBUG-30410

Change-Id: I480ce0bcd7ec136e54b5bfc5fec0e901141b72d8
Reviewed-by: Josh Faust <jfaust@suitabletech.com>
Reviewed-by: Yoann Lopes <yoann.lopes@digia.com>
2013-05-07 15:02:15 +02:00
Masaya TAKAHASHI
2eac932747 Doc: Fix missing element name in Video
Change-Id: I2237bf4a1da632f0528cfb9e6b32ea88f3930350
Reviewed-by: Jerome Pasion <jerome.pasion@digia.com>
Reviewed-by: Yoann Lopes <yoann.lopes@digia.com>
2013-05-06 13:18:23 +02:00
Topi Reinio
07f20b8afe Doc: Define example install paths in .qdocconf
QDoc needs to know the directory under which the examples are
installed in QT_INSTALL_EXAMPLES. Without them, example manifest files
may contain invalid paths.

Change-Id: I3d27517e41e3b1deb7643ca1a40f3905c0e5cc1a
Reviewed-by: Martin Smith <martin.smith@digia.com>
2013-05-03 23:16:07 +02:00
Eskil Abrahamsen Blomfeldt
8e202bcad1 Make it possible to bundle Android builds
We need to adapt to the way the jar builds are split on Android,
into a jar file which can be bundled and one which can be distributed
and loaded on the classpath.

We also need to add meta-information about which plugins the
module depends on so that they can be bundled as well.

Task-number: QTBUG-30751
Change-Id: I5cca51c3732ce72985df29672a219c3fd4fe7bac
Reviewed-by: Christian Stromme <christian.stromme@digia.com>
2013-05-03 14:46:15 +02:00
Fawzi Mohamed
5fa32ce4d0 audioengine: update qmltypes
Change-Id: I13488291f543748716891cfa0ab9b5dd548ccc86
Reviewed-by: Thomas Hartmann <Thomas.Hartmann@digia.com>
2013-04-30 15:22:05 +02:00
Topi Reinio
c34910a22f Doc: Fix example paths referred in documentation
qdocconf files for both Qt Multimedia and Qt Multimedia Widgets already
define the correct example path. This change fixes also the example
documentation to use the correct path, as well as the link to examples
in Multimedia Overview.

Change-Id: I72d75027ee18f6398eb76dc40bcc3d122541b1c9
Reviewed-by: Venugopal Shivashankar <venugopal.shivashankar@digia.com>
Reviewed-by: Jerome Pasion <jerome.pasion@digia.com>
2013-04-30 08:59:32 +02:00
Christian Strømme
ffb26b07c8 Android: Added config tests for multimedia on android.
The Android multimedia plug-in requires API level 11 to compile, so the
config test will check and issue a message about the requirement if the
API level can't be satisfied.

Change-Id: I6c21fe1255024e853023bd8168dfa917b00c4c23
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
2013-04-29 18:03:17 +02:00