summaryrefslogtreecommitdiffstats
path: root/src
Commit message (Collapse)AuthorAgeFilesLines
* Moved video plugins around to prevent accidental unloadingJonas Rabbe2012-04-022-2/+2
| | | | | | | | | | | | If several different plugins are located in the same place, and are loaded by different instances of QFactoryLoader, like we use, then plugins that are used elsewhere can be unloaded. By ensuring that the plugins are alone in their directory, then they will not have this problem. Change-Id: Id95b81ddf46435278fe43a4769e2d39f6b973a84 Reviewed-by: Dmytro Poplavskiy <dmytro.poplavskiy@nokia.com> Reviewed-by: Mithra Pattison <mithra.pattison@nokia.com>
* Fixed: Streams information is not updated properly for RTSP streams.Lev Zelenskiy2012-03-282-1/+21
| | | | | | | | | | | Changes to QGstreamerPlayerSession: Handle video-changed, audio-changed, and text-changed signals. Call getStreamsInfo() to update streams information. Change-Id: I8bfead3268771245635424b5f1debff624bbe038 Reviewed-by: Jonas Rabbe <jonas.rabbe@nokia.com> Reviewed-by: Ling Hu <ling.hu@nokia.com> Reviewed-by: Dmytro Poplavskiy <dmytro.poplavskiy@nokia.com>
* Deliver GStreamer signals through Qt event loopqt-v5.0.0-alpha1Sami Rosendahl2012-03-271-6/+19
| | | | | | | | | | Emitting a Qt signal directly from GLib callback causes issues to clients. Queue the GStreamer signal and forward it to as a Qt signal from a handler that is invoked via the Qt event loop. Task-number: QTBUG-24927 Change-Id: I3c91efcce1261caf7b643fbff10663e1b093f2a8 Reviewed-by: Dmytro Poplavskiy <dmytro.poplavskiy@nokia.com>
* Build fix on WindowsYuchen Deng2012-03-271-1/+1
| | | | | Change-Id: I2666a81837dc78342b03a7cb5a33b406fd917661 Reviewed-by: Michael Goddard <michael.goddard@nokia.com>
* Minor improvements on resource-policy interfacesLing Hu2012-03-265-7/+16
| | | | | | | Change-Id: I3e9c7c4d1fca90e0fb97b0058e9b5a5e34940025 Reviewed-by: Michael Goddard <michael.goddard@nokia.com> Reviewed-by: Dmytro Poplavskiy <dmytro.poplavskiy@nokia.com> Reviewed-by: Jonas Rabbe <jonas.rabbe@nokia.com>
* Rename the daemon global static to pulseDaemonThiago Macieira2012-03-251-15/+15
| | | | | | | There's a daemon() function declared in unistd.h. Change-Id: I1063e71248a5236a5bb6b8f10804c469c8d1f788 Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>
* Make gstreamer player backend reserve/release video resource.Ling Hu2012-03-232-1/+28
| | | | | | | | Use request/release of various video related controls as an indication for the decision. Change-Id: I3a2a288c7c46ca62459896745bbdda26961bb181 Reviewed-by: Michael Goddard <michael.goddard@nokia.com> Reviewed-by: Jonas Rabbe <jonas.rabbe@nokia.com>
* Implemented availability control for gstreamer player backendLing Hu2012-03-237-2/+151
| | | | | | Change-Id: I6d736b90ad59e258eb6f20befea8cfe1afce423a Reviewed-by: Michael Goddard <michael.goddard@nokia.com> Reviewed-by: Jonas Rabbe <jonas.rabbe@nokia.com>
* Added resource policy support though internal plugin systemLing Hu2012-03-2311-222/+419
| | | | | Change-Id: I374be17d49b6a5eed0b1ed94d0b9ca5f9a2caa9b Reviewed-by: Jonas Rabbe <jonas.rabbe@nokia.com>
* Don't delete video node factories owned by the plugin loader.Andrew den Exter2012-03-232-3/+10
| | | | | | | | | | | Make the fallback factories members instead of creating on the heap so there's no need to delete members of the m_videoNodeFactories some of which may be shared with other current and future video outputs. Change-Id: I3d2e32e52479b12ff64e31a2ed527336d94a191b Reviewed-by: Jonas Rabbe <jonas.rabbe@nokia.com> Reviewed-by: Michael Goddard <michael.goddard@nokia.com>
* resolving some warnings in qtmultimedia docsAngus Cummings2012-03-2210-26/+25
| | | | | Change-Id: I9df926f64548a5d53382448ca4eef8d428339aa3 Reviewed-by: Jonas Rabbe <jonas.rabbe@nokia.com>
* Added VideoLight camera flash mode.Dmytro Poplavskiy2012-03-223-4/+9
| | | | | | | | Unlike the torch mode, it's enabled only while camera is active. Change-Id: Ib92349ac190586c5aa8e49a8fddbdf937e757fd0 Reviewed-by: Jonas Rabbe <jonas.rabbe@nokia.com> Reviewed-by: Michael Goddard <michael.goddard@nokia.com>
* changing include from qdeclarativeinfo to qmlinfo in qdeclarativeaudio.cppThomas Senyk2012-03-211-1/+1
| | | | | Change-Id: I7244f6c7b3743dfe5532f1d13c2afef256a2cdbc Reviewed-by: Jonas Rabbe <jonas.rabbe@nokia.com>
* QMediaPlaylist: Added ability to load from provided QNetworkRequest.Lev Zelenskiy2012-03-219-23/+39
| | | | | Change-Id: I7d8fc8a432810ff87650808b9ca6af53f7356d4e Reviewed-by: Dmytro Poplavskiy <dmytro.poplavskiy@nokia.com>
* QMediaPlayer: GStreamer backend changes for playlist support.Lev Zelenskiy2012-03-212-14/+69
| | | | | | | | Register type find function to check if unrecognized media is a playlist. Emit MediaIsPlaylist error and let frontend handle playlists. Change-Id: Ib17da1c46014ac3c0f2f48b75ea9de2f0428b573 Reviewed-by: Dmytro Poplavskiy <dmytro.poplavskiy@nokia.com>
* QMediaPlayer frontend: changes to playlist support.Lev Zelenskiy2012-03-217-389/+346
| | | | | | | | | Allow to load playlists using setMedia(). Use QNetworkMediaPlaylistProvider for playlist parsing. Updated unit tests. Change-Id: If4dba07be8b2e8a9e9549d5bed58e552dfb958b7 Reviewed-by: Dmytro Poplavskiy <dmytro.poplavskiy@nokia.com>
* New playlist parsers to support network playlists.Lev Zelenskiy2012-03-214-0/+1075
| | | | | | | | Added new playlist parsers for M3U and PLS. Added QNetworkMediaPlaylistProvider. Change-Id: I4c64018e44b8ae2401d6846a0c3c326d8c2ca5cc Reviewed-by: Dmytro Poplavskiy <dmytro.poplavskiy@nokia.com>
* Updated IID, services, and controls to use qt-project URLJonas Rabbe2012-03-2090-134/+134
| | | | | | | | | Instead of com.nokia.qt we should use org.qt-project.qt. All the identifiers have also been updated to use pure lowercase, and where used the version numbers have been updated to 5.0. Change-Id: Ib209327f5205f5a086a5932394504a8a52e1f712 Reviewed-by: Dmytro Poplavskiy <dmytro.poplavskiy@nokia.com>
* Updated plugins to use new plugin architectureJonas Rabbe2012-03-2045-602/+150
| | | | | | | | | | | | | | | | | | | Changed QMediaPluginLoader to use QFactoryLoader instead of QPluginLoader and used metadata to get keys. Removed QAudioPluginLoader and changed audio classes to use instead use QMediaPluginLoader. The plugins must include the Q_PLUGIN_METADATA macro, and no longer use the Q_PLUGIN_EXPORT/Q_PLUGIN_EXPORT2 macros. A json file has been added for each plugin which can contain metadata which is available to the plugin loader before the plugin is actually loaded, and is used to read the keys for the plugin, e.g. supported services. QFactoryInterface will be deprecated and has been removed from all plugins. Change-Id: I035b82f9c9c65717bebf704d560ea8f891df21da Reviewed-by: Michael Goddard <michael.goddard@nokia.com> Reviewed-by: Dmytro Poplavskiy <dmytro.poplavskiy@nokia.com>
* Compile on WindowsMarius Storm-Olsen2012-03-202-5/+5
| | | | | | | | | | | | | Conversion of WId to HWND requires reinterpret_cast. Comment out RatingOrganisation for directshow as it is commented out in the gstreamer plugins too. (Note that both directshow and gstreamer plugins spell it incorrectly. It's spelled "RatingOrganization" in qtmedianamespace.h) Change-Id: I4cbcecfeb62ad795facf498d1c3d84a776d2ca35 Reviewed-by: Dmytro Poplavskiy <dmytro.poplavskiy@nokia.com> Reviewed-by: Michael Goddard <michael.goddard@nokia.com>
* Fixed the qml Camera.imageCapture.imageExposed signal connectionDmytro Poplavskiy2012-03-201-1/+1
| | | | | | | | Trivial fix. Change-Id: I522e3186ce9284e3aa0fb84296bc3c1e663e8577 Reviewed-by: Jonas Rabbe <jonas.rabbe@nokia.com> Reviewed-by: Michael Goddard <michael.goddard@nokia.com>
* Make QDeclarativeAudio use QMediaPlayer instead of the controls.Michael Goddard2012-03-168-302/+332
| | | | | | | | | | Very minor changes in semantics due to previous differences: * negative positions are not supported any more (clamped to >= 0) * setting muted to the same value previously set to the control itself won't signal any more. Change-Id: Iacf4310508d853ae82b63dee28095fce12b6ff28 Reviewed-by: Dmytro Poplavskiy <dmytro.poplavskiy@nokia.com>
* Merge the QDeclarativeMediaBase and QDeclarativeAudio classes.Michael Goddard2012-03-165-767/+558
| | | | | | | | | Since there is only one subclass of base. Next step is to clean up QDeclarativeAudio Change-Id: Ibda8c3006efa165b58372a011121f04a39458562 Reviewed-by: Dmytro Poplavskiy <dmytro.poplavskiy@nokia.com>
* Handle more errors from GStreamer.Michael Goddard2012-03-162-11/+11
| | | | | | | | | Corrupted etc files can throw GST_STREAM_ERROR_DECODE and those should generally stop playback. So now any error is fatal, not just the recognised ones. Change-Id: I7b6dd2a460d94f70c459a313a9d4dc84028f8002 Reviewed-by: Dmytro Poplavskiy <dmytro.poplavskiy@nokia.com>
* Updated declarative components to use the QML moduleJonas Rabbe2012-03-1424-61/+63
| | | | | Change-Id: I4b49466ba5248683c2285f98ce17bc2c24bba515 Reviewed-by: Jonas Rabbe <jonas.rabbe@nokia.com>
* gst video surface sink: start surface with correct handle typeDmytro Poplavskiy2012-03-142-5/+15
| | | | | | | The handle type should match one from the currently used buffer pool. Change-Id: I33f7856a742299ce0640f331898c3cbe5cfbdf97 Reviewed-by: Jonas Rabbe <jonas.rabbe@nokia.com>
* Made QRadioData bind to QRadioTuner to avoid using multiple servicesJonas Rabbe2012-03-128-62/+214
| | | | | | | | | | | | | | | | | | | | | QRadioData has been updated to be a QMediaBindableInterface, and it will bind to a QRadioTuner instance, i.e. a QMediaObject that provides a service which implements the QRadioDataControl. This change is reflected in the declarative implementations of radio tuner and data. There is a new `radioData` property in the Radio element which will give access to the declarative RadioData element for the tuner. If a RadioData element is created in QML, it will have an anonymous tuner which communicates with the underlying media service (which is pretty much the same how the QRadioTuner and QRadioData classes work previously). Updated radio tuner and data test cases to use availability control and extended the mock media service to allow providing a number of controls rather than just one (needed for testing availability of all classes extending from or using QMediaObject). Change-Id: Id41dde66eee529decd828fd2dcdfe4a54c0e81f4 Reviewed-by: Michael Goddard <michael.goddard@nokia.com>
* QCamera capture documentation fixesDmytro Poplavskiy2012-03-123-1/+33
| | | | | | | Added documentation for camera capture queue behavior. Change-Id: I4989f94c5de0edb3ac99135dcb3e11d76195a880 Reviewed-by: Michael Goddard <michael.goddard@nokia.com>
* Added playlist property to QMediaContentLev Zelenskiy2012-03-122-6/+62
| | | | | | | | | This is a part of changes to QMediaPlayer related to playlist handling. Updated unit test. Change-Id: Ic2460dc4d3121788cd5eb08df71e6d45aac032bc Reviewed-by: Michael Goddard <michael.goddard@nokia.com> Reviewed-by: Dmytro Poplavskiy <dmytro.poplavskiy@nokia.com>
* Don't request renderer control if null surface is set as video output.Dmytro Poplavskiy2012-03-122-2/+16
| | | | | | | | | | | | | QCamera and QMediaPlayer are likely to wait for valid surface to be passed to the renderer control before startup, so after player->setVideoOutput(nullSurface) player will not start playback. If the renderer control was already requested before for valid surface it should be released when the null surface is assigned. Change-Id: I3f78f2d82e61fae5f305874874c0ffbc4cb7dc1d Reviewed-by: Jonas Rabbe <jonas.rabbe@nokia.com>
* Move most of playlist API to private.Lev Zelenskiy2012-03-0624-171/+165
| | | | | | | Moved objects either not needed to be public or require API review/redesign. Change-Id: Ibeb8b8c9c9a74bea32191c119fa4daaffde57c17 Reviewed-by: Dmytro Poplavskiy <dmytro.poplavskiy@nokia.com>
* Remove unimplemented BG playback feature.Michael Goddard2012-03-059-484/+1
| | | | | | | Prototype that wasn't implemented should be removed for 5.0. Change-Id: I3b90658ad8dc0b64003a5bb741fc3c93c7d87dff Reviewed-by: Ling Hu <ling.hu@nokia.com>
* Fix a few memory leaks.Michael Goddard2012-03-051-2/+6
| | | | | | | | XV Buffer pool was leaking, the sink delegate was leaking, and the sink wasn't chaining to parent class so GstObject stuff was leaking. Change-Id: I5d6b6fe59dfb2b3c5367dfde8331e5943167b55d Reviewed-by: Dmytro Poplavskiy <dmytro.poplavskiy@nokia.com>
* Fix some memory leaks.Michael Goddard2012-03-055-0/+9
| | | | | | | | Adjusted a unit test or two to make leaks easier to find, and then fixed a few leaks. Change-Id: I47a20df8de7cac113d34a2015f76a65ab957dedd Reviewed-by: Dmytro Poplavskiy <dmytro.poplavskiy@nokia.com>
* Expose availability from the backend to C++ and QML.Michael Goddard2012-03-0232-109/+563
| | | | | | | | | | | | | | The availabilityError property was static based on the service, but it can change at run time, so add the plumbing to allow the backend to report it itself. Also make sure that both QML and C++ expose the availability. The radio tuner and data controls previously had properties (but no signals) for availability - these have been removed. Change-Id: I9240cf93e2a51b14cd38642f9312ae3c75f05361 Reviewed-by: Ling Hu <ling.hu@nokia.com>
* Remove the usage of deprecated qdoc macros.Casper van Donderen2012-03-0228-292/+292
| | | | | | | | | | QDoc now has support for Doxygen style commands for italics, bold and list items. This change applies that change in QDoc to the actual documentation. Task-number: QTBUG-24578 Change-Id: Iec1c616e0d9a915a31a661916805916e19495dc9 Reviewed-by: Michael Goddard <michael.goddard@nokia.com>
* Expose the audio and video encoding modes through QML as well.Michael Goddard2012-02-293-4/+100
| | | | | | | They were missing. Change-Id: I0bb08c5e4721c27d2dcec818c0ee33f42c8df959 Reviewed-by: Dmytro Poplavskiy <dmytro.poplavskiy@nokia.com>
* Don't reset saved playback position if playback resource is denied.Michael Goddard2012-02-272-1/+15
| | | | | | | | | | | | Resource denied and resource lost should be handled differently, on resource lost the current playback position should be preserved, while on resource denied player state should be changed to paused with pending position unchanged. (from qtmobility, SHA1 4e457432ef0f50cb91a1043f0390427cafcaef0d) Change-Id: I5ce755409c430598d68ee6a6a90f9d0858ea9da9 Reviewed-by: Dmytro Poplavskiy <dmytro.poplavskiy@nokia.com>
* Changes to GStreamer backend for audio decoder.Lev Zelenskiy2012-02-244-21/+124
| | | | | | | | | | | | Removed WaitingState. New signals: finished(), positionChanged(), durationChanged(). New methods: position(), duration(). A parameter removed from read() method. Unit tests updated. Change-Id: Ie9d8a2804285c5542e592cce69963adbdf6ebfb8 Reviewed-by: Jonas Rabbe <jonas.rabbe@nokia.com> Reviewed-by: Michael Goddard <michael.goddard@nokia.com>
* Changes to QAudioBuffer and QAudioDecoder (position and duration).Lev Zelenskiy2012-02-246-19/+131
| | | | | | | | | | | | | | QAudioBuffer: - Allow to specify startTime in the constructor. QAudioDecoder: - Removed WaitingState. - New signals: finished(), positionChanged(), durationChanged(). - New methods: position(), duration(). - A parameter removed from read() method. Change-Id: Ifb71502d0756aa306abd0a6bf7873934029952c4 Reviewed-by: Dmytro Poplavskiy <dmytro.poplavskiy@nokia.com> Reviewed-by: Michael Goddard <michael.goddard@nokia.com>
* Don't use QT_ARCH to detect ARM or OpenGL ES 2 on ARMBradley T. Hughes2012-02-222-2/+2
| | | | | | | | | | | Use Q_PROCESSOR_ARM instead of QT_ARCH_ARM. On maemo6, don't use QT_ARCH==armv6 to conditionally include egl code. Instead check for opengles2 in QT_CONFIG, which is detected by the configure script. Change-Id: Ib3062fbd81c3a3acd318df32c49ad133a5b0d07c Reviewed-by: Michael Goddard <michael.goddard@nokia.com>
* Docs: fix qml links and standalone build for MultimediaPeter Yard2012-02-2215-288/+303
| | | | | Change-Id: Ia3f1e49aef203911bb5cf1ee062c9100be213b38 Reviewed-by: Jonas Rabbe <jonas.rabbe@nokia.com>
* clean up qmake-generated projectsOswald Buddenhagen2012-02-223-3/+0
| | | | | | | | remove assignmets which are defaults or bogus Change-Id: I7130f22a66b294f92b0ed03749895136d0890a64 Reviewed-by: Marius Storm-Olsen <marius.storm-olsen@nokia.com> Reviewed-by: Michael Goddard <michael.goddard@nokia.com>
* Update audioengine overview doc & reference docLing Hu2012-02-218-89/+89
| | | | | Change-Id: If1061b3dc113f4354d741c536d63cbe36e7a65eb Reviewed-by: Michael Goddard <michael.goddard@nokia.com>
* Fix a few audiodecoder things.Michael Goddard2012-02-214-77/+107
| | | | | | | | Beef up the autotest a little, and check the conversion. Change-Id: Ifffca118e092eb6c388db50a6eb12810a87aa32a Reviewed-by: Lev Zelenskiy <lev.zelenskiy@nokia.com> Reviewed-by: Michael Goddard <michael.goddard@nokia.com>
* Fix QAudioBuffer sampleCount vs. channelCount.Michael Goddard2012-02-211-5/+7
| | | | | | | | | | | There were some inconsistencies in when the sample count was per channel or in total. The docs mention that it is in total, so fix a few cases where it went wrong and test it. Change-Id: I55c855911fcde66a218d6cdd327e09ad5406d5a4 Reviewed-by: Jonas Rabbe <jonas.rabbe@nokia.com> Reviewed-by: Lev Zelenskiy <lev.zelenskiy@nokia.com> Reviewed-by: Michael Goddard <michael.goddard@nokia.com>
* Add the hasAudio/hasVideo properties from MediaPlayer to Video.Michael Goddard2012-02-172-0/+16
| | | | | | Change-Id: I167184c3622c4fcb0843b17f2ab803b0bbf104fa Reviewed-by: Mithra Pattison <mithra.pattison@nokia.com> Reviewed-by: Michael Goddard <michael.goddard@nokia.com>
* GStreamer backend for audio decoder service.Lev Zelenskiy2012-02-175-74/+247
| | | | | | | Includes basic integration test. Change-Id: I4c6d1dbefa1f27e107b3556a3d4da58811eeb122 Reviewed-by: Michael Goddard <michael.goddard@nokia.com>
* Added QAudioDecoderControl::sourceChanged signal.Lev Zelenskiy2012-02-173-0/+10
| | | | | | | | | | The signal is mentioned in QAudioDecoder but is missing from QAudioDecoderControl. Change-Id: I0cd13c53541585098edd02093858501ffb5af1fb Reviewed-by: Ling Hu <ling.hu@nokia.com> Reviewed-by: Michael Goddard <michael.goddard@nokia.com> Reviewed-by: Dmytro Poplavskiy <dmytro.poplavskiy@nokia.com>
* Add a partial gstreamer based audio decoder service.Michael Goddard2012-02-1712-11/+916
| | | | | | | Doesn't work yet. Change-Id: Iebd085d68346cb73af8df59c84e8e52a17de2a52 Reviewed-by: Michael Goddard <michael.goddard@nokia.com>