Commit Graph

72 Commits

Author SHA1 Message Date
Lev Zelenskiy
0374f0de5e GStreamer backend changes for media probing API.
QGstreamerPlayerSession: Using GStreamer buffer probes
to access media data.

Change-Id: Ibc056283fdedaebba90456cc4e86ab63eae5f5f7
Reviewed-by: Michael Goddard <michael.goddard@nokia.com>
2012-02-16 07:18:16 +01:00
Michael Goddard
4f38f950b0 Fix some compiler warnings.
As it turns out, we had an overloaded virtual from an earlier era,
with the extra parameter never used.  So cleaning that up was a
bonus to remove the compiler warning.

Change-Id: I780287f8a5d2b0a1ec84ec62c88ba50e051f372b
Reviewed-by: Jonas Rabbe <jonas.rabbe@nokia.com>
2012-02-14 08:30:40 +01:00
Dmytro Poplavskiy
ee39683e27 Moved QMediaServiceProvider to private header.
It's not intended to be used by applications.

Change-Id: I2acc26180ebb5c2419438169827f39aaf4578389
Reviewed-by: Michael Goddard <michael.goddard@nokia.com>
2012-02-06 13:57:42 +01:00
Lev Zelenskiy
39c96db2b3 Changes to QMediaPlayer GStreamer backend to allow setPosition before pause
Do not display prerolled frames in stopped state.
Instead store prerolled frame and display it only after switching to
pause or playback state.
Added new unit test with a sample video file to check this functionality.

Change-Id: I3fd159a199b65ca10fdf9843af5675c5ae9dad05
Reviewed-by: Michael Goddard <michael.goddard@nokia.com>
2012-02-06 08:56:34 +01:00
Dmytro Poplavskiy
fd3a3a7292 Added metaDataChanged(key,value) signal to metadata controls.
It may be more efficient and convenient for application to use this
signal instead of metaDataChanged().

metaDataChanged() signal is emitted for compatibility,
backends should emit both signals.

Signal added QMetadataReader/WritterControl,
QMediaObject and QMediaRecorder.

Change-Id: I5ca34a40e64b22034e6fde8cd7f9735cc3f72c68
Reviewed-by: Michael Goddard <michael.goddard@nokia.com>
2012-02-06 05:35:11 +01:00
Dmytro Poplavskiy
a22a0195f1 Split QMediaRecorder::setEncodingSettings to separate setters.
It's easier to change only the necessary part of encoding settings.
The settings are applied during the next event loop or before recording
starts.

Change-Id: Ia2b5c93826a302212aa7f79a0c75e4cbaaf1dd7a
Reviewed-by: Ling Hu <ling.hu@nokia.com>
Reviewed-by: Michael Goddard <michael.goddard@nokia.com>
2012-02-01 08:10:20 +01:00
Jason McDonald
5e801e2793 Remove "All rights reserved" line from license headers.
As in the past, to avoid rewriting various autotests that contain
line-number information, an extra blank line has been inserted at the
end of the license text to ensure that this commit does not change the
total number of lines in the license header.

Change-Id: I20e5215108c6ebd5f8474fed5c3665118e4791e6
Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
2012-01-30 07:08:05 +01:00
Michael Goddard
3b00730eca Add a volume (gain) property to QAudioInput.
Only implemented for PulseAudio so far, but the API does explain that
it's optional.

Change-Id: I4543a1c81d810fe92bb08f1ed13f3a3534a371e4
Reviewed-by: Ling Hu <ling.hu@nokia.com>
2012-01-25 07:18:48 +01:00
Michael Goddard
a9d78fbec9 Fix some static analysis defects.
A few silly errors, a few unlikely errors, a few changes that should
not have resulted in a problem but makes the code clearer.

