Commit Graph

120 Commits

Author SHA1 Message Date
Frederik Gladhorn
cb1871d061 Merge remote-tracking branch 'origin/stable' into dev
Change-Id: I469f258c4838f87edaedc8620d925a3c537d1619
2013-08-27 22:44:53 +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
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
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
0a3f1aacd3 Merge remote-tracking branch 'origin/stable' into dev
Change-Id: I48a140d1bbe82ab65e54683d77aea8c97c06ec80
2013-06-27 13:00:02 +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
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
Stephen Kelly
97c2eefbdc Delay deletion of the QNetworkAccessManager.
Fixes unit test which crashes on exit.

Task-number: QTBUG-30630

Change-Id: I1e13cdc21c4297e492bf74d9a546a91510894288
Reviewed-by: Sergio Ahumada <sergio.ahumada@digia.com>
Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>
2013-04-11 15:09:31 +02:00
Christian Strømme
d64a68f5c8 Fix calculation bug in QWaveDecoder.
When comparing the size of the WaveHeader and the chunk size, we need to
include the ID and Size fields, or any extra data won't be discarded and
the parsing will fail.

Change-Id: I730833f33f57b26cd750985354136191f7e7ce04
Reviewed-by: Yoann Lopes <yoann.lopes@digia.com>
2013-03-22 17:50:22 +01:00
Frederik Gladhorn
954bb7b960 Merge remote-tracking branch 'origin/stable' into dev
Change-Id: Ifee8e5713e95d516081c4bc911e8f0bb6a169b13
2013-03-14 09:25:28 +01:00
Andy Nichols
04860b7a37 iOS: Fix build issues
This also prevents anything meaningful from working, but it is a
good starting point.

Change-Id: Idaf495ec29f611ee5342c79318bc3ace1d852747
Reviewed-by: Yoann Lopes <yoann.lopes@digia.com>
2013-03-11 13:09:17 +01:00
Sze Howe Koh
339fda0ca9 Doc: Clarify and polish docs for QAudio[Input|Output]::start()
QAudio[Input|Output] retains ownership of the QIODevices that are
returned.

Change-Id: Ieb2f319eef906822debc13b4399d7e7336024552
Reviewed-by: Jerome Pasion <jerome.pasion@digia.com>
Reviewed-by: Yoann Lopes <yoann.lopes@digia.com>
2013-02-27 10:34:44 +01:00
Frederik Gladhorn
d396262bc9 Merge remote-tracking branch 'origin/stable' into dev
Conflicts:
	src/multimedia/doc/qtmultimedia.qdocconf
	src/plugins/blackberry/mediaplayer/bbmetadata.cpp
	src/plugins/blackberry/mediaplayer/bbmetadata.h
	tests/auto/unit/qpaintervideosurface/tst_qpaintervideosurface.cpp

Change-Id: I447c297ea15a94d1d2feb0fb5f9edac8c5d4505a
2013-02-19 17:15:56 +01:00
Friedemann Kleint
f326202c48 Reduce MinGW64-warnings about mixerID.
warning: cast to pointer from integer of ifferent size.

Change-Id: I4294fe7b67c56d1eca59f81c3af26919ad5089a8
Reviewed-by: Yoann Lopes <yoann.lopes@digia.com>
2013-02-14 13:24:44 +01:00
Friedemann Kleint
699a5d75aa Fix signature of the waveInProc/waveOutProc callbacks.
Parameters are DWORD_PTR instead of DWORD, which did not matter
on 32bit but caused MinGW64-compiler warnings and potential
crashes on 64bit.

Change-Id: I840ae3ea7ea532746f73f20b3233cae842931d45
Reviewed-by: Yoann Lopes <yoann.lopes@digia.com>
2013-02-14 13:24:39 +01:00
Sergio Ahumada
c96d152e33 Merge branch 'release' into stable
Change-Id: If07e76a0f2f46d6dc50a41441324f02393e17d01
2013-01-29 15:21:05 +01:00
Sze Howe Koh
28ee5b12ff Doc: Fix module name format
Follow the conventions at
http://qt-project.org/wiki/Spelling_Module_Names_in_Qt_Documentation

QtMultimedia -> Qt Multimedia

(Also, QtMultimediaKit has been merged into Qt Multimedia in Qt 5)

Change-Id: I3c23435d5eceb946ea320756b835da937726db24
Reviewed-by: Laszlo Papp <lpapp@kde.org>
Reviewed-by: Jerome Pasion <jerome.pasion@digia.com>
2013-01-29 01:28:50 +01:00
Sergio Ahumada
157f4f982b Remove QT_{BEGIN,END}_HEADER macro usage
The macro was made empty in qtbase/ba3dc5f3b56d1fab6fe37fe7ae08096d7dc68bcb
and is no longer necessary or used.

