Commit Graph

553 Commits

Author SHA1 Message Date
Ling Hu
c814062dff Fix volume change error on mono stream for soundeffect(pulseaudio)
(Cherry-picked from 663df44fc8563c548c26a7ae21927b09664c28f2)

Change-Id: I005071bc1a8b2eae4d0660042fc8986d61804c47
Reviewed-by: Michael Goddard
Reviewed-by: Michael Goddard <michael.goddard@nokia.com>
2011-11-17 06:47:27 +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
Dmytro Poplavskiy
434075645a Added support for non QMediaObject based VideoOutput sources.
VideoOutput element checks first for mediaObject property of
source object and if it's not available it checks
for videoSurface property.

It allows to implement video frames generator and connect it
to optimized VideoOutput QML element.

Change-Id: I8ee618cf61b9d9100f25e742c631ea8724c188dc
Reviewed-by: Jonas Rabbe <jonas.rabbe@nokia.com>
2011-11-15 02:28:02 +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
Jonas Rabbe
956526a9fb Changed QVideoSurfaceGstSink to take pools from plugins
Change-Id: Iec743efc52513e2000276b9a18d1d9639c270699
Reviewed-by: Dmytro Poplavskiy <dmytro.poplavskiy@nokia.com>
2011-11-14 07:59:19 +01:00
Michael Goddard
8ff4148342 Add qRegisterMetaTypes for the public Q_DECLARE_METATYPEs.
Also turned qtmedianamespace.qdoc into a cpp file so I
could stick the qRegisterMetaTypes into it.

Change-Id: Idd6d3e2f348f1ed45b0a35ce180d023a170e8625
Reviewed-by: Jonas Rabbe <jonas.rabbe@nokia.com>
2011-11-09 01:24:18 +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
9eeb1389f5 Change the order textures are bound.
Leave texture unit 0 active at the end, since the active texture unit
is not restored by SG itself.

Change-Id: I4970a955fea5c9342cc93c1d1b07ffbfb71e5f04
Reviewed-by: Dmytro Poplavskiy <dmytro.poplavskiy@nokia.com>
2011-11-08 08:06:50 +01:00
Jonas Rabbe
0a95ccb8f4 Added qRegisterMetatype for QVideoSurfaceFormat.
Change-Id: I7dbae1dde2f24db89479dcb23ef6fc5e29377f25
Reviewed-by: Dmytro Poplavskiy <dmytro.poplavskiy@nokia.com>
2011-11-08 05:24:04 +01:00
Bradley T. Hughes
fbac3a0647 Use QAtomicInt::load() and ::store()
The operator=(int) and implicit int cast operators are deprecated
and will be removed.

Change-Id: I5091d705fba45195239c901f210355e09e123faa
Reviewed-by: João Abecasis <joao.abecasis@nokia.com>
2011-11-07 16:32:32 +01:00
Michael Goddard
7dfb883df6 Declare more metatypes and debug operators.
Nearly all of the multimedia metatypes used in the auto tests are
now declared properly, and a large number of the types have debug
operators as well.

Removed the superfluous decls as well.

Change-Id: I42cfe37562db0c71d9811b4577fc326a3326ccc9
Reviewed-by: Jonas Rabbe <jonas.rabbe@nokia.com>
2011-11-02 02:38:02 +01:00
Michael Goddard
6a3a442ea6 Add a private class, since we now can.
This was a XXX Qt5 thing for binary compatibility. We could also
now use QObjectPrivate if we wanted to.

Change-Id: I7d95e3adf7b0725e91e1e229646a453863e989ed
Reviewed-by: Dmytro Poplavskiy <dmytro.poplavskiy@nokia.com>
2011-11-01 10:29:00 +01:00
Friedemann Kleint
6703ebf362 QtMultimedia: Remove qpa-sections from .profiles.
Prepare for removal of the -qpa configure option.

Change-Id: Ibf4be58231d29cd972eb765f32b410e1eb9d7fed
Reviewed-by: Jonas Rabbe <jonas.rabbe@nokia.com>
2011-11-01 01:40:47 +01:00
Kent Hansen
18dc690a19 Fix logic in QAudioDeviceInfoInternal::updateLists()
Task-number: QTBUG-20482

Change-Id: I0dd59a0388965726eb8cfd36a8549250916d999a
Reviewed-by: Michael Goddard <michael.goddard@nokia.com>
2011-10-31 05:55:16 +01:00
Michael Goddard
0ba1c8f4f6 Remove the last bits of QtMultimediaKit (*).
Except a comment about it in the module overview.

Change-Id: I22d9111d7917d1a3259ee1e525fd52501733454e
Reviewed-by: Michael Goddard <michael.goddard@nokia.com>
2011-10-27 03:09:27 +02:00
Michael Goddard
d3ceea30f8 Use deleteLater when called on a decoder error.
Since we cleanup the decoder itself, it can crash when the stack
unwinds back into the decoder code.  Similarly on a network error.