Change-Id: Id2c82e9317d53822e4da13c94dec9595ea33b07a
Reviewed-by: Ling Hu <ling.hu@nokia.com>
Reviewed-by: Dmytro Poplavskiy <dmytro.poplavskiy@nokia.com>
2012-01-25 06:14:56 +01:00
Ling Hu
ebeea66e82 Fix header changes for wmf
Change-Id: I9d06dd9a39f26851589b1c1f259db8de2ee992a0
Reviewed-by: Michael Goddard <michael.goddard@nokia.com>
2012-01-24 09:13:11 +01:00
Ling Hu
adb2bd2cd4 Disable wmf for now
Change-Id: I4d28741a6546dfafc5c60c7ccdc34d814276b518
Reviewed-by: Michael Goddard <michael.goddard@nokia.com>
2012-01-24 08:22:13 +01:00
Dmytro Poplavskiy
08dc13ce90 Disabled CameraBin2 based camera backend.
It's not currently tested enough to be enabled.

Change-Id: I3c8eb7a81af982b6c98b733755d19c78f2f1c5ed
Reviewed-by: Michael Goddard <michael.goddard@nokia.com>
2012-01-23 08:15:28 +01:00
Dmytro Poplavskiy
7d826e38e7 Removed camera simulator backend.
It's not used on any Qt5 platform.

Change-Id: Ia5a97523c84fe273a265355cc51a1cfa68701085
Reviewed-by: Michael Goddard <michael.goddard@nokia.com>
2012-01-23 07:30:14 +01:00
Jason McDonald
6390157fd7 Update obsolete contact address.
Replace Nokia contact email address with Qt Project website.

Change-Id: Ie8cd560b6d9a2c6e552b6be1ad8bc96c80a6535c
Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
2012-01-23 04:21:51 +01:00
Dmytro Poplavskiy
8ff5b88b27 Changed metadata keys type from enum to QString.
This allows to combine metaData and extendedMetaData
and simplify metadata handling on both backend and application sides.

Change-Id: I136eedc86c215be3485db101c43069ca7c82101b
Reviewed-by: Michael Goddard <michael.goddard@nokia.com>
2012-01-20 06:30:37 +01:00
Michael Goddard
f050d8fe2b Use US spelling for organization.
Since it seems it was never implemented, don't keep the
legacy spelling.

Change-Id: Idc918548a4ed643ba7da35e97ce08f401e74303f
Reviewed-by: Jonas Rabbe <jonas.rabbe@nokia.com>
2012-01-19 05:37:51 +01:00
Rohan McGovern
7e76391c59 Fixed compile of quicktime plugin
This code was including the qmacdefines_mac.h header from QtWidgets,
which has recently been removed.  Using the header is no longer
necessary.