Discussed-on: http://lists.qt-project.org/pipermail/development/2013-January/009284.html
Change-Id: Id95d10f5d9c146d9eb496119af6a8b8501ffcb17
Reviewed-by: Jędrzej Nowacki <jedrzej.nowacki@digia.com>
2013-01-28 23:21:21 +01:00
Thiago Macieira
a45d35c07f Add virtual destructors to two classes with other virtuals
Classes with virtuals are used polymorphically (why have virtuals
otherwise?), so they need virtual destructors to be deleted
properly. Unless they are never deleted using objects of those two
classes -- but why have the interface in the first place if that's the
case?

This is binary incompatible change. It was agreed upon in the mailing
list.

Change-Id: I697e4bd53251452a0e6b0c09edd08c4835f90cbd
Discussed-on: http://lists.qt-project.org/pipermail/development/2012-December/008908.html
Reviewed-by: Lars Knoll <lars.knoll@digia.com>
2013-01-25 22:48:56 +01:00
Venugopal Shivashankar
8e6ffcc6af 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>
(cherry picked from commit 51334d2995)
2013-01-17 16:03:48 +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
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
Thiago Macieira
3df5999a07 Remove comma at the end of the enum
Required for public header cleanliness

Change-Id: I2641fd085071b2a69806e8622c7c35be74f744b1
Reviewed-by: Jonas Rabbe <jonas.rabbe@gmail.com>
2012-12-28 23:29:17 +01:00
Christian Stenger
b5316d2904 Doc: Replace outdated macro
Change-Id: I9bc0f8a077e60ede0ac1b6852b66d33143eed5a3
Reviewed-by: Jerome Pasion <jerome.pasion@digia.com>
2012-12-07 14:16:43 +01:00
Friedemann Kleint
cc24af773b Fix syncqt-warnings.
Use include with module name for the multimedia-classes.

Change-Id: I8da1a4015a162959b604cd859aee139e246e3f6c
Reviewed-by: Andras Becsi <andras.becsi@digia.com>
2012-11-19 19:37:40 +01:00
Robin Burchell
a73dfa7c63 Fix a possible crash in QSoundEffect.
pa_stream_cork may fail, and pa_operation_unref won't handle that gracefully, so
check the return value before unreffing.

Done-with: Vesa-Matti Hartikainen
Change-Id: If789e37a13f85487c79dd8a03a7ca3624b1412d2
Reviewed-by: Shawn Rutledge <shawn.rutledge@digia.com>
Reviewed-by: Andras Becsi <andras.becsi@digia.com>
2012-11-09 11:46:04 +01:00
Sze Howe Koh
47fe5f9b39 Enable the "#include <QMultimedia>" camel-case header
Rename qtmedianamespace.h/cpp -> qmultimedia.h/cpp, and have
sync.profile generate the camel-case header during compilation.

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

Change-Id: Iade9ee6538970b4b9935f169eb2d9a0ea6949a95
Reviewed-by: Lars Knoll <lars.knoll@digia.com>
Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>
2012-11-06 18:20:09 +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
Sergio Ahumada
441ce7e6d6 Remove stale QT_MODULE() usage cases
As of Qt5, this macro is defined to be empty; simply get rid of these leftovers.

Change-Id: Id24056c0afd013904b1e098dc49e502038fd77a4
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2012-10-25 20:15:38 +02:00
Friedemann Kleint
bce5525cbb QtMultimedia: Fix compiler warnings.
Change-Id: I5783b1f6dce645fb473e7d3da0911dbb40e3951b
Reviewed-by: Jonathan Liu <net147@gmail.com>
Reviewed-by: Kai Koehne <kai.koehne@digia.com>
2012-10-17 13:40:18 +02:00
Friedemann Kleint
40fe658dce Fix compilation with stock MinGW.
Use qt_windows.h, provide interfaces and UIDs missing
in stock MinGW.

Task-number: QTBUG-23829
Change-Id: I79ed902bb7636c751df7607f6059a7de237acb31
Reviewed-by: Jonathan Liu <net147@gmail.com>
Reviewed-by: Kai Koehne <kai.koehne@digia.com>
2012-10-17 13:40:13 +02:00
Kevin Ottens
9cc977668f Export QAudioHelperInternal symbols
They can be useful to some of the audio plugins.

Change-Id: I10856c104770ed57c72b674829e3922b5067a822
Reviewed-by: Thomas McGuire <thomas.mcguire@kdab.com>
2012-10-08 08:37:49 +02:00
Kevin Ottens
2f2b317318 Don't add the beginning of the file to the end of the last period
If we're in the last loop, it is not necessary to provide a full period
on read. Just provide the remaining of the data and hit the end of the
stream by returning less than requested, otherwise we potentially
generate some garbage noise.

Change-Id: I9d3a632ddc0c3289957c9f876d5dbe2999b50ebd
Reviewed-by: Thomas McGuire <thomas.mcguire@kdab.com>
2012-10-08 08:37:35 +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
Michael Goddard
d67f9dba56 Fix some failing QAudioInput integration tests on OSX.
This also meant implementing software volume support, and since
this is the last backend to do so, make that interface pure
virtual again.

In some cases the test needed tweaks.

Change-Id: Ie429863f187b43802cdd4f16d841929e0cb0e729
Reviewed-by: Kurt Korbatits  <kurt.korbatits@nokia.com>
Reviewed-by: Dmytro Poplavskiy <dmytro.poplavskiy@nokia.com>
2012-08-03 07:05:40 +02:00
Kurt Korbatits
a6e88ea87f Added check to qsound and qsoundeffect unit tests for audio support
- skip tests if QSoundEffect::supportedMimeTypes() returns empty list

Change-Id: I0f8d6f854c46b74f8518c4d969bd31ea167d20b2
Reviewed-by: Ling Hu <ling.hu@nokia.com>
Reviewed-by: Michael Goddard <michael.goddard@nokia.com>
2012-08-03 04:11:48 +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
Kurt Korbatits
b976589a66 Replace QSoundEffect backend using qmedia with qaudiooutput implementation
- Use backend built on QAudioOutput
- Fixed unit test so backend will pass

Change-Id: I2f2a7d8bf382127c5a5c333d6e36c79169754b4e
Reviewed-by: Michael Goddard <michael.goddard@nokia.com>
Reviewed-by: Kurt Korbatits  <kurt.korbatits@nokia.com>
2012-07-26 23:10:46 +02:00
Lev Zelenskiy
403eee4d87 Volume control for QAudioInput windows backend.
Change-Id: I1245a38c68254fc48373a856dc44e8ad8142636e
Reviewed-by: Ling Hu <ling.hu@nokia.com>
2012-07-26 09:06:23 +02:00
Kurt Korbatits
64dbf9d968 Added check to alsa backend for QAudioOutput
- Was asserting when stop() called when in IdleState

Change-Id: Ib8a5bd149c0b9c700c709520cf8ffdd237e08694
Reviewed-by: Ling Hu <ling.hu@nokia.com>
Reviewed-by: Kurt Korbatits  <kurt.korbatits@nokia.com>
2012-07-26 05:31:01 +02:00
Ali Akhtarzada
29a2d09a43 Fixed docs for QAudioInput::bufferSize and setBufferSize
Change milliseconds to bytes

Task-number: QTBUG-26600

Change-Id: I861ae9c35ddc52d58ed95a2148f72d6476f35522
Reviewed-by: Casper van Donderen <casper.vandonderen@nokia.com>
Reviewed-by: Michael Goddard <michael.goddard@nokia.com>
2012-07-24 07:58:22 +02:00
Kurt Korbatits
1ac9318645 Added volume control for QAudioOutput & QAudioInput (alsa)
QTBUG-25454

- Added update to docs on volume control.
- Added internal volume adjustment for alsa implementation.
- Enabled float sample option in QAudioDeviceInfo (alsa).

Change-Id: I6b89fc8beb457d71be9ad71b538c86a008570f07
Reviewed-by: Michael Goddard <michael.goddard@nokia.com>
Reviewed-by: Kurt Korbatits  <kurt.korbatits@nokia.com>
2012-07-17 07:03:48 +02:00
Michael Goddard
8c12864361 Fix some QAudioInput errors on OSX.
Default buffer size wasn't always calculated correctly, and the timer
used in push mode was sometimes incorrect.

Change-Id: Ic31b9d16e16e4c25a5ebfc302590829e179a96bf
Reviewed-by: Dmytro Poplavskiy <dmytro.poplavskiy@nokia.com>
2012-07-16 08:41:27 +02:00
Kurt Korbatits
5daa9c340c Fixed error in qaudioinput alsa backend for invalid format.
QTBUG-26523
- Was QAudioOutput. Changed to QAudioInput.

Change-Id: I04f7d38af5cb67c420adef188b81b237b6e06b97
Reviewed-by: Daniel Kovacic <daniel.kovacic@nokia.com>
2012-07-16 05:33:03 +02:00
Michael Goddard
4d13a15bae Clarify API/docs by introducing the audio "frame", and add helpers.
The frame is the interleaved set of one sample for each channel.  Add
some docs and some methods that make working with samples a bit more
convenient.

Adjusted QAudioBuffer to use these helper functions and terminology.

Change-Id: I96db48e659561972d6de2aa19893d29f9a828cd3
Reviewed-by: Dmytro Poplavskiy <dmytro.poplavskiy@nokia.com>
2012-07-11 08:01:45 +02:00
Mithra Pattison
8879945567 Update ALSA device enumeration to return all devices
Previously, if a device was marked as "Default Audio Device" then
only this device would be returned during device enumeration. Now
it returns all devices, with the default device placed first.

Task-number: QTBUG-22103
Change-Id: I1705415bf6b58ff046c4d2812107b46b76500001
Reviewed-by: Michael Goddard <michael.goddard@nokia.com>
2012-07-10 09:18:21 +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
Lev Zelenskiy
909576da6a Allow frequences up to 96000 in QAudioInput win32 backend.
QTBUG-26102

Change-Id: I1c594f7df4aea2292045e1e96f58926d97bcfd82
Reviewed-by: Michael Goddard <michael.goddard@nokia.com>
2012-06-27 08:12:10 +02:00