Change-Id: Ice36a3008359565f186406945973747b3134d296
Reviewed-by: Ling Hu <ling.hu@nokia.com>
(cherry picked from commit fb10bcf6cea520e1c43a77b6b88cf01ae9dc74ad)
2011-10-27 03:07:26 +02:00
Rohan McGovern
1718443801 Don't ignore debug plugins on Mac when release plugins aren't available
Previously, we unconditionally ignored any plugins whose names ended
with _debug.dylib.  This makes the mediaservice plugins unusable on Mac
if Qt is configured to build plugins as debug-only (which is
incidentally the default).

Change-Id: I5a8981b2251e803fa233b74c968f6eaa452d367c
Reviewed-by: Michael Goddard <michael.goddard@nokia.com>
2011-10-25 06:15:12 +02: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
Michael Goddard
89b6bcbd96 Declare these metatypes.
Change-Id: I5b10669f2b17f67d95469dc28e99822d7f08280c
Reviewed-by: derick hawcroft <derick.hawcroft@nokia.com>
2011-10-25 06:15:06 +02:00
Kent Hansen
711f49efea Adapt to QtDeclarative api renaming (QSG --> QQuick)
Change-Id: Iefee24c6262679263caef1976d0d9af541834ea0
Reviewed-by: Michael Goddard <michael.goddard@nokia.com>
2011-10-24 05:59:53 +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
Michael Goddard
cbb21e30d5 Limit the sequential bytes skipping to a max 16kB at a time.
Otherwise QIODevice::read will try and allocate whatever junk is
passed in, so a corrupt chunk can result in 1GB+ allocations which
are never actually used.

Change-Id: I1ea4a5c1a5d21b1ee6f7e428105c52c0ee6ca7f7
Reviewed-by: Jonas Rabbe <jonas.rabbe@nokia.com>
2011-10-21 03:39:15 +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
Ling Hu
9011296e65 Init mediaobject at classBegin rather than componentComplete
Since we use an explicit backgroundaudio class,
there is no need to wait for other property to determine
the mediaobject type. So it is better to init the mediaobject
at classBegin to prevent being accessed before mediaobject initialized.

Change-Id: Ia55b8b4c1ab70cc0acbf6f49bcb3e20bdb813a88
Reviewed-by: Michael Goddard <michael.goddard@nokia.com>
Reviewed-by: Jonas Rabbe <jonas.rabbe@nokia.com>
Reviewed-by: Dmytro Poplavskiy <dmytro.poplavskiy@nokia.com>
2011-10-17 06:02:10 +02:00
Michael Goddard
d414247afe Make the C++ API of QSoundEffect public.
The QML API already was.  The C++ API still needs good documentation,
though.

Change-Id: I669f5ec7dd17d616788d71d77dc906acc0c0279f
Reviewed-by: Jonas Rabbe <jonas.rabbe@nokia.com>
Reviewed-by: Ling Hu <ling.hu@nokia.com>
2011-10-17 05:10:21 +02:00
Dmytro Poplavskiy
21fbb1d025 Declarative VideoOutput: added support for more rgb formats.
RGB 565, RGB 32 and BGR 32 formats added,
all of them supported with OpenGL ES.

Change-Id: I026628611c59575af5934bac0a5f95dfbc6770cb
Reviewed-on: http://codereview.qt-project.org/6644
Reviewed-by: Michael Goddard <michael.goddard@nokia.com>
Reviewed-by: Jonas Rabbe <jonas.rabbe@nokia.com>
2011-10-14 08:37:46 +02:00
Jonas Rabbe
6b25a189ca Copied ALSA config test into QtMultimedia module
The config test which still exists in QtBase should be removed at a
later date, together with pulseaudio and gstreamer config tests.

Change-Id: I4bea45ab69d1bac10814fc60ecf24dbc859b0f20
Reviewed-on: http://codereview.qt-project.org/6643
Reviewed-by: Ling Hu <ling.hu@nokia.com>
Reviewed-by: Michael Goddard <michael.goddard@nokia.com>
2011-10-14 05:16:46 +02:00
Michael Goddard
7a7aadce90 Make sure this library gets installed.
Change-Id: I6b556b3b22deae002d2d2cf47680f23e207b5d00
Reviewed-on: http://codereview.qt-project.org/6639
Reviewed-by: Jonas Rabbe <jonas.rabbe@nokia.com>
2011-10-14 04:20:29 +02:00
Friedemann Kleint
930d99948f Multimedia: Compile on Windows.
MSVC is more strict about #include <> and #include "".

Reviewed-by: Ling Hu <ling.hu@nokia.com>