Note that the qmacdefines_mac.h contained a workaround for some mac
system headers declaring variables named `slots'.  Replace that
workaround with the standard no_keywords method.

Change-Id: Icd47a562d64953692e50a9fea8bb4a9c8424375c
Reviewed-by: Michael Goddard <michael.goddard@nokia.com>
2012-01-18 04:59:36 +01:00
Dmytro Poplavskiy
53d71baed3 Changed QCamera::captureMode property to QFlags
This enables the expression of extra camera modes like
viewfinder only or capture during video recording.

Change-Id: Ie02fdeef5eb7fd6fc2f133c1afb0141e37c22b06
Reviewed-by: Mithra Pattison <mithra.pattison@nokia.com>
Reviewed-by: Jonas Rabbe <jonas.rabbe@nokia.com>
2012-01-17 00:58:30 +01:00
Alexis Menard
0c88091bfc Fix build for the camera support of QtMultimedia GStreamer plugin.
Include the correct header file (it was renamed) and also remove
duplicate declaration.

Change-Id: I2683851e9fd0978427273c4739f47b54e1af743b
Reviewed-by: Simon Hausmann <simon.hausmann@nokia.com>
Reviewed-by: Michael Goddard <michael.goddard@nokia.com>
2012-01-14 09:14:54 +01:00
Jason McDonald
0dca769d5a Update year in Nokia copyright headers.
Update headers from before 2011 that were missed in the previous commit.

Change-Id: Ib0fd91a39ffc57117fe01280e34519c3f914fac0
Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
2012-01-12 01:08:31 +01:00
Michael Goddard
f7bfcdfa28 Remove widgets config test.
Since it's not guaranteed that other Qt modules will be built by the
time qmake is run (and config.tests are created) we can't rely on
compilation.  Just check the module.pri variable for widgets instead.

Change-Id: I352cf6427b748b89b69ec17588ce0dd83065090f
Reviewed-by: Jonas Rabbe <jonas.rabbe@nokia.com>
2012-01-11 01:00:42 +01:00
Michael Goddard
6b67a11032 Add the spot for spot metering mode.
Not yet fully documented in QML - needs a bit of an overhaul first.

Change-Id: Ic11684858fb872d0b4dcedf60b390571371db252
Reviewed-by: Dmytro Poplavskiy <dmytro.poplavskiy@nokia.com>
2012-01-06 07:26:59 +01:00
Michael Goddard
c97f5f8c2e Properly handle the case where QtWidgets is not available.
It does use a config test for now, just to make it clearer.  The Mac
backend currently requires widgets, but most of the others should work
without it (just not supporting QVideoWidget/WindowControl).

The QVideoDeviceControl interface was modified to remove the QIcon
usage - it was never implemented.

Unfortunately even the QML examples need widgets for the wrapper
application, and will need to be ported to QtGui based wrapper.

Change-Id: I8a55ad5cf09ab51749510bf16f49de0bd3f0bcdb
Reviewed-by: Ling Hu <ling.hu@nokia.com>
2012-01-06 05:26:01 +01:00
Jason McDonald
bc7d964a05 Update copyright year in license headers.
Change-Id: Ib82c1be5548443ef1f5e97b3d5641a2f55d212af
Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
2012-01-06 01:43:40 +01:00
Friedemann Kleint
3910efbda6 QtMultimedia: Fix compiler warnings.
- Fix deprecated QDeclarative includes.
- Comment out unused parameter.
- Remove trailing comma from enumeration value (Clang)

Reviewed-by: Michael Goddard <michael.goddard@nokia.com>

Change-Id: I31d54a12505f4e3a48eb4b7736a48d5dacc2c0d9
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com>
2012-01-05 08:18:37 +01:00
Mithra Pattison
f33731fe5a Fix readyChanged signal emit in gstreamervideorenderer
Modified handling of source update in gstreamervideorenderer as
the existing logic meant that it would never emit the readyChanged
signal.

Change-Id: I0a1488cfc151388fe0145d231001e502e9f45f0e
Reviewed-by: Michael Goddard <michael.goddard@nokia.com>
Reviewed-by: Mithra Pattison <mithra.pattison@nokia.com>
2011-12-21 07:36:27 +01:00
Jonas Rabbe
4f3294930a Fix X11 and QPA compilation problems
The X11 buffer pool was using outdated APIs, and as the 'qpa'
configuration value is being removed, it caused the X11 code
to be pulled in, and therefore cause compilation failures.

Change-Id: I5fdaed854c6525716fccca44b5fbd0b850880cb9
Reviewed-by: Michael Goddard <michael.goddard@nokia.com>
2011-12-13 01:22:28 +01:00
Toby Tomkins
581564c990 Fixed QtMultimedia core namespace compilation.
Change-Id: Ie276a7766bd26f3e49b2bc9c1a28ec96f1e3e4b0
Reviewed-by: Michael Goddard <michael.goddard@nokia.com>
2011-11-25 06:52:21 +01:00
Michael Goddard
0c7a747663 If we fail to connect to pulse, don't enumerate sinks or sources.
Otherwise the pulse client library dislikes having methods called
with a null context.

Change-Id: I96629065b7a0e36e0d10402526cb167e65458e27
Reviewed-by: Jonas Rabbe <jonas.rabbe@nokia.com>
2011-11-24 05:06:42 +01:00
Ling Hu
d0655b3ced Add cap on internal read/write buffer for QAudioOuput(PA)
cap set to no more than 5x period size

Change-Id: If3ae244993a8929832f6724c386dac6f12ef0f03
Reviewed-by: Michael Goddard <michael.goddard@nokia.com>
2011-11-15 07:17:23 +01:00
Ling Hu
d6c5d9faa6 Add additional protection on the write size in QAudioOuput(pulseaudio)
Check and cap the write size in pull mode to handle the case
where user returned an invalid write size through QIODevice

Change-Id: Ie0610a63f1d5400fba87f32a99bdc38479e0e7e8
Reviewed-by: Michael Goddard <michael.goddard@nokia.com>
Reviewed-by: Jonas Rabbe <jonas.rabbe@nokia.com>
2011-11-14 10:44:04 +01:00
Ling Hu
a8be7b6053 Fix pullmode data lost problem in QAudioOutput(pulseaudio)
At each userFeed, m_bytesAvailable is not updated properly in pullmode,
so the pull data size become irrelevent to the size we can actually write.
This problem is fixed by checking the actual writable size each time
before pulling the data and limit the size of the pulled and written data.

Change-Id: I6f53e6348693ddf4e3c79e90d3c3d0c1ffc713aa
Reviewed-by: Jonas Rabbe <jonas.rabbe@nokia.com>
Reviewed-by: Michael Goddard <michael.goddard@nokia.com>
2011-11-09 01:24:14 +01:00
Michael Goddard
ab52443dc5 We already have a mock backend.
Change-Id: Ic4f9277c4c4bff225ac6cd70d28b495a42435e35
Reviewed-by: Sergey Dubitskiy <sergey.dubitskiy@nokia.com>
Reviewed-by: Michael Goddard <michael.goddard@nokia.com>
2011-10-25 06:15:09 +02:00
Rohan McGovern
df19dfcb56 Fixed compile; QDesktopServices -> QStandardPaths
Broken by qtbase dfa24768a3243eda68d91f573050bf23f96da2dd.

Change-Id: Ie0d79eaee5c6fedfaacae69800f6aec9190f83db
Reviewed-by: Michael Goddard <michael.goddard@nokia.com>
2011-10-24 05:59:41 +02:00
Sami Nurmenniemi
6aea1a22ee Added RDS functionality to the QRadioTuner/QDeclarativeRadio
Change-Id: I865e3caba82977002cf1f01f1d64ee0a42de77c6
Reviewed-by: Jonas Rabbe <jonas.rabbe@nokia.com>
Reviewed-by: Michael Goddard <michael.goddard@nokia.com>
2011-10-21 03:40:14 +02:00
Jonas Rabbe
9deb0512a6 Fixed build problems with Quicktime
Because the Q_WS_* defines were removed, the Quicktime backend
stopped working. Replacing them with Q_OS_* works. Additionally,
the Quicktimer Player Service has to depend on QtWidgets.

Change-Id: I687b352191c38a91edaaf2a687ac13ed118fcf88
Reviewed-by: Michael Goddard <michael.goddard@nokia.com>
Reviewed-by: Dmytro Poplavskiy <dmytro.poplavskiy@nokia.com>
2011-10-20 05:02:13 +02:00
Jonas Rabbe
48d95f0baa Moved general gstreamer helper classes into separate library.
Cleaned up configuration of gstreamer with a separate config
test.

Change-Id: I1ec9ee466233687fbcfdc544a12d9fce578e4379
Reviewed-on: http://codereview.qt-project.org/6459
Sanity-Review: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Michael Goddard <michael.goddard@nokia.com>
2011-10-12 08:58:30 +02:00
Michael Goddard
03f22bcdaf Rename QtMultimediaKit to QtMultimedia.
There are a few legacy bits left in place so it passes CI, and
then qt5.git etc can be updated.

Change-Id: I6b082e50e6958c72fdabc2974992e16d90dafa3a
Reviewed-on: http://codereview.qt-project.org/5368
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Jonas Rabbe <jonas.rabbe@nokia.com>
2011-10-07 06:16:34 +02:00
hawcroft
a645b75e35 Add QAudioOutput volume API and pulseaudio backend implementation.
Change-Id: I70784e8d17522a23f6467713d58384b30557694b
Reviewed-on: http://codereview.qt-project.org/5663
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: derick hawcroft <derick.hawcroft@nokia.com>
2011-09-28 05:33:38 +02:00
Jonas Rabbe
788175b4f4 Fakeradio: emit signal when scanning aborted
Patch from Sami Nurmenniemi.

Emits searchingChanged(false)
when scanning is aborted because it was initiated too close to
the limits of the frequency range.

Change-Id: I15a1334c8a7058dd8eb413c2742f8f12aed7bed5
Reviewed-on: http://codereview.qt-project.org/5570
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Michael Goddard <michael.goddard@nokia.com>
2011-09-27 05:29:35 +02:00
Dmytro Poplavskiy
7941413f3f Gst player backend: don't show the first frame when resuming playback.
It's necessary to temporarily disable show-preroll-frame of video sink,
load pipeline to paused state, seek to requested position,
and after seeking is finished (position updated) playback is started
with show-preroll-frame restored.

Task-number: MOBILITY-3030
Reviewed-by: Jonas Rabbe
Change-Id: Ide1e6d909dd53f670229c293bc6be496a54e8626
(cherry picked from commit 625cce87e28fc7b5ec8785824affb3129fd3607b)
Reviewed-on: http://codereview.qt-project.org/5500
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Jonas Rabbe <jonas.rabbe@nokia.com>
2011-09-27 01:06:04 +02:00
Ling Hu
589b2e3adf Fix a playback bug for mediaplayer windows media foundation backend
Task-number:QTMOBILITY-1606

Reviewed-by:Jonas Rabbe
(cherry picked from commit d5426bf52e19c9c6a52837b423f48024979ea076)

Change-Id: Ie7c1c90a8f5a64e77c435ffc1917d8f9638dfff3
Reviewed-on: http://codereview.qt-project.org/5499
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Michael Goddard <michael.goddard@nokia.com>
2011-09-26 07:22:52 +02:00
Gareth Stockwell
8c29d67e67 Fixed a typo in the WMF backend which caused a compilation failure
Reviewed-by: trustme
(cherry picked from commit 7eab979c41513321518d5e3cea6d142bbf4e58d9)

Change-Id: I9cd5de907867ea6561c568d10c88e3bf5a701509
Reviewed-on: http://codereview.qt-project.org/5496
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Michael Goddard <michael.goddard@nokia.com>
2011-09-26 07:21:35 +02:00
Ling Hu
ea4c32602d fix a spelling error
Change-Id: Ic593f342055a4ff65503bd92236ff2904012d4f4
Reviewed-by:Michael Goddard
(cherry picked from commit d9cd5386f6d9aa1c702424d272d70a0b45a6b9db)
Reviewed-on: http://codereview.qt-project.org/5495
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Michael Goddard <michael.goddard@nokia.com>
2011-09-26 07:21:12 +02:00
Michael Goddard
247dcc770b Move resource policy usage to a config test.
MeeGo uses this too.

Change-Id: I0b7ec00538289d4a3beea62da08233c0d1eb45a2
Reviewed-on: http://codereview.qt-project.org/5447
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Jonas Rabbe <jonas.rabbe@nokia.com>
2011-09-26 02:16:25 +02:00
Dmytro Poplavskiy
aef6b5a38a Camerabin backend: fixed compilation without X11
Disable video widget and overlay controls on systems without X11

Change-Id: I0163fa83018b35ba6f0f8221ad3c465506b52d00
Reviewed-on: http://codereview.qt-project.org/4850
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: derick hawcroft <derick.hawcroft@nokia.com>
2011-09-17 07:32:37 +02:00
Gunnar Sletta
eedcc340f1 Compile with refactor
Change-Id: I248f811a13ca00ccbf5d342a556d389bca625856
Reviewed-on: http://codereview.qt-project.org/4940
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Michael Goddard <michael.goddard@nokia.com>
2011-09-17 03:24:15 +02:00
Lasse Holmstedt
4840be0239 Build fix after refactor
Change-Id: I2de40846fc7402ddf32259d42a486a74330ff626
2011-09-13 13:28:28 +02:00
Michael Goddard
7507c80524 Fix some compiler warnings.
Mostly about deprecated ASCII casts.

Change-Id: I70428913799c15f20a1a5f80be57848e1072e058
Reviewed-on: http://codereview.qt.nokia.com/4158
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Jonas Rabbe <jonas.rabbe@nokia.com>
2011-09-05 04:53:14 +02:00
Jonas Rabbe
6781063df6 Merge branch 'radio' into 'master'
Change-Id: I86243b496b9fb42f828a67343dc576baa2c21ca0
2011-08-31 13:09:47 +10:00