Commit Graph

673 Commits

Author SHA1 Message Date
Lev Zelenskiy
9b162f9844 Added integration test for subsequent playback to media player backend.
Change-Id: If060dd78e595b52bbb1c0fb65ede7c84ced873b0
Reviewed-by: Michael Goddard <michael.goddard@nokia.com>
Reviewed-by: Jonas Rabbe <jonas.rabbe@nokia.com>
2012-04-11 00:44:01 +02:00
Yuchen Deng
02124e8d00 Add .gitignore file
Change-Id: Icb5f1fd8879a7a99af688d51fd02f8c30c9bdb14
Reviewed-by: Michael Goddard <michael.goddard@nokia.com>
2012-04-10 13:27:05 +02:00
dakovaci
28ed595a30 Small typo edit
Just some small eddits

Change-Id: I3e1e2a2890f7b8cb2d5933a25c41aaa53bc62867
Reviewed-by: Daron Andrew Edie <daron.edie@nokia.com>
2012-04-05 07:38:31 +02:00
dakovaci
bc8c7a6db7 Removed some systemtests
Removed pause video recording and video settings

Change-Id: Id763ce9c26c5b6f7b9b122ee1b4b80b0c9c926fa
Reviewed-by: Jonas Rabbe <jonas.rabbe@nokia.com>
2012-04-05 07:38:27 +02:00
dakovaci
d7d03207f8 Typo fix
Just some small eddits to typo errors

Change-Id: I374667dc66b8ea76595a98a519599df54b845775
Reviewed-by: Jonas Rabbe <jonas.rabbe@nokia.com>
Reviewed-by: Daron Andrew Edie <daron.edie@nokia.com>
2012-04-05 06:40:15 +02:00
Lev Zelenskiy
d6536f6583 Updated integration test to check initial volume.
Change-Id: Ida1eb24a6e09d31048722299104616fbaa26dffa
Reviewed-by: Jonas Rabbe <jonas.rabbe@nokia.com>
Reviewed-by: Michael Goddard <michael.goddard@nokia.com>
2012-04-05 05:52:21 +02:00
Lev Zelenskiy
2acb594de2 GStreamer backend: set initial volume and mute values.
For each stream set initial volume to 100 and mute state to FALSE.

Change-Id: I529a82c12f0fd65277f97193b3feed7f9782e4c0
Reviewed-by: Jonas Rabbe <jonas.rabbe@nokia.com>
Reviewed-by: Michael Goddard <michael.goddard@nokia.com>
2012-04-05 05:52:19 +02:00
Jonas Rabbe
c532850fd1 Updated a lot of minor fixes to the docs and removed warnings from qdoc
Change-Id: Ib7fd75fb93c038f9e8fa9d71b6ad01fb27b97622
Reviewed-by: Michael Goddard <michael.goddard@nokia.com>
2012-04-05 03:54:02 +02:00
Dmytro Poplavskiy
e908790a6a Ensure GstBus is available during GstBusHelper lifetime.
Change-Id: I6fc867e3c7a6ad1f83938d3dc0500ea339c39fe2
Reviewed-by: Jonas Rabbe <jonas.rabbe@nokia.com>
2012-04-05 02:40:20 +02:00
Lev Zelenskiy
cc33b63fa5 Reset playbin state to NULL on end of stream signal.
According to GStreamer documentation "playbin should be set
back to READY or NULL state, then the "uri" property should be set
to the new location and then playbin be set to PLAYING state again."
We reset playbin to NULL state and then call setMedia() again
in case playback is restarted.

Change-Id: If7efbf8d88e0aad461c3d1d8b802c6621af221f7
Reviewed-by: Mithra Pattison <mithra.pattison@nokia.com>
Reviewed-by: Jonas Rabbe <jonas.rabbe@nokia.com>
Reviewed-by: Dmytro Poplavskiy <dmytro.poplavskiy@nokia.com>
2012-04-05 02:40:17 +02:00
Jonas Rabbe
5eefb83589 Added typeinfo for audio engine
QML imports that load from a plugin need to have typeinfo so that
Qt Creator can do inline type checking and code completion.

Also adds convenience make target for updating the typeinfo.

Change-Id: I4c3a93bf8b8925032c0d03c99df277280f03376e
Reviewed-by: Mithra Pattison <mithra.pattison@nokia.com>
Reviewed-by: Jonas Rabbe <jonas.rabbe@nokia.com>
2012-04-04 23:46:33 +02:00
Jonas Rabbe
7c57a7c412 Add typeinfo for the declarative plugin for Qt Multimedia
For Qt Creator to correctly typecheck and auto-complete QML types and
objects, the typeinfo must be exported and added to the qmldir file.
This patch contains those changes, and an update to make updating the
typeinfo file easier in the future.

Change-Id: I988f22d3ca81839662cce4aed9d5297f7c5fbf32
Reviewed-by: Mithra Pattison <mithra.pattison@nokia.com>
Reviewed-by: Michael Goddard <michael.goddard@nokia.com>
Reviewed-by: Jonas Rabbe <jonas.rabbe@nokia.com>
2012-04-04 05:29:04 +02:00
bigbearzhu
df3f5d790f Fixed major mem leak of unfreed GstTagList when playing ogg files.
Could cause serious leak if ogg files contain coverart image.
Should use gst_tag_list_fee to free the used taglist.

Change-Id: I8f7b799729b84ad9a2ca45bc3e31f37a987a5885
Reviewed-by: Michael Goddard <michael.goddard@nokia.com>
2012-04-04 02:46:58 +02:00
dakovaci
37627f7680 Edited the radio system teste
Added some missing detail

Change-Id: I127a427e670196c80654eb4aae6cf7da4598f4ca
Reviewed-by: Daron Andrew Edie <daron.edie@nokia.com>
2012-04-03 05:26:26 +02:00
dakovaci
92063de523 added locksreen, hw volume and headset systemtests to audio
An addition to the audio systemtests

Change-Id: I5b0625e25b4e11c6971eb8bc5bd09c2d0597c5cb
Reviewed-by: Daron Andrew Edie <daron.edie@nokia.com>
2012-04-03 03:55:57 +02:00
Jonas Rabbe
6c2f9f0f52 Moved video plugins around to prevent accidental unloading
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>
2012-04-02 00:33:14 +02:00
Ling Hu
f7739d8621 Fix tst_qmediaplayerbackend construction test.
Availibility test should use QTRY_VERIFY instead of VERIFY,
should not assume available immediately after constructing.

Change-Id: Ic267ac9718aeecfe186d593af5439c1ffcf48e94
Reviewed-by: Dmytro Poplavskiy <dmytro.poplavskiy@nokia.com>
Reviewed-by: Michael Goddard <michael.goddard@nokia.com>
2012-03-30 08:10:36 +02:00
dakovaci
692ee3fe19 Added some radio systemtests, edited
Added some detail to the radio systemtest

Edited the Camera systemtest

Change-Id: I61c603e5de8e50400053da26563b937756aea316
Reviewed-by: Daron Andrew Edie <daron.edie@nokia.com>
2012-03-29 06:35:46 +02:00
Lev Zelenskiy
d8b688f8af Fixed: Streams information is not updated properly for RTSP streams.
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>
2012-03-28 08:09:58 +02:00
Sami Rosendahl
ff3595f07f Add deleteLater() test to tst_qmediaplayerbackend
Task-number: QTBUG-24927
Change-Id: Ic58a33aad9038af0325d20bed16d3e70d7e15b5a
Reviewed-by: Jason McDonald <jason.mcdonald@nokia.com>
Reviewed-by: Michael Goddard <michael.goddard@nokia.com>
2012-03-27 12:49:05 +02:00
Sami Rosendahl
13025c05c7 Deliver GStreamer signals through Qt event loop
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>
2012-03-27 06:28:31 +02:00
Michael Goddard
aa291c55b4 Make this unit test a bit more robust for qreal changes.
It's not just ARM that has qreal == float (and sometimes not even then)

Change-Id: Ic2fa890afd9f926c455442d04dc84e57dffe7787
Reviewed-by: Jonas Rabbe <jonas.rabbe@nokia.com>
2012-03-27 06:28:27 +02:00
Yuchen Deng
6522fecfb1 Build fix on Windows
Change-Id: I2666a81837dc78342b03a7cb5a33b406fd917661
Reviewed-by: Michael Goddard <michael.goddard@nokia.com>
2012-03-27 06:28:25 +02:00
Ling Hu
6e177b4dce Minor improvements on resource-policy interfaces
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>
2012-03-26 09:14:30 +02:00
Thiago Macieira
45bd0d938e Rename the daemon global static to pulseDaemon
There's a daemon() function declared in unistd.h.

Change-Id: I1063e71248a5236a5bb6b8f10804c469c8d1f788
Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>
2012-03-25 06:29:52 +02:00
Ling Hu
dceabd4b5c Make gstreamer player backend reserve/release video resource.
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>
2012-03-23 09:53:57 +01:00
Ling Hu
7e877a76db Implemented availability control for gstreamer player backend
Change-Id: I6d736b90ad59e258eb6f20befea8cfe1afce423a
Reviewed-by: Michael Goddard <michael.goddard@nokia.com>
Reviewed-by: Jonas Rabbe <jonas.rabbe@nokia.com>
2012-03-23 09:53:54 +01:00
Ling Hu
138242fb2d Added resource policy support though internal plugin system
Change-Id: I374be17d49b6a5eed0b1ed94d0b9ca5f9a2caa9b
Reviewed-by: Jonas Rabbe <jonas.rabbe@nokia.com>
2012-03-23 09:53:49 +01:00
Andrew den Exter
655408bced Don't delete video node factories owned by the plugin loader.
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>
2012-03-23 07:41:52 +01:00
Lev Zelenskiy
ba43d50b31 Fixes to qmediaplayerbackend integration test: use ogg video on Linux.
Attempt to find supported video format before running tests.
Tests are skipped if no video format is supported by the system.

Change-Id: Iad5b26438b6407f0808e288c5e6184f220f30e36
Reviewed-by: Ling Hu <ling.hu@nokia.com>
Reviewed-by: Michael Goddard <michael.goddard@nokia.com>
Reviewed-by: Jonas Rabbe <jonas.rabbe@nokia.com>
2012-03-23 06:37:42 +01:00
Angus Cummings
5d6494f248 resolving some warnings in qtmultimedia docs
Change-Id: I9df926f64548a5d53382448ca4eef8d428339aa3
Reviewed-by: Jonas Rabbe <jonas.rabbe@nokia.com>
2012-03-22 06:47:05 +01:00
Dmytro Poplavskiy
8477d735c9 Added VideoLight camera flash mode.
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>
2012-03-22 06:47:05 +01:00
Jonas Rabbe
9cf0b2b90d Fixed media service provider auto test on Mac OS X
Change-Id: I424ef50188244b5f4232534f9088bdc0071ea63e
Reviewed-by: Ling Hu <ling.hu@nokia.com>
Reviewed-by: Michael Goddard <michael.goddard@nokia.com>
2012-03-22 05:59:36 +01:00
Thomas Senyk
b816a640a9 changing include from qdeclarativeinfo to qmlinfo in qdeclarativeaudio.cpp
Change-Id: I7244f6c7b3743dfe5532f1d13c2afef256a2cdbc
Reviewed-by: Jonas Rabbe <jonas.rabbe@nokia.com>
2012-03-21 22:25:33 +01:00
Lev Zelenskiy
92b58ac1a7 QMediaPlaylist: Added ability to load from provided QNetworkRequest.
Change-Id: I7d8fc8a432810ff87650808b9ca6af53f7356d4e
Reviewed-by: Dmytro Poplavskiy <dmytro.poplavskiy@nokia.com>
2012-03-21 07:36:53 +01:00
Lev Zelenskiy
c00033dfe2 Added integration test for new playlist functionality.
Change-Id: I9cc4a3d140003de737b81b4dcfa1e4a94d4a2ba4
Reviewed-by: Dmytro Poplavskiy <dmytro.poplavskiy@nokia.com>
2012-03-21 05:44:18 +01:00
Lev Zelenskiy
b1eba5e9b2 QMediaPlayer: GStreamer backend changes for playlist support.
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>
2012-03-21 05:43:37 +01:00
Lev Zelenskiy
2c034beab5 QMediaPlayer frontend: changes to playlist support.
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>
2012-03-21 05:43:27 +01:00
Lev Zelenskiy
2ebea05283 New playlist parsers to support network playlists.
Added new playlist parsers for M3U and PLS.
Added QNetworkMediaPlaylistProvider.

Change-Id: I4c64018e44b8ae2401d6846a0c3c326d8c2ca5cc
Reviewed-by: Dmytro Poplavskiy <dmytro.poplavskiy@nokia.com>
2012-03-21 05:43:20 +01:00
Jonas Rabbe
7fef169bce Marked media service provide test as insignificant on mac
Temporary measure to ensure that IID and plugin changes make it through
CI, will be investigated once those changes have been integrated.

Change-Id: Ie9313a0fa6081ebeff62a83f183ab2534c0469ee
Reviewed-by: Jonas Rabbe <jonas.rabbe@nokia.com>
2012-03-20 23:40:11 +01:00
Jonas Rabbe
7517dcca3b Updated IID, services, and controls to use qt-project URL
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>
2012-03-20 23:40:08 +01:00
Jonas Rabbe
a8ba6e3c7f Updated plugins to use new plugin architecture
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>
2012-03-20 23:39:45 +01:00
Marius Storm-Olsen
61c09d1614 Compile on Windows
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>
2012-03-20 01:07:51 +01:00
Dmytro Poplavskiy
3f73ddbc71 Fixed the qml Camera.imageCapture.imageExposed signal connection
Trivial fix.

Change-Id: I522e3186ce9284e3aa0fb84296bc3c1e663e8577
Reviewed-by: Jonas Rabbe <jonas.rabbe@nokia.com>
Reviewed-by: Michael Goddard <michael.goddard@nokia.com>
2012-03-20 01:07:46 +01:00
Michael Goddard
e9ebbeef72 Make QDeclarativeAudio use QMediaPlayer instead of the controls.
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>
2012-03-16 06:58:46 +01:00
Michael Goddard
7c0b1da0ed Merge the QDeclarativeMediaBase and QDeclarativeAudio classes.
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>
2012-03-16 05:38:11 +01:00
Michael Goddard
1a1ac6b884 Handle more errors from GStreamer.
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>
2012-03-16 04:32:50 +01:00
Kalle Juhani Lehtonen
1f1bdbec82 Add use of TESTDATA feature to integration tests
Use TESTDATA and QFINDTESTDATA in integration tests. Also remove
unused path defines from unit test .pro files.

Change-Id: I46dc6a96b918e989acf79eb3bd23c53125c7c3d6
Reviewed-by: Michael Goddard <michael.goddard@nokia.com>
2012-03-15 04:03:17 +01:00
Jonas Rabbe
8e82f57c6a Updated declarative components to use the QML module
Change-Id: I4b49466ba5248683c2285f98ce17bc2c24bba515
Reviewed-by: Jonas Rabbe <jonas.rabbe@nokia.com>
2012-03-14 05:55:40 +01:00
Dmytro Poplavskiy
8d63785425 gst video surface sink: start surface with correct handle type
The handle type should match one from the currently used buffer pool.

Change-Id: I33f7856a742299ce0640f331898c3cbe5cfbdf97
Reviewed-by: Jonas Rabbe <jonas.rabbe@nokia.com>
2012-03-14 04:47:51 +01:00