summaryrefslogtreecommitdiffstats
path: root/src
Commit message (Collapse)AuthorAgeFilesLines
* Some cleanup in the GStreamer plugin.Yoann Lopes2013-09-2019-1558/+35
| | | | | | | | | | | | 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>
* Android: Adapt the multimedia plugin to new QJNI APIChristian Strømme2013-09-2019-253/+229
| | | | | Change-Id: Id87f5518724eed6c9de6d5d3b8141860bd511643 Reviewed-by: Yoann Lopes <yoann.lopes@digia.com>
* Android: fix compilation on x86.Yoann Lopes2013-09-191-2/+2
| | | | | | Task-number: QTBUG-33554 Change-Id: I4da7410d3b77ec6d72a73d3b6ceb7b76bb48d2b7 Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@digia.com>
* CoreAudio: Create an audio plugin supporting iOS and OS XAndy Nichols2013-09-1921-2571/+3459
| | | | | | | | | | 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>
* OpenSL: Fix build warning about unused result variable.Christian Strømme2013-09-171-3/+2
| | | | | Change-Id: I11a4a3792feb90c46d4f3a77aafa82c18a9d9a45 Reviewed-by: Yoann Lopes <yoann.lopes@digia.com>
* Fix QVideoSurfaceArbFpPainter mistakenly failing to start in some cases.Yoann Lopes2013-09-171-0/+2
| | | | | | | | | | If an OpenGL error occurred before starting the video painter, it would fail to do so. This patch simply makes sure the OpenGL error flag is cleared before checking for GL errors that would occur in QVideoSurfaceArbFpPainter's code. Change-Id: I2eacf6db03cb290adf00a9faf11145c7a6ade565 Reviewed-by: Christian Stromme <christian.stromme@digia.com>
* OpenSL: Fix typosChristian Strømme2013-09-121-2/+2
| | | | | Change-Id: I1a293bbf8ad3d9016ff6a7ec816c33d3303e5959 Reviewed-by: Yoann Lopes <yoann.lopes@digia.com>
* Android: added camera support.Yoann Lopes2013-09-1286-71/+7687
| | | | | | | | | 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>
* Fix the X11 build errorPier Luigi Fiorini2013-09-091-3/+3
| | | | | | | | | | | 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>
* Merge remote-tracking branch 'origin/stable' into devSergio Ahumada2013-09-063-13/+13
|\ | | | | | | 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>
| * BlackBerry: Pass encoded URLs to mm rendererBernd Weimer2013-08-292-12/+12
| | | | | | | | | | | | | | | | MM renderer expects (remote) URLs to be percent encoded. Change-Id: Ib7429cbeb3b7aa6baba99419d8b101a712ab4881 Reviewed-by: Rafael Roquetto <rafael.roquetto@kdab.com> Reviewed-by: Thomas McGuire <thomas.mcguire@kdab.com>
* | PulseaudioInput: Remove unused membersTobias Hunger2013-09-021-2/+0
| | | | | | | | | | | | | | Clang warns about them. Change-Id: I8fb2e9bc30f35ec9540b09a34bf23bf9eb671b9c Reviewed-by: Tobias Hunger <tobias.hunger@digia.com>
* | QGstXvImageBuffer: fix warning about class/struct mismatchTobias Hunger2013-09-021-1/+2
| | | | | | | | | | Change-Id: I98df1ce92fab69ad1200066d310aa8bd016b5aca Reviewed-by: Tobias Hunger <tobias.hunger@digia.com>
* | QGstTools: Fix warning about unused m_intervalTimerTobias Hunger2013-09-021-0/+2
| | | | | | | | | | | | | | Clang does complain about this member not being used. Change-Id: I02919715be43486f4646ca75deea66fc8a6a2276 Reviewed-by: Tobias Hunger <tobias.hunger@digia.com>
* | Merge remote-tracking branch 'origin/stable' into devFrederik Gladhorn2013-08-2710-32/+60
|\| | | | | | | Change-Id: I469f258c4838f87edaedc8620d925a3c537d1619
| * WMF and GStreamer: fixed incorrect frame startTime and endTime.Yoann Lopes2013-08-224-12/+40
| | | | | | | | | | | | | | | | | | | | | | | | The QVideoFrame documentation explicitly says that the time is in microseconds, however the GStreamer backend was setting the time in milliseconds and the WMF backend in 100-nanosecond units. With WMF, the time was missing from the QVideoFrame when presenting it to the video surface. Task-number: QTBUG-31731 Change-Id: I0638d2abf8eed25b3a531db67c19a18703e5b630 Reviewed-by: Andy Nichols <andy.nichols@digia.com>
| * Android: Use isValid() to check if the jobject is valid.Christian Strømme2013-08-211-2/+2
| | | | | | | | | | Change-Id: I5ec67b9b2abfae2e2c2a44f0bcc7c72cb54beb49 Reviewed-by: Yoann Lopes <yoann.lopes@digia.com>
| * Android: fixed media player buffering logic.Yoann Lopes2013-08-192-8/+7
| | | | | | | | | | | | | | | | | | | | | | | | When the media is ready, the status should always transition to LoadedMedia and then immediately to BufferingMedia or BufferedMedia. Also, when the duration is queried before the media is ready but already buffering, it should always return 0 to avoid errors from the Android media player. Task-number: QTBUG-32635 Change-Id: Ibcb9c23b4f64c4f9a1a8e0ef81989ae78cfb19ef Reviewed-by: Christian Stromme <christian.stromme@digia.com>
| * WMF: fixed QMediaPlayer changing to EndOfMedia status too early.Yoann Lopes2013-08-161-7/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | It was changing to EndOfMedia status and explicitly stopping playback when receiving the MEEndOfPresentation event from the WMF session. However, this event means that all data has bean read from the source but not necessarily played yet. According to the documentation, playback is done when the MESessionEnded event is sent. It now reports the EndOfMedia status at that moment instead. stop() is not explicitly called anymore since MESessionEnded also implies the session has stopped. Task-number: QTBUG-30825 Change-Id: I6c6c09e736fe33f7cf17c75038ea7be1b5701a1c Reviewed-by: Christian Stromme <christian.stromme@digia.com>
| * WMF: use qFabs instead of fabsf.Yoann Lopes2013-08-161-2/+3
| | | | | | | | | | | | Task-number: QTBUG-32360 Change-Id: Ibec3d044ac38f54abd895d56f1851011bf6b5272 Reviewed-by: Christian Stromme <christian.stromme@digia.com>
| * 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>
* | AVFoundation: Basic camera support for iOSAndy Nichols2013-08-272-6/+9
| | | | | | | | | | | | | | Enables basic software rendering support for iOS. Change-Id: Icd29076ea627295819ede6d9680de576ba39b34e Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@digia.com>
* | AVFoundation: Enable QVideoWidget on iOSAndy Nichols2013-08-272-22/+21
| | | | | | | | | | Change-Id: I88041e7a2ea052fe449542eeaada31c09d93d163 Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@digia.com>
* | AVFoundation: Use CoreAnimation to render video to QVideoWidgetAndy Nichols2013-08-277-262/+115
| | | | | | | | | | | | | | | | | | Previously a QGLWidget was used as a target for the AVFVideoFrameRenderer. This was uncessary as it is possible to render directly on top of the QWidget using the CoreAnimation Framework. Change-Id: I08923c85fd56c8874c1d8c187ae5145e220fab92 Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@digia.com>
* | AVFoundation: Enable use of QMediaPlayer for audio on iOSAndy Nichols2013-08-276-37/+48
| | | | | | | | | | | | | | | | | | 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>
* | AVFoundation: Remove QVideoSurfaceCoreGraphicsPainterAndy Nichols2013-08-264-404/+3
| | | | | | | | | | | | | | | | | | This was a leftover from Qt 4, as it is no longer possible to use the CoreGraphics paint engine. Instead we should just use the logic in QPainterVideoSurface render the QVideoFrame. Change-Id: I7e97fe7c30fd478dcd405d300e0c3f70050ca25f Reviewed-by: Christian Stromme <christian.stromme@digia.com>
* | Merge "Merge remote-tracking branch 'origin/stable' into dev" into ↵Frederik Gladhorn2013-08-1310-16/+389
|\ \ | | | | | | | | | refs/staging/dev
| * | Merge remote-tracking branch 'origin/stable' into devFrederik Gladhorn2013-08-1210-16/+389
| |\| | | | | | | | | | | | | | | | | | | Conflicts: src/plugins/plugins.pro Change-Id: Ieec8b5984b0fba97872bf96c38410369dc0e20cf
| | * Implement resource policy plugin using libresourceqt.Robin Burchell2013-08-057-0/+375
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This contains a new resource policy plugin, replacing the built-in code that was deleted when the plugin interface was removed in 138242fb2dc19438a0ead34b36af848800e27190 (which unfortunately did not provide a plugin). Change-Id: Iae7ed6edc330c69ca0c72d50bde6c7e12b8cca4e Reviewed-by: Andy Nichols <andy.nichols@digia.com>
| | * 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>
| | * Change libresourceqt's .pc file.Robin Burchell2013-08-052-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | The one public port of this library to Qt 5 changed the .pc to libresourceqt5, to avoid clashing with the Qt 4 version. Change-Id: I6a248606e20c4e7a8f432612ca00aded846264d9 Reviewed-by: Andy Nichols <andy.nichols@digia.com>
* | | Doc: Renamed HTML file for "Qt Multimedia on Windows" page.Jerome Pasion2013-08-121-1/+1
|/ / | | | | | | | | | | | | | | 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>
* | Merge branch 'stable' into devSergio Ahumada2013-08-053-9/+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>
| * Moved declarative-camera example in the right directory.Yoann Lopes2013-07-241-1/+0
| | | | | | | | | | | | | | | | | | This example was in the multimediawidgets directory but doesn't depend on or use the QtMultimediaWidgets module. Moved to 'examples/multimedia' instead. Change-Id: Ic2fcc6576e95664e0002531ee378a4366daa56c1 Reviewed-by: Jerome Pasion <jerome.pasion@digia.com>
* | Doc: Setting \qtvariable values in module pages.Jerome Pasion2013-08-022-0/+2
| | | | | | | | | | | | | | \qtvariable is the QT variable in .pro files. Change-Id: Ib2e78579bbc67346b6c3431d03e01a4858439ac4 Reviewed-by: Martin Smith <martin.smith@digia.com>
* | Merge remote-tracking branch 'origin/stable' into devFrederik Gladhorn2013-07-234-19/+45
|\| | | | | | | Change-Id: If52332b72560d21069e24cd31b13f08f33e1f406
| * DirectShow: avoid unnecessary RGB32 -> BGR32 conversion.Yoann Lopes2013-07-191-1/+1
| | | | | | | | | | | | | | | | | | 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>
| * DirectShow: Don't create the widget and renderer controls until requested.Yoann Lopes2013-07-192-15/+31
| | | | | | | | | | | | Task-number: QTBUG-32282 Change-Id: If37ed4c35bcc2cc879f50d3b2ea3720b90603e9a Reviewed-by: Yoann Lopes <yoann.lopes@digia.com>
| * WMF: fixed MediaPlayer buffering logic.Yoann Lopes2013-07-191-3/+13
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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>
* | OpenSL ES audio plugin.Yoann Lopes2013-07-1913-0/+2084
| | | | | | | | | | | | | | | | 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>
* | Merge remote-tracking branch 'origin/stable' into devFrederik Gladhorn2013-07-1110-30/+158
|\| | | | | | | Change-Id: Ia2cf3c55e57d7ac17f02965915fa6933ff2c8cce
| * Android: removed unnecessary init class for QtMultimedia.jarYoann Lopes2013-07-091-2/+2
| | | | | | | | | | Change-Id: Ib13597389a3896da8b619993d197623e7c74a7e0 Reviewed-by: Christian Stromme <christian.stromme@digia.com>
| * Android: Make it possible for MediaPlayer to read from assets.Christian Strømme2013-07-091-1/+14
| | | | | | | | | | | | | | | | | | 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>
| * Android: wait to have a valid video surface before loading a media.Yoann Lopes2013-07-095-27/+130
| | | | | | | | | | | | | | | | 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>
| * Android: release the Android media player before destroying it.Yoann Lopes2013-07-093-0/+8
| | | | | | | | | | Change-Id: I18715efd7ff346a9f6f2214727ec66ee79ad0d33 Reviewed-by: Christian Stromme <christian.stromme@digia.com>
| * Fix resource leak in directshow plugin.tommyadam2013-07-041-0/+4
| | | | | | | | | | | | | | | | | | 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>
* | Merge remote-tracking branch 'origin/stable' into devFrederik Gladhorn2013-06-2719-41/+64
|\| | | | | | | Change-Id: I48a140d1bbe82ab65e54683d77aea8c97c06ec80
| * Merge remote-tracking branch 'origin/release' into stableFrederik Gladhorn2013-06-2517-17/+38
| |\ | | | | | | | | | Change-Id: I9ad818eecef74983e09660871f39ee66a6b666a1