Commit Graph

338 Commits

Author SHA1 Message Date
Andrew den Exter
4d3f740795 Allow the camerabin source selection to be overridden.
Prefer the default camera-source element if there is one or an element
identified by an environment variable to a static list of possible
elements which may not be appropriate for the target environment.

Change-Id: I53816c949307953780f9046eb11e09effe059be0
Reviewed-by: John Brooks <john.brooks@dereferenced.net>
Reviewed-by: Andy Nichols <andy.nichols@digia.com>
Reviewed-by: Yoann Lopes <yoann.lopes@digia.com>
2014-01-13 06:05:05 +01:00
Jeff Tranter
a0d39a2ab6 Fix some typos in documentation.
Fix some spelling and grammatical errors in comments that show up in Qt documentation. No changes to code.

Change-Id: Ieb7be17bd1d50751f00620f7ac28d09355856ac0
Reviewed-by: Yoann Lopes <yoann.lopes@digia.com>
Reviewed-by: Sze Howe Koh <szehowe.koh@gmail.com>
2014-01-07 13:22:07 +01:00
Yoann Lopes
34f253e19d PulseAudio: fix crash when failing to create a context.
Don't try to call a function on a null PulseAudio context.
If pa_context_new() fails, we now try again to connect to the pulse
audio daemon later.

Task-number: QTBUG-35456
Change-Id: I0b848d3f25f57651ab31b9eca7ceb1bc9df2f682
Reviewed-by: Christian Stromme <christian.stromme@digia.com>
2014-01-06 15:45:48 +01:00
Mitch Curtis
02245571bf Correct QSoundEffect::supportedMimeTypes() documentation.
Change-Id: I154b124949ee4f07ea413d8cdb419fcc08cb8324
Reviewed-by: Topi Reiniö <topi.reinio@digia.com>
2014-01-02 11:35:59 +01:00
Yoann Lopes
51b7864bb8 Android: automatically deploy playlist plugins.
Include the playlistformats directory for automatic plugin deployment.

Change-Id: Ie61a4b1c1637a493e1bdb7354b33060728ccabda
Reviewed-by: Christian Stromme <christian.stromme@digia.com>
2013-12-10 18:16:41 +01:00
Yoann Lopes
9ceb1c083e Use the backend to notify the QCamera state changes.
We were emitting the stateChanged() signal no matter what was actually
done by the backend. QCamera now emits this signal only if the backend
actually changed the state.

Task-number: QTBUG-35070
Change-Id: I9f32361cd815dbcc366ad30033692f9ae732ec46
Reviewed-by: Christian Stromme <christian.stromme@digia.com>
2013-12-05 22:55:02 +01:00
Christian Strømme
0fd995ac8b Don't use integers to describe volume internally in QSoundEffect.
The public api takes floating point values and so does most of the back-
ends. Conversion should be done in the back-ends that expect other value
types to avoid unnecessary float -> int -> float conversions.

Change-Id: I0ee1bfbe350f985294c20f897ffa3bd55288b4c9
Reviewed-by: Yoann Lopes <yoann.lopes@digia.com>
2013-11-28 14:12:22 +01:00
Sze Howe Koh
eb221bfd6d Doc: Document asynchronous nature of QMediaPlayer::setMedia()
The function name can be interpreted to mean that it loads the media.
Users have made this mistake before:

http://comments.gmane.org/gmane.comp.lib.qt.user/9189
https://bugreports.qt-project.org/browse/QTBUG-28514

Change-Id: I9e9b36405d67d40db42b77d8eeb8f9d528ee16e2
Reviewed-by: Jerome Pasion <jerome.pasion@digia.com>
Reviewed-by: Yoann Lopes <yoann.lopes@digia.com>
2013-11-23 00:30:30 +01:00
Eskil Abrahamsen Blomfeldt
3571a891d5 Android: Add permissions/features for Qt Multimedia module
To avoid potential exceptions when using Qt Multimedia, the
applications needs to request camera and audio recording
capabilities by default.