Change-Id: I8973d7b2717d892407ad93785f92a64b05bdb6b5
Reviewed-on: http://codereview.qt-project.org/6134
Sanity-Review: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com>
2011-10-12 09:00:27 +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
0da05239d2 Rename the parsing error signal to parsingError.
Refactor the error handling code a little.

Change-Id: I717b3aaacb24660b3f26769f19ac718b73106473
Reviewed-on: http://codereview.qt-project.org/6401
Sanity-Review: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: derick hawcroft <derick.hawcroft@nokia.com>
2011-10-11 08:59:51 +02:00
Michael Goddard
8943111428 Fix the wavedecoder a little.
Handle RIFX and corrupted files better.  Update the autotest so that it
is run properly (and copies files properly in shadow build).  Fix the
gendata script to properly create testdata.

Change-Id: I47b705507bebaef54df2835ec767c6b220c64678
Reviewed-on: http://codereview.qt-project.org/6380
Sanity-Review: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: derick hawcroft <derick.hawcroft@nokia.com>
2011-10-11 08:59:48 +02:00
hawcroft
cee992cdd6 bail out in case of missing descriptors
Change-Id: I7c231367a4b5ef2d15fd1a7af2c2a6c1d51c9460
Reviewed-on: http://codereview.qt-project.org/6279
Sanity-Review: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Jonas Rabbe <jonas.rabbe@nokia.com>
Reviewed-by: Michael Goddard <michael.goddard@nokia.com>
2011-10-10 07:18:02 +02:00
Michael Goddard
adca03adfd Improve video test coverage and debugging output.
Added a few debug operators for some useful enums, and
added tests for them.  One or two other features not really
tested.

Change-Id: Idffec6ade1d4e05dbf72f3dc47dfc0d01ddddf8b
Reviewed-on: http://codereview.qt-project.org/6201
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Jonas Rabbe <jonas.rabbe@nokia.com>
2011-10-07 08:29:57 +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
Ling Hu
55bc4f2b46 Add a new servicename for background mediaplayer
Change-Id: I40b3670462f0b865a9e64bd2abd6d6a01db01e80
Reviewed-on: http://codereview.qt-project.org/4492
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Michael Goddard <michael.goddard@nokia.com>
Reviewed-by: derick hawcroft <derick.hawcroft@nokia.com>
2011-09-30 04:51:47 +02:00
Ling Hu
989aefc5f1 Update background audio element to use new service name
Change-Id: I8f0480e4fb40b034f75dcd900f2d440fd0e7610d
Reviewed-on: http://codereview.qt-project.org/4493
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Michael Goddard <michael.goddard@nokia.com>
Reviewed-by: derick hawcroft <derick.hawcroft@nokia.com>
2011-09-30 04:51:42 +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
hawcroft
a328dab2e3 Needs widgets module to build.
Change-Id: I95ba0c64843bfcdfc9797c4d818ac17606e4a1d3
Reviewed-on: http://codereview.qt-project.org/5563
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: derick hawcroft <derick.hawcroft@nokia.com>
2011-09-27 01:05:10 +02:00
Michael Goddard
a24b8d3a61 Fix a few QT_BEGIN/END_HEADER pairs.
Change-Id: Ie723af34680222b939aeb0179df21d63cec3cf3b
Reviewed-on: http://codereview.qt-project.org/5514
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Jonas Rabbe <jonas.rabbe@nokia.com>
2011-09-27 00:05:52 +02:00
Michael Goddard
136adad652 Remove QApplication usage - it's in QCoreApplication.
Change-Id: I0c1fab0c0eea56f1ecb141d6238acdf2778c82d8
Reviewed-on: http://codereview.qt-project.org/5513
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Sergey Dubitskiy <sergey.dubitskiy@nokia.com>
2011-09-26 08:55:41 +02:00
Michael Goddard
26d8bedc39 Move the backend specific documentation into a nicer place.
We really don't need to bore the 99.9% of people who won't care.  And
it's certainly not more important than camera.

Reviewed-by: Derick Hawcroft
(cherry picked from commit 51e3a1bc45ffc2688fcd3949216aedda4c41bf81)

Change-Id: I8add47e42c2c06bf5e16f406604a19531af6901e
Reviewed-on: http://codereview.qt-project.org/5501
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Michael Goddard <michael.goddard@nokia.com>
2011-09-26 07:23:35 +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
be98375f90 Merge branch 'camera' of ssh://codereview.qt-project.org:29418/qt/qtmultimediakit
Conflicts:
	src/imports/multimedia/multimedia.cpp
	src/imports/multimedia/multimedia.pro

Change-Id: I9d4bc1aa65f89ac24dd12c1e2c21a02f49913e13
2011-09-26 14:17:32 +10: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