summaryrefslogtreecommitdiffstats
path: root/src/multimedia/audio
Commit message (Collapse)AuthorAgeFilesLines
* Merge remote-tracking branch 'origin/5.3' into 5.4Sergio Ahumada2014-09-261-3/+0
|\ | | | | | | | | | | | | Conflicts: .qmake.conf Change-Id: Iad73368a22c6d4662188e6f357a265d0c26756d0
| * Remove unused includesChristian Strømme2014-09-111-3/+0
| | | | | | | | | | Change-Id: Ibbce6e9135649d5dce0522320197dbbd0a92b3b9 Reviewed-by: Yoann Lopes <yoann.lopes@digia.com>
* | Add a declaration to QIODeviceThiago Macieira2014-08-251-0/+2
| | | | | | | | | | | | | | | | | | | | It isn't getting #included nor forward-declared at this point. That was only an indirect inclusion. qaudiosystem.h:78:24: error: ‘QIODevice’ has not been declared Change-Id: I5b9121b693bb06414638e8a4664115597da7466f Reviewed-by: Yoann Lopes <yoann.lopes@digia.com>
* | Update license headers and add new license filesAntti Kokko2014-08-2437-703/+407
| | | | | | | | | | | | | | | | | | - Renamed LICENSE.LGPL to LICENSE.LGPLv21 - Added LICENSE.LGPLv3 & LICENSE.GPLv2 - Removed LICENSE.GPL Change-Id: Ied06887225df341064c12bcc14c259ae74116f2e Reviewed-by: Jani Heikkinen <jani.heikkinen@digia.com>
* | Set volume only if volume was explicitly set.Robin Burchell2014-08-042-3/+17
| | | | | | | | | | | | Change-Id: I0d5abab0ffbf61a74c59ce240fd39e756479026b Done-with: Juho Hämäläinen <juho.hamalainen@tieto.com> Reviewed-by: Andrew den Exter <andrew.den.exter@qinetic.com.au>
* | Resource policy support for QSoundEffect.Robin Burchell2014-08-042-1/+47
|/ | | | | | | | | | | | | | | | | | Since sound effects are something short and mixed with other audio, do not acquire resources explicitly. Follow the resources availability information to determine when it is ok to play the sound effects. When client has registered itself to resource manager, client's streams are classified properly. If no higher priority client has acquired the resources, isAvailable() is true, and sound effects can be played. We do not explicitly acquire the resources, since then other clients with the same resource class would lose the resources, thus not possible to have second client play music with QMediaPlayer class while our client would just want to play simple sound effects. Change-Id: Ib5589349dca6900a8bee616b8ad77e7cb5ec9533 Done-with: Juho Hämäläinen <juho.hamalainen@tieto.com> Reviewed-by: Andrew den Exter <andrew.den.exter@qinetic.com.au>
* Improve default audio plugin selection.Yoann Lopes2014-06-051-6/+21
| | | | | | | | | When no audio plugin is marked as default, use the first plugin available. Change-Id: Ide8db0fe55f43c4881c24505c1e2821b0fc176f6 Reviewed-by: Dyami Caliri <dyami@dragonframe.com> Reviewed-by: Christian Stromme <christian.stromme@digia.com>
* Use Q_CONSTRUCTOR_FUNCTION macro to register multimedia meta types.Yoann Lopes2014-05-305-53/+25
| | | | | | Task-number: QTBUG-39131 Change-Id: I2493c9e3e6f0065d0441a74ff240d7d91fbe059c Reviewed-by: Christian Stromme <christian.stromme@digia.com>
* Add support for running on big-endian systemsDmitry Shachnev2014-04-032-7/+15
| | | | | | | | Now qtmultimedia test suite passes on powerpc. Change-Id: I540dff93195115ad1dc5725af7293e3b8540403f Reviewed-by: Thiago Macieira <thiago.macieira@intel.com> Reviewed-by: Yoann Lopes <yoann.lopes@digia.com>
* QSoundEffect: fix changing the loop count while playing.v5.3.0-alpha1Yoann Lopes2014-02-253-10/+23
| | | | | | | | | | | | The running count was not updated with the new value. Auto-test added and documentation updated to be more clear about this behavior. Task-number: QTBUG-36643 Change-Id: I29e98ca4679f950a75133b21873738bcb72d23d4 Reviewed-by: Christian Stromme <christian.stromme@digia.com>
* Merge remote-tracking branch 'origin/stable' into devFrederik Gladhorn2014-02-121-5/+1
|\ | | | | | | Change-Id: Ie93615076177662e75d46f3d13beeb88d424b4a6
| * QSoundEffect: Don't try guess a media role if one has not been provided.Robin Burchell2014-02-071-5/+1
| | | | | | | | | | | | | | | | | | Trying to heuristically guess this kind of thing is almost always a bad idea. Expect the creator of the output to explicitly tell us the category instead of guessing. Change-Id: I5f2988e2456685f3622e0ab136951b1742215f71 Reviewed-by: Yoann Lopes <yoann.lopes@digia.com>
* | Move win32 and Alsa audio backends into plugins.Christian Strømme2014-01-3014-5233/+1
| | | | | | | | | | Change-Id: I9835cf5ee97900569f26421a19543b485e933051 Reviewed-by: Yoann Lopes <yoann.lopes@digia.com>
* | Alsa: fix crash when detecting devices.Yoann Lopes2014-01-301-52/+57
| | | | | | | | | | | | | | | | | | Some old versions of Alsa crash when snd_device_name_hint(-1, ...) is called. This patch works around the problem by iterating manually over all the available sound cards. Change-Id: Ic380a371acc15013d137553ff30d68bed5af664e Reviewed-by: Christian Stromme <christian.stromme@digia.com>
* | whitespace fixesOswald Buddenhagen2014-01-305-38/+38
|/ | | | | | | | remove trailing spaces & expand tabs. Change-Id: I05ef110abed90f13b47752760ffb4567a11a6a5e Reviewed-by: Yoann Lopes <yoann.lopes@digia.com> Reviewed-by: Tony Sarajärvi <tony.sarajarvi@digia.com>
* Fix some typos in documentation.Jeff Tranter2014-01-071-1/+1
| | | | | | | | 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>
* PulseAudio: fix crash when failing to create a context.Yoann Lopes2014-01-061-2/+3
| | | | | | | | | | 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>
* Correct QSoundEffect::supportedMimeTypes() documentation.Mitch Curtis2014-01-021-1/+1
| | | | | Change-Id: I154b124949ee4f07ea413d8cdb419fcc08cb8324 Reviewed-by: Topi Reiniö <topi.reinio@digia.com>
* Don't use integers to describe volume internally in QSoundEffect.Christian Strømme2013-11-285-22/+22
| | | | | | | | | 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>
* use private linkage where possibleOswald Buddenhagen2013-10-311-2/+2
| | | | | | Task-number: QTBUG-34463 Change-Id: Iffbeed2f1a27fd38b5960afa9715815ac11b722a Reviewed-by: Yoann Lopes <yoann.lopes@digia.com>
* QSoundEffect: Set playing to true before starting the audio-device.Christian Strømme2013-10-301-2/+1
| | | | | | | | | | 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>
* Doc: Removing version number from the QDoc comments.Jerome Pasion2013-10-021-20/+20
| | | | | | | | | | 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>
* Doc: Updated usage of \qmlmodule and \inqmlmodule.Jerome Pasion2013-10-021-1/+1
| | | | | | | | | | -\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>
* CoreAudio: Create an audio plugin supporting iOS and OS XAndy Nichols2013-09-1910-2904/+6
| | | | | | | | | | 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>
* Merge remote-tracking branch 'origin/stable' into devSergio Ahumada2013-09-061-1/+1
|\ | | | | | | Change-Id: I2cba36426d8af40f94712f7f05f4e0dd4efce6e7
| * Fix QAudioOutput::setVolume() limited 50% on 32-bit Windowsold/5.1Bill Somerville2013-09-021-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | 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>
* | Merge remote-tracking branch 'origin/stable' into devFrederik Gladhorn2013-08-271-1/+1
|\| | | | | | | Change-Id: I469f258c4838f87edaedc8620d925a3c537d1619
| * Enable QSoundEffect with loopCount of Infinite to playAndy Nichols2013-08-131-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | 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>
* | Merge remote-tracking branch 'origin/stable' into devFrederik Gladhorn2013-08-121-14/+11
|\| | | | | | | | | | | | | Conflicts: src/plugins/plugins.pro Change-Id: Ieec8b5984b0fba97872bf96c38410369dc0e20cf
| * Fixed bug in QWaveDecoder.Yoann Lopes2013-08-051-14/+11
| | | | | | | | | | | | | | | | | | 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>
* | Merge branch 'stable' into devSergio Ahumada2013-08-052-8/+47
|\| | | | | | | | | | | | | Conflicts: .qmake.conf Change-Id: Id3427cb1a80956ba61373313c21b4b9aa007ea54
| * Make PulseAudio implementation of QSoundEffect more robust.Yoann Lopes2013-07-252-8/+47
| | | | | | | | | | | | | | | | | | | | | | | | | | 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>
* | Merge remote-tracking branch 'origin/stable' into devFrederik Gladhorn2013-06-271-10/+12
|\| | | | | | | Change-Id: I48a140d1bbe82ab65e54683d77aea8c97c06ec80
| * Use correct default audio output and input devices on Windows.Yoann Lopes2013-06-251-10/+12
| | | | | | | | | | | | | | | | | | 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>
* | Purged ALSA implementationBernd Weimer2013-06-112-153/+75
| | | | | | | | | | | | | | | | 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>
* | Delay deletion of the QNetworkAccessManager.Stephen Kelly2013-04-111-1/+1
|/ | | | | | | | | | 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>
* Fix calculation bug in QWaveDecoder.Christian Strømme2013-03-221-3/+5
| | | | | | | | | 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>
* Merge remote-tracking branch 'origin/stable' into devFrederik Gladhorn2013-03-142-29/+36
|\ | | | | | | Change-Id: Ifee8e5713e95d516081c4bc911e8f0bb6a169b13
| * Doc: Clarify and polish docs for QAudio[Input|Output]::start()Sze Howe Koh2013-02-272-29/+36
| | | | | | | | | | | | | | | | | | 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>
* | iOS: Fix build issuesAndy Nichols2013-03-112-9/+9
| | | | | | | | | | | | | | | | 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>
* | Merge remote-tracking branch 'origin/stable' into devFrederik Gladhorn2013-02-1957-75/+80
|\| | | | | | | | | | | | | | | | | | | 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
| * Merge branch 'release' into stableSergio Ahumada2013-01-292-0/+5
| |\ | | | | | | | | | Change-Id: If07e76a0f2f46d6dc50a41441324f02393e17d01
| | * Add virtual destructors to two classes with other virtualsThiago Macieira2013-01-252-0/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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>
| | * Doc: Fixed random QDoc warningsVenugopal Shivashankar2013-01-175-17/+17
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | - 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 51334d299520118bbbc077696ca589f972a2f2ea)
| * | Doc: Fix module name formatSze Howe Koh2013-01-291-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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>
| * | Doc: Fixed random QDoc warningsVenugopal Shivashankar2013-01-155-17/+17
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | - 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>
| * | Update copyright year in Digia's license headersSergio Ahumada2013-01-1057-57/+57
| |/ | | | | | | | | | | Change-Id: Ia8c1c38aba1544603fada8c414cc856f365fd15b Reviewed-by: Akseli Salovaara <akseli.salovaara@digia.com> Reviewed-by: Sergio Ahumada <sergio.ahumada@digia.com>
* | Reduce MinGW64-warnings about mixerID.Friedemann Kleint2013-02-142-6/+8
| | | | | | | | | | | | | | warning: cast to pointer from integer of ifferent size. Change-Id: I4294fe7b67c56d1eca59f81c3af26919ad5089a8 Reviewed-by: Yoann Lopes <yoann.lopes@digia.com>
* | Fix signature of the waveInProc/waveOutProc callbacks.Friedemann Kleint2013-02-144-4/+4
| | | | | | | | | | | | | | | | | | 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>
* | Remove QT_{BEGIN,END}_HEADER macro usageSergio Ahumada2013-01-2828-112/+0
|/ | | | | | | | | 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>