Task-number: QTBUG-33953
Change-Id: I75061e24c65a24f7f45dcfdbb5edb1874c1eb4da
Reviewed-by: Yoann Lopes <yoann.lopes@digia.com>
2013-11-08 09:02:03 +01:00
Jerome Pasion
fb199a5045 Doc: Updated url variable in qdocconf files.
In 5.2, the HTML output is in a flatter structure and when they are
hosted in qt-project.org/doc, the documentation will be found at
http://qt-project.org/doc/qt-$QT_VER

The url variable is used by projects outside of Qt 5 which need
to link to Qt 5 documentation, such as Qt Creator.

Task-number: QTBUG-34584
Change-Id: I3971987490ef7c2f8060383ffc2e141558f827c9
Reviewed-by: Topi Reiniö <topi.reinio@digia.com>
Reviewed-by: Leena Miettinen <riitta-leena.miettinen@digia.com>
2013-11-06 10:56:03 +01:00
Oswald Buddenhagen
ac01ab6543 use private linkage where possible
Task-number: QTBUG-34463
Change-Id: Iffbeed2f1a27fd38b5960afa9715815ac11b722a
Reviewed-by: Yoann Lopes <yoann.lopes@digia.com>
2013-10-31 23:18:18 +01:00
Christian Strømme
852f684973 QSoundEffect: Set playing to true before starting the audio-device.
When the audio-device starts playing it should be able to read from the
source immediately. The OpenSL plugin would fail because the source was
blocking the audio-device from reading, as the state still was in its
initial state (stopped).

Change-Id: Ia26fa2eb442e239f5209947e6c9cd464b7d976a4
Reviewed-by: Yoann Lopes <yoann.lopes@digia.com>
2013-10-30 15:02:28 +01:00
Yoann Lopes
7c9ff56f2f Remove unnecessary warning in QMediaPlaylistNavigator.
Task-number: QTBUG-33862
Change-Id: Ie74e649ebb5819ccf6300492bdce2a0046b87f02
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
2013-10-09 12:17:52 +02:00
Jerome Pasion
1598f79b17 Doc: Fixed missing links to Qt Audio Engine
The title changed from Positional Audio to Qt Audio Engine.

Change-Id: Ie9901c7bc6c394c1c429a16a8a1b1c18b1a87f46
Reviewed-by: Martin Smith <martin.smith@digia.com>
2013-10-08 12:27:52 +02:00
Jerome Pasion
3793b0653f Doc: Various fixes to Qt Audio Engine documentation
-fixed \since to "\since 5.0" (Qt version 5.0)
-made a \qmlmodule page so the list of related classes are automatically
 listed
-made changes in the Qt Multimedia documentation to link to the
 Qt Audio Engine documentation

Change-Id: Ibdd3da02871648988a73172934e684840c4ce0ae
Reviewed-by: Yoann Lopes <yoann.lopes@digia.com>
2013-10-03 10:54:17 +02:00
Jerome Pasion
43be5d9763 Doc: Removing version number from the QDoc comments.
The version is not needed anymore and QDoc handles them as a different
module, causing errors.

Task-number: QTBUG-32172
Change-Id: I55054a6c7bce9e001ef03cce944b03375c851d15
Reviewed-by: Martin Smith <martin.smith@digia.com>
Reviewed-by: Jerome Pasion <jerome.pasion@digia.com>
2013-10-02 12:56:28 +02:00
Jerome Pasion
40908fdb77 Doc: Updated usage of \qmlmodule and \inqmlmodule.
-\qmlmodule denotes the import statement "QtMultimedia 5.0"
-\inqmlmodule shouldn't have the version number and this commits removes
it because it is confusing.

Task-number: QTBUG-32172
Change-Id: I76f58ddd5ea2d5ae51eaae83a8408fd67611838a
Reviewed-by: Martin Smith <martin.smith@digia.com>
2013-10-02 12:56:21 +02:00
Yoann Lopes
be7a6241e7 Android: refactor video renderer.
Removed the overhead of having to create a shared OpenGL context in the GUI
thread and pre-render the frame into a FBO.

We now directly render the GL_TEXTURE_EXTERNAL_OES in the QtQuick render
thread, using an Android-specific QSGVideoNode.
We also use a callback from the render thread to create the texture from
there and not have to create a separate shared OpenGL context.

Change-Id: I6c8eb94b47d0a03329c912701b8af3fb5ebd1876
Reviewed-by: Christian Stromme <christian.stromme@digia.com>
2013-10-01 17:26:21 +02:00
Friedemann Kleint
329d9d4563 Fix lupdate warning in playlistparser.
playlistfileparser.cpp:278: Class 'PLSParser' lacks Q_OBJECT macro.

Change-Id: I062bd90b7cd5de82683dc02c6a6400855982a163
Reviewed-by: Yoann Lopes <yoann.lopes@digia.com>
2013-09-27 18:29:45 +02:00
Christian Strømme
6914aa76a4 Android: Make sure the OpenSL plugin is included on Android.
Change-Id: Ic46dd8afe50250bb30754ce12eda57138d05b81d
Reviewed-by: Yoann Lopes <yoann.lopes@digia.com>
2013-09-26 14:57:46 +02:00
Yoann Lopes
c3ca3a760e Some cleanup in the GStreamer plugin.
Removed QGstreamerVideoOverlay and related classes. It was used as
'Window' control but performs worse than QGstreamerVideoWindow which
does basically the same thing using GStreamer ready-made components
instead.
Removed X11 dependencies and related configuration tests. It was only
needed for QGstreamerVideoOverlay.

Change-Id: I2ad2636ccf0060e56cd64f3d9e5b3c24dc75f5a3
Reviewed-by: Andy Nichols <andy.nichols@digia.com>
2013-09-20 14:37:06 +02:00
Andy Nichols
b357c55f2d CoreAudio: Create an audio plugin supporting iOS and OS X
This removes the Mac audio backend that was hardcoded into QtMultimedia
and adds a new audio plugin using the CoreAudio API.

Change-Id: Ib15291825f9452a3763e0eeb281d952deb0bad3d
Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@digia.com>
Reviewed-by: Christian Stromme <christian.stromme@digia.com>
Reviewed-by: Yoann Lopes <yoann.lopes@digia.com>
2013-09-19 14:36:28 +02:00
Yoann Lopes
0a7882f6b3 Android: added camera support.
This patch includes all camera features: viewport, settings, image
capture, and video recording.
It also adds support for QAudioRecorder.

Change-Id: Ib962177cc8de4bac03f42a2bc0f534e03464bbfc
Reviewed-by: Christian Stromme <christian.stromme@digia.com>
2013-09-12 12:56:57 +02:00
Pier Luigi Fiorini
99fff6941b Fix the X11 build error
This makes qtmultimedia build again by moving down X11 includes.
See http://lists.qt-project.org/pipermail/development/2013-September/012986.html

Change-Id: If6cd5e80c27de7aaa8d2a65ded05500ed9d0e692
Reviewed-by: Konstantin Ritt <ritt.ks@gmail.com>
Reviewed-by: Laszlo Papp <lpapp@kde.org>
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Reviewed-by: Yoann Lopes <yoann.lopes@digia.com>
2013-09-09 10:45:04 +02:00
Sergio Ahumada
25be645862 Merge remote-tracking branch 'origin/stable' into dev
Change-Id: I2cba36426d8af40f94712f7f05f4e0dd4efce6e7
2013-09-06 14:32:51 +02:00
Tobias Hunger
f713edbc5a QGstXvImageBuffer: fix warning about class/struct mismatch
Change-Id: I98df1ce92fab69ad1200066d310aa8bd016b5aca
Reviewed-by: Tobias Hunger <tobias.hunger@digia.com>
2013-09-02 15:05:59 +02:00
Bill Somerville
4715ec52b1 Fix QAudioOutput::setVolume() limited 50% on 32-bit Windows
A signed 16 bit integer was being used to pack a normalised double into
half of a DWORD. It needed to be unsigned 16-bit to get the full range
of the Windows volume control.

Task-number: QTBUG-33160

Change-Id: Ic17f572a188401ee686c6e6af3984d52328ccda6
Reviewed-by: Alex Blasche <alexander.blasche@digia.com>
Reviewed-by: Yoann Lopes <yoann.lopes@digia.com>
2013-09-02 12:08:30 +02:00
Frederik Gladhorn
cb1871d061 Merge remote-tracking branch 'origin/stable' into dev
Change-Id: I469f258c4838f87edaedc8620d925a3c537d1619
2013-08-27 22:44:53 +02:00
Andy Nichols
17a700292a AVFoundation: Enable use of QMediaPlayer for audio on iOS
This commit disables the video components of the AVFoundation
mediaplayer backend when building for iOS and enables the use of
QMediaPlayer with audio assets.

Change-Id: Iadd6f9c61ed1e656301326e90a22cbca6428b654
Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@digia.com>
2013-08-27 14:15:54 +02:00
Frederik Gladhorn
4b8bb5cec7 Merge "Merge remote-tracking branch 'origin/stable' into dev" into refs/staging/dev 2013-08-13 21:00:22 +02:00
Andy Nichols
11432c0e77 Enable QSoundEffect with loopCount of Infinite to play
Previously if the loopCount property of a QSoundEffect was set to
QSoundEffect::Infinite then no sound would be played at all.  This is
because QSoundEffect::Infinite == -2 and playback was only continued on
values above 0.

Task-number: QTBUG-32882

Change-Id: I739919a3e538128fc16f26ede5eb6cc4f2eb29fb
Reviewed-by: Christian Stromme <christian.stromme@digia.com>
2013-08-13 18:40:59 +02:00
Jerome Pasion
206cf434a2 Doc: Renamed HTML file for "Qt Multimedia on Windows" page.
Conflicts with the platform page for Windows in qt5/doc

Task-number: QTBUG-32580
Change-Id: Ibcf51c5dcd93ac388fa799644004c51aa88fe93d
Reviewed-by: Martin Smith <martin.smith@digia.com>
2013-08-12 13:50:46 +02:00
Frederik Gladhorn
74e4b59ec8 Merge remote-tracking branch 'origin/stable' into dev
Conflicts:
	src/plugins/plugins.pro

Change-Id: Ieec8b5984b0fba97872bf96c38410369dc0e20cf
2013-08-12 12:47:02 +02:00
Yoann Lopes
f01af490a0 Fixed bug in QWaveDecoder.
When looking for a specific chunk, it was entering an infinite loop if not
finding it in the next two chunks available. It now correctly tries to
find the chunk until it reaches the end of the IO device.

Change-Id: I29252318566fe3a47f267410c91dacaf302d9618
Reviewed-by: Andy Nichols <andy.nichols@digia.com>
2013-08-05 18:08:53 +02:00
Sergio Ahumada
06eab796ba Merge branch 'stable' into dev
Conflicts:
	.qmake.conf

Change-Id: Id3427cb1a80956ba61373313c21b4b9aa007ea54
2013-08-05 10:38:25 +02:00
Jerome Pasion
ab29837c0e Doc: Setting \qtvariable values in module pages.
\qtvariable is the QT variable in .pro files.

Change-Id: Ib2e78579bbc67346b6c3431d03e01a4858439ac4
Reviewed-by: Martin Smith <martin.smith@digia.com>
2013-08-02 17:22:14 +02:00
Yoann Lopes
cd11c240a6 Make PulseAudio implementation of QSoundEffect more robust.
It was crashing when the PulseAudio daemon was not running or was
killed.
When the connection to the daemon fails (or is terminated), it now
tries to reconnect every 30 seconds.
Sounds created before a connection loss will be recreated after
reconnection.

Task-number: QTBUG-32487
Change-Id: Ia63707aa5c70434b834b3079a9950a9b35057b26
Reviewed-by: Shawn Rutledge <shawn.rutledge@digia.com>
2013-07-25 23:09:22 +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
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
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
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
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
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