platform/upstream/qtmultimedia.git
12 years agoFix compilation without QtWidgets and QtOpenGL on Mac
Kent Hansen [Wed, 6 Jun 2012 20:21:39 +0000 (22:21 +0200)]
Fix compilation without QtWidgets and QtOpenGL on Mac

Change-Id: I3cff7e41d27955e37bc8207e4820fdc21ce75f7b
Reviewed-by: Michael Goddard <michael.goddard@nokia.com>
12 years agoDon't use QtWidgets/QApplication in autotests
Kent Hansen [Wed, 6 Jun 2012 12:43:33 +0000 (14:43 +0200)]
Don't use QtWidgets/QApplication in autotests

These tests don't link against QtWidgets; including QGuiApplication
is sufficient.

Change-Id: I96812af7ac5ef79a9602acf4b51498350e8e50e1
Reviewed-by: Michael Goddard <michael.goddard@nokia.com>
12 years agoAdded QAbstractVideoBuffer::release virtual method
Dmytro Poplavskiy [Wed, 6 Jun 2012 04:35:42 +0000 (14:35 +1000)]
Added QAbstractVideoBuffer::release virtual method

It's useful when the buffer pool stores QAbstractVideoBuffer
instances instead of underlying system buffers and
allows to avoid reallocation of QAbstractVideoBuffer instances.

The default implementation deletes the buffer,
so this change is source compatible.

Change-Id: I7dadd7dac529748b5eb33e5aa7c2d0578b8b1634
Reviewed-by: Lev Zelenskiy <lev.zelenskiy@nokia.com>
Reviewed-by: Jonas Rabbe <jonas.rabbe@gmail.com>
Reviewed-by: Michael Goddard <michael.goddard@nokia.com>
12 years agoRemoved encoding options from Audio/Video encoding controls
Dmytro Poplavskiy [Wed, 6 Jun 2012 04:06:04 +0000 (14:06 +1000)]
Removed encoding options from Audio/Video encoding controls

They are replaced with encoding options from
QAudio/Video/ImageEncoderSettings.
This also allows to specify options without
requesting controls.

Change-Id: I507e68cdb8cb46325689804d27c6d0561cada50b
Reviewed-by: Lev Zelenskiy <lev.zelenskiy@nokia.com>
Reviewed-by: Michael Goddard <michael.goddard@nokia.com>
12 years agoA number of documentation fixes.
Michael Goddard [Wed, 6 Jun 2012 02:28:34 +0000 (12:28 +1000)]
A number of documentation fixes.

* Remove references to private QMediaServiceProvider class and point
  new backend writers to irc/mailing lists
* Wrong or missing parameter names
* Fix a few links
* Correct a few property data types
* Various other things to keep qdoc happier

Change-Id: I5c8800d65c00f0783541afef35990bd3918acab7
Reviewed-by: Angus Cummings <angus.cummings@nokia.com>
Reviewed-by: Ling Hu <ling.hu@nokia.com>
Reviewed-by: Daniel Kovacic <daniel.kovacic@nokia.com>
12 years agoClarify the metadata functionality of QMediaPlayer.
Michael Goddard [Tue, 5 Jun 2012 06:36:35 +0000 (16:36 +1000)]
Clarify the metadata functionality of QMediaPlayer.

By linking to QMediaObject functions.  Also clean that up a bit so it's
a bit more useful for people looking for higher level functionality.

Change-Id: Ie452122c4d55f88326a7b71c5882dfe38f489791
Reviewed-by: Angus Cummings <angus.cummings@nokia.com>
Reviewed-by: Ling Hu <ling.hu@nokia.com>
Reviewed-by: Dmytro Poplavskiy <dmytro.poplavskiy@nokia.com>
Reviewed-by: Daniel Kovacic <daniel.kovacic@nokia.com>
12 years agoQVideoWindowControl moved to QtMultimedia, fix docs.
Michael Goddard [Tue, 5 Jun 2012 02:24:59 +0000 (12:24 +1000)]
QVideoWindowControl moved to QtMultimedia, fix docs.

Change-Id: I870e5997822b60d8fba07e28ff907cbb3fef6036
Reviewed-by: Jonas Rabbe <jonas.rabbe@gmail.com>
12 years agoUse QPointer instead of QWeakPointer to track QObjects.
Stephen Kelly [Wed, 6 Jun 2012 09:39:59 +0000 (11:39 +0200)]
Use QPointer instead of QWeakPointer to track QObjects.

The latter is to be deprecated.

Change-Id: I01998be880feba0819a9bc51f9bec48fd4601789
Reviewed-by: Dmytro Poplavskiy <dmytro.poplavskiy@nokia.com>
12 years agoRemove the last remainders of the old plugin system
Lars Knoll [Sun, 27 May 2012 10:20:55 +0000 (12:20 +0200)]
Remove the last remainders of the old plugin system

Port the last two currently unused plugins (v4l and wmf) over to the new plugin
format.

Fix documentation that still mentioned Q_EXPORT_PLUGIN.

Change-Id: I18200dd792e8973687e92180fc41d11395b35132
Reviewed-by: Jonas Rabbe <jonas.rabbe@gmail.com>
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
12 years agoCall the base QQuickItem geometryChanged function in our override.
Michael Goddard [Tue, 5 Jun 2012 03:27:52 +0000 (13:27 +1000)]
Call the base QQuickItem geometryChanged function in our override.

Otherwise you get strange errors like the width/height of a
VideoOutput element are 0.

Change-Id: Ib123112b513f5ed2f0ce24da6dbfe00e20551d74
Reviewed-by: Alan Alpert <alan.alpert@nokia.com>
12 years agoAvoid string-based, dynamic lookup of signals
Kent Hansen [Sun, 3 Jun 2012 21:06:48 +0000 (23:06 +0200)]
Avoid string-based, dynamic lookup of signals

Qt5 has a new function QMetaMethod::fromSignal() for obtaining
the meta-method that corresponds to a particular signal (member
function).

This also avoids calling the virtual metaObject() function to
resolve the meta-method every time the signal is emitted; it is
known at compile-time which class the signals are defined in,
so it's safe to retain the meta-methods across calls.

Change-Id: I47328ec2dfc335c570fb18bcd304a2ee405bfd6e
Reviewed-by: Dmytro Poplavskiy <dmytro.poplavskiy@nokia.com>
12 years agoadd multimediawidgets before gsttools to SUBDIRS
Oswald Buddenhagen [Tue, 22 May 2012 16:04:58 +0000 (18:04 +0200)]
add multimediawidgets before gsttools to SUBDIRS

the build dependency does not override the qmake processing order, but
this will become important soon.

Change-Id: I8ef88285f9c12829080e6f5e1cc0349dd59f83b8
Reviewed-by: Jonas Rabbe <jonas.rabbe@gmail.com>
12 years agoensure important docs are built by the automated publisher
Angus Cummings [Fri, 1 Jun 2012 03:02:18 +0000 (13:02 +1000)]
ensure important docs are built by the automated publisher

this workaround makes sure that qdoc can find the \class
and \namespace declarations.

Change-Id: I950e6fbc10064f438d7f282ff20783acdf20de27
Reviewed-by: Michael Goddard <michael.goddard@nokia.com>
12 years agoRenaming the QML overview page
Angus Cummings [Thu, 31 May 2012 01:57:21 +0000 (11:57 +1000)]
Renaming the QML overview page

There is a requirement that we refer to internal QML
groups as 'API' rather than 'plugin'

Change-Id: I8dc19435cf3f0d24f714b9840f5b83c6c74f7fa8
Reviewed-by: Michael Goddard <michael.goddard@nokia.com>
12 years agoFixing doc errors in MediaPlayer and CameraFlash
Angus Cummings [Tue, 22 May 2012 01:32:50 +0000 (11:32 +1000)]
Fixing doc errors in MediaPlayer and CameraFlash

properties were not showing up for either type. There were
namespace errors in flash, and mediaplayer docs needed to
be copied from audio.

Change-Id: I53fa721ec9e0cfa1aee3586c7e3eb608b9a1b465
Reviewed-by: Jonas Rabbe <jonas.rabbe@gmail.com>
12 years agoAdd gstreamer.json to OTHER_FILES
Johannes Zellner [Thu, 31 May 2012 22:14:57 +0000 (15:14 -0700)]
Add gstreamer.json to OTHER_FILES

Change-Id: Ic063a2bd96c9445b6d1af049df6cf3e33572d547
Reviewed-by: Girish Ramakrishnan <girish.1.ramakrishnan@nokia.com>
12 years agoFixed not initialized QVideoFrame mappedCount member
Dmytro Poplavskiy [Tue, 29 May 2012 04:09:15 +0000 (14:09 +1000)]
Fixed not initialized QVideoFrame mappedCount member

Change-Id: Ic0b915df120222b0bb440698c010f0e83ccce8c3
Reviewed-by: Michael Goddard <michael.goddard@nokia.com>
12 years agoRelease string after gst_cap_to_string is called.
bigbearzhu [Mon, 28 May 2012 05:51:03 +0000 (15:51 +1000)]
Release string after gst_cap_to_string is called.

Change-Id: I4bf8086e4413b4acb851d67919ac1014705bab03
Reviewed-by: Dmytro Poplavskiy <dmytro.poplavskiy@nokia.com>
12 years agoMade pulsedevices high priority than oss for recording
Ling Hu [Fri, 25 May 2012 06:39:55 +0000 (16:39 +1000)]
Made pulsedevices high priority than oss for recording

Change-Id: Iae607d3ee0bcaa21142e264edb32ed0e631a4a03
Reviewed-by: Mithra Pattison <mithra.pattison@nokia.com>
Reviewed-by: Dmytro Poplavskiy <dmytro.poplavskiy@nokia.com>
12 years agoReplaced camera viewfinder resolution control with settings control
Dmytro Poplavskiy [Fri, 18 May 2012 04:38:54 +0000 (14:38 +1000)]
Replaced camera viewfinder resolution control with settings control

It allows to specify a number of camera fiewfinder parameters
including frame rate, resolution and pixel format.

It also allows to extend the list of parameters without breaking source
or binary compatibility.

Change-Id: Ibea85a968ab7ee7b8d1ae34c7fcbac8f5586f53f
Reviewed-by: Jonas Rabbe <jonas.rabbe@gmail.com>
12 years agoReordering audio overview doc
Angus Cummings [Fri, 18 May 2012 01:24:18 +0000 (11:24 +1000)]
Reordering audio overview doc

Trying to put more common use cases earlier in the
list of implementation details.

Change-Id: I11195d5d2f7846dec3342d43fe3917fb13374daa
Reviewed-by: Ling Hu <ling.hu@nokia.com>
Reviewed-by: Dmytro Poplavskiy <dmytro.poplavskiy@nokia.com>
12 years agoFix compilation when appsrc is not available.
Johannes Zellner [Fri, 11 May 2012 23:20:26 +0000 (16:20 -0700)]
Fix compilation when appsrc is not available.

Change-Id: I96c9aad94b5eb0734854bc7cf0126cad6841c0cd
Reviewed-by: Jonas Rabbe <jonas.rabbe@gmail.com>
12 years agoAdded custom parameters to Audio/Video/ImageEncodingSettings
Dmytro Poplavskiy [Fri, 18 May 2012 00:26:51 +0000 (10:26 +1000)]
Added custom parameters to Audio/Video/ImageEncodingSettings

This allows to specify more advanced and system/codec specific settings

Change-Id: Ia0a2e94eaf56df285a219018e0beab895a2e7c2a
Reviewed-by: Ling Hu <ling.hu@nokia.com>
12 years agoAdded missing QDeclarativeCamera::CaptureViewfinder enum value
Dmytro Poplavskiy [Fri, 18 May 2012 01:53:45 +0000 (11:53 +1000)]
Added missing QDeclarativeCamera::CaptureViewfinder enum value

Change-Id: I75844e3a943a76649d1b51f0c845a4bf8b200a8e
Reviewed-by: Ling Hu <ling.hu@nokia.com>
12 years agoFixed typo in QCamera::Status documentation
Dmytro Poplavskiy [Fri, 18 May 2012 01:56:08 +0000 (11:56 +1000)]
Fixed typo in QCamera::Status documentation

Change-Id: I8ee9db0e91eceaa20a46713370a9cbd03ead6444
Reviewed-by: Ling Hu <ling.hu@nokia.com>
12 years agoQML VideoOutput: don't keep video frames for more than necessary
Dmytro Poplavskiy [Wed, 16 May 2012 04:05:45 +0000 (14:05 +1000)]
QML VideoOutput: don't keep video frames for more than necessary

The frame can be released as soon as it pushed to video node.

Change-Id: Ib2621cc2a001629e722bf15b6e1ca09323170870
Reviewed-by: Mithra Pattison <mithra.pattison@nokia.com>
Reviewed-by: Ling Hu <ling.hu@nokia.com>
12 years agoExpose camera status to QML Camera element
Dmytro Poplavskiy [Wed, 16 May 2012 03:25:38 +0000 (13:25 +1000)]
Expose camera status to QML Camera element

It's exposed as Camera.cameraStatus property.

Change-Id: Id3b477266d3a666b7a2a61cd4579f0e3f873d3b8
Reviewed-by: Mithra Pattison <mithra.pattison@nokia.com>
Reviewed-by: Ling Hu <ling.hu@nokia.com>
12 years agoVery minor C++ doc changes
Angus Cummings [Fri, 11 May 2012 01:13:45 +0000 (11:13 +1000)]
Very minor C++ doc changes

Reordering some enum's so values are listed ascending
Replace 'The' with 'the' in some briefs

Change-Id: Ibc5042389687598ddaaf11e72acaa688b85fd4cf
Reviewed-by: Dmytro Poplavskiy <dmytro.poplavskiy@nokia.com>
Reviewed-by: Ling Hu <ling.hu@nokia.com>
12 years agoMinor doc fixes for QML
Angus Cummings [Mon, 30 Apr 2012 06:49:23 +0000 (16:49 +1000)]
Minor doc fixes for QML

renaming QML element to QML type
removing some \fn tags that were making the docs not build
some rewording
some new signal docs

Change-Id: I9b350dad1780276959aef4105e53b91082a6083e
Reviewed-by: Dmytro Poplavskiy <dmytro.poplavskiy@nokia.com>
12 years agoGst backend: allow rendering other video buffers than allocated
Dmytro Poplavskiy [Mon, 14 May 2012 03:10:09 +0000 (13:10 +1000)]
Gst backend: allow rendering other video buffers than allocated

Moved checking the buffer type to the buffer pool
instead of comparing the buffer type in QVideoSurfaceGstSink.

Some gstreamer elements may push other buffer instance than
provided by sink but with the same data pointer.

Change-Id: Iab3bf4da2d5eeb5d2a9375aa609a89515b067ce3
Reviewed-by: Lev Zelenskiy <lev.zelenskiy@nokia.com>
Reviewed-by: Ling Hu <ling.hu@nokia.com>
12 years agoFixed QML Camera errors reporting
Dmytro Poplavskiy [Mon, 14 May 2012 01:54:55 +0000 (11:54 +1000)]
Fixed QML Camera errors reporting

Added missing connection to QCamera::error() signal
Added Camera.errorCode property

Change-Id: Ie0dd71d760b4b5b79b2aefaba97bc383ef2a9750
Reviewed-by: Ling Hu <ling.hu@nokia.com>
12 years agoImproved QDeclarativeCameraRecorder errors reporting
Dmytro Poplavskiy [Fri, 11 May 2012 05:45:08 +0000 (15:45 +1000)]
Improved QDeclarativeCameraRecorder errors reporting

Added QDeclarativeCameraRecorder::Error enum to allow
specify error codes as CameraRecorder.FormatError.

Added QDeclarativeCameraRecorder::errorCode property.

Change-Id: Iac5522c3110591493b98e59db18dbfc2d3b7496f
Reviewed-by: Lev Zelenskiy <lev.zelenskiy@nokia.com>
Reviewed-by: Ling Hu <ling.hu@nokia.com>
12 years agoAdded QMediaRecorder::OutOfSpaceError error code
Dmytro Poplavskiy [Fri, 11 May 2012 05:32:02 +0000 (15:32 +1000)]
Added QMediaRecorder::OutOfSpaceError error code

Change-Id: Ib09208a84f83f00992878f881ee2120932779a16
Reviewed-by: Lev Zelenskiy <lev.zelenskiy@nokia.com>
Reviewed-by: Ling Hu <ling.hu@nokia.com>
12 years agoGStreamer player session: remove code for old playbin.
Lev Zelenskiy [Fri, 11 May 2012 05:42:04 +0000 (15:42 +1000)]
GStreamer player session: remove code for old playbin.

We only support 'playbin2'.

Change-Id: Ibe35f71377862cb83742c2f9b606c5e2fdd5199d
Reviewed-by: Dmytro Poplavskiy <dmytro.poplavskiy@nokia.com>
12 years agoQAudioOutput: low-latency related changes.
Lev Zelenskiy [Tue, 8 May 2012 04:06:30 +0000 (14:06 +1000)]
QAudioOutput: low-latency related changes.

- Decrease timer period to 10ms;
- Set PulseAudio buffer size if specified by the user;
- Set PulseAudio buffer size to 40ms if not specified;
- Always request 1 chunk of data at a time in pull mode;

Change-Id: If95c097c67c3342f733bde9e699518741d7ef991
Reviewed-by: Dmytro Poplavskiy <dmytro.poplavskiy@nokia.com>
12 years agoDon't use QtDeclarative compat module
Kent Hansen [Thu, 10 May 2012 13:57:06 +0000 (15:57 +0200)]
Don't use QtDeclarative compat module

Use QtQml instead.

Change-Id: I7618ba89a2ed288f7043ae402ac091a924598f03
Reviewed-by: Dmytro Poplavskiy <dmytro.poplavskiy@nokia.com>
12 years agoUpdate duration information after switching to PLAYING state.
Lev Zelenskiy [Wed, 9 May 2012 02:02:54 +0000 (12:02 +1000)]
Update duration information after switching to PLAYING state.

For rtsp streams duration information might not be available
until playback starts.

Change-Id: Id8829408a4bd2c0fc6a89f2d059d23a5a95d940e
Reviewed-by: Dmytro Poplavskiy <dmytro.poplavskiy@nokia.com>
12 years agoWhen resource is lost pause the pipeline instead of stopping it.
Lev Zelenskiy [Fri, 11 May 2012 04:47:03 +0000 (14:47 +1000)]
When resource is lost pause the pipeline instead of stopping it.

Change-Id: Iccbf2f820ec6373d5853accc064dad659858514c
Reviewed-by: Dmytro Poplavskiy <dmytro.poplavskiy@nokia.com>
12 years agoRenaming audioengine overview to Positional Audio
Angus Cummings [Fri, 11 May 2012 04:59:31 +0000 (14:59 +1000)]
Renaming audioengine overview to Positional Audio

Change-Id: I1688b5e76f7b3a8eecd5fcf060717b49f7a36f4e
Reviewed-by: Ling Hu <ling.hu@nokia.com>
Reviewed-by: Dmytro Poplavskiy <dmytro.poplavskiy@nokia.com>
12 years agoQGStreamerPlayerSession: unref pads after using them.
Lev Zelenskiy [Fri, 11 May 2012 01:36:15 +0000 (11:36 +1000)]
QGStreamerPlayerSession: unref pads after using them.

Change-Id: I3eec73eca5c2da3c449f362da8639a6dfb52a9e9
Reviewed-by: Dmytro Poplavskiy <dmytro.poplavskiy@nokia.com>
12 years agoQGstreamerMetaDataProvider: fix keys not mapped properly.
Lev Zelenskiy [Fri, 11 May 2012 00:39:40 +0000 (10:39 +1000)]
QGstreamerMetaDataProvider: fix keys not mapped properly.

Add a key which is mapped against the QGstreamerMetaDataKeyLookup,
not the original Gstreamer key.

Change-Id: I2e20b102e97b9a3a7909ff925f195cd0bdff1775
Reviewed-by: Dmytro Poplavskiy <dmytro.poplavskiy@nokia.com>
12 years agoGst played: removed GST_SEEK_FLAG_ACCURATE flag
Dmytro Poplavskiy [Wed, 9 May 2012 02:32:45 +0000 (12:32 +1000)]
Gst played: removed GST_SEEK_FLAG_ACCURATE flag

Forcing accurate seeking may be very slow for some files,
it's not intended to be used with media players.

Change-Id: I9fe759f6effa447a800aeea321cc46617c64866f
Reviewed-by: Lev Zelenskiy <lev.zelenskiy@nokia.com>
Reviewed-by: Mithra Pattison <mithra.pattison@nokia.com>
Reviewed-by: Ling Hu <ling.hu@nokia.com>
12 years agoChange timeout on qcamera capture tests to QTRY_VERIFY
Mithra Pattison [Wed, 9 May 2012 04:32:03 +0000 (14:32 +1000)]
Change timeout on qcamera capture tests to QTRY_VERIFY

Previous timeout was causing sporadic test failures

Change-Id: I9b30c0245e16838fafce6a4977d75aaddb6f5fdd
Reviewed-by: Dmytro Poplavskiy <dmytro.poplavskiy@nokia.com>
12 years agodelete unused file
Oswald Buddenhagen [Thu, 5 Apr 2012 12:26:16 +0000 (14:26 +0200)]
delete unused file

Change-Id: I15ad0f30859a3133993f0a75ed0d09bb5ef9cdf5
Reviewed-by: Jonas Rabbe <jonas.rabbe@gmail.com>
12 years agofix project file
Oswald Buddenhagen [Mon, 16 Apr 2012 12:54:54 +0000 (14:54 +0200)]
fix project file

"console" is CONFIG, not QT.
also, it doesn't look too convincing if an example uses private headers
...

Change-Id: I5bc128c6268901c9842f8b842d6344bd32fc7d1e
Reviewed-by: Jonas Rabbe <jonas.rabbe@gmail.com>
12 years agoAdapt to _qpa file rename in qtbase.
Girish Ramakrishnan [Tue, 8 May 2012 07:10:06 +0000 (00:10 -0700)]
Adapt to _qpa file rename in qtbase.

qtbase change 36547f4eff44361f7a6acd0cff107c0e47561f93
renamed qpa headers.

Change-Id: I3d2f08fb969bf1b448b0105032d6111c6643a7a7
Reviewed-by: Dmytro Poplavskiy <dmytro.poplavskiy@nokia.com>
12 years agoDeclare and register metatypes for media encoder settings classes
Dmytro Poplavskiy [Thu, 3 May 2012 07:48:13 +0000 (17:48 +1000)]
Declare and register metatypes for media encoder settings classes

Change-Id: Ib3a42409045fe55c7a410b5ec52bd284f3475417
Reviewed-by: Mithra Pattison <mithra.pattison@nokia.com>
Reviewed-by: Jonas Rabbe <jonas.rabbe@gmail.com>
12 years agoChange uses of {to,from}Ascii to {to,from}Latin1
Thiago Macieira [Thu, 3 May 2012 14:58:59 +0000 (16:58 +0200)]
Change uses of {to,from}Ascii to {to,from}Latin1

This operation should be a no-op anyway, since at this point in time,
the fromAscii and toAscii functions simply call their fromLatin1 and
toLatin1 counterparts.

Task-number: QTBUG-21872
Change-Id: Ic591779a3431999c007fb0ff362c7e25ce54097e
Reviewed-by: Jonas Rabbe <jonas.rabbe@gmail.com>
12 years agoSupport QVideoWindowControl in the QtQuick Video element.
Thomas McGuire [Thu, 5 Apr 2012 13:53:44 +0000 (15:53 +0200)]
Support QVideoWindowControl in the QtQuick Video element.

Change-Id: I953899a3ec92856955d36528057b0d45f9c26394
Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
Reviewed-by: Dmytro Poplavskiy <dmytro.poplavskiy@nokia.com>
12 years agoImprove .gitignore
Thomas McGuire [Thu, 26 Apr 2012 17:16:39 +0000 (19:16 +0200)]
Improve .gitignore

Change-Id: I4e9fd33f199b90a4b7c8cf8b9fcc6d18c532842d
Reviewed-by: Debao Zhang <dbzhang800@gmail.com>
Reviewed-by: Jonas Rabbe <jonas.rabbe@gmail.com>
12 years agoImplement QGstreamerVideoRenderer::stopRenderer()
Lev Zelenskiy [Thu, 3 May 2012 01:34:33 +0000 (11:34 +1000)]
Implement QGstreamerVideoRenderer::stopRenderer()

Surface has to be stopped when
QGstreamerVideoRendererInterface::stopRenderer() is called.
This fixes a media player issue when video output is not cleared
when media is set to 0.

Change-Id: Ifdc851797519dcdf95db86e8dcec93b3866c388e
Reviewed-by: Dmytro Poplavskiy <dmytro.poplavskiy@nokia.com>
12 years agoFixed typo in QMediaRecorder::Status metatype registration
Dmytro Poplavskiy [Wed, 2 May 2012 03:52:15 +0000 (13:52 +1000)]
Fixed typo in QMediaRecorder::Status metatype registration

Change-Id: Id370b272b6c6c992762b1aefecb6cfbc7c916f2a
Reviewed-by: Mithra Pattison <mithra.pattison@nokia.com>
Reviewed-by: Ling Hu <ling.hu@nokia.com>
12 years agoReplaced QMediaRecorderControl::play/stop/pause with setState
Dmytro Poplavskiy [Wed, 2 May 2012 01:15:44 +0000 (11:15 +1000)]
Replaced QMediaRecorderControl::play/stop/pause with setState

This allows to introduce new states without breaking BC.

Change-Id: I03c064cec92d6745b251a51cfb301e7f01f4b765
Reviewed-by: Ling Hu <ling.hu@nokia.com>
12 years agoAdded QMediaRecorder::status property
Dmytro Poplavskiy [Tue, 1 May 2012 03:10:33 +0000 (13:10 +1000)]
Added QMediaRecorder::status property

QMediaRecorder::state property represents the user request and
changed synchronously during record(), pause() or stop() calls.

Recorder status is changed asynchronously
and represents the actual status of media recorder.

This also makes API more consistent with QMediaPlayer and QCamera.

Change-Id: I80b4aaa70bb88e555c492908da8c29d0fc5ed5ea
Reviewed-by: Ling Hu <ling.hu@nokia.com>
12 years agoAdded QCamera::UnloadingStatus and StoppingStatus values.
Dmytro Poplavskiy [Mon, 30 Apr 2012 05:48:04 +0000 (15:48 +1000)]
Added QCamera::UnloadingStatus and StoppingStatus values.

These statuses are useful when the camera is stopped and/or unloaded
asynchronously. Previously the status was changed to
LoadedStatus or UnloadedStatus immediately,
even while camera was still active.

Change-Id: Id11021a150b0d34791ea631d7a62086cc0727220
Reviewed-by: Mithra Pattison <mithra.pattison@nokia.com>
Reviewed-by: Ling Hu <ling.hu@nokia.com>
12 years agoQtMultimedia: Fix deprecation warnings.
Friedemann Kleint [Mon, 30 Apr 2012 13:05:31 +0000 (15:05 +0200)]
QtMultimedia: Fix deprecation warnings.

Use QVariant::canConvert instead qVariantCanConvert.

Change-Id: I3c924a0bb508a451623da250fb9d410cf70a91f0
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
12 years agoFix MinGW-w64 compilation
Jonathan Liu [Fri, 27 Apr 2012 23:34:44 +0000 (09:34 +1000)]
Fix MinGW-w64 compilation

Change-Id: I812b53e822947a9f85d6523722c6a4f9e57e0426
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com>
12 years agoSplit gstreamer plugin into smaller plugins providing fewer services
Jonas Rabbe [Thu, 22 Mar 2012 01:04:03 +0000 (11:04 +1000)]
Split gstreamer plugin into smaller plugins providing fewer services

The gstreamer blob has been split into four plugins: audiodecoder,
camerabin, mediacapture, and mediaplayer.
Note: camerabin is still disabled because it is untested camerabin2
implementation.
A new qmake configuration use_gstreamer_camera has been introduced
and is needed for the mediacapture plugin to expose the camera
service. This configuration has been disabled by default.
Shared functionality has been moved to the internal gsttools library.

Change-Id: Ifb2604f440cfa97513d39f5d7978766c88eaec45
Reviewed-by: Michael Goddard <michael.goddard@nokia.com>
12 years agoQSampleCache unit test: correctly check whether sample is cached.
Lev Zelenskiy [Thu, 26 Apr 2012 06:53:37 +0000 (16:53 +1000)]
QSampleCache unit test: correctly check whether sample is cached.

Use QSample::isCached instead of relying on pointers.
Also added a test for loading an invalid file.

Change-Id: I9f4f1e8c3dc3cdb4a88a756cc6cad85e68c3a1b6
Reviewed-by: Michael Goddard <michael.goddard@nokia.com>
12 years agoQSampleCache: Add a method to check whether a sample is cached.
Lev Zelenskiy [Thu, 26 Apr 2012 06:51:54 +0000 (16:51 +1000)]
QSampleCache: Add a method to check whether a sample is cached.

At the moment there is no way to tell whether a sample
returned by QSampleCache comes from cache.
This functionality is required for a unit test.

Change-Id: Ice23bb39b8e4f0a58b9297b46bb19b9a8c34b53c
Reviewed-by: Michael Goddard <michael.goddard@nokia.com>
12 years agoFix a compiler warning.
Michael Goddard [Fri, 27 Apr 2012 02:05:20 +0000 (12:05 +1000)]
Fix a compiler warning.

Change-Id: If82ec145b9076c1418460fa4d59595e0a60e5a0f
Reviewed-by: Jun Zhu <jun.5.zhu@nokia.com>
Reviewed-by: Dmytro Poplavskiy <dmytro.poplavskiy@nokia.com>
12 years agoFix a possible stale pointer access if we can't connect to PulseAudio.
Michael Goddard [Fri, 27 Apr 2012 01:58:50 +0000 (11:58 +1000)]
Fix a possible stale pointer access if we can't connect to PulseAudio.

We free the mainloop but didn't check validity before calling lock or
unlock.  Also we might need to unlock the main loop before freeing
it in some other error cases.

Change-Id: Iadf1049324cdf37ca9841b82e53e33afdcba8cb2
Reviewed-by: Jun Zhu <jun.5.zhu@nokia.com>
Reviewed-by: Lev Zelenskiy <lev.zelenskiy@nokia.com>
Reviewed-by: Dmytro Poplavskiy <dmytro.poplavskiy@nokia.com>
12 years agoMake sure the audio/video availability information changes atomically.
Michael Goddard [Fri, 20 Apr 2012 05:54:39 +0000 (15:54 +1000)]
Make sure the audio/video availability information changes atomically.

So there's a consistent picture of the stream availability.

Change-Id: Id7ea166353c0151fcc11105a1e233e9fe8df9cc6
Reviewed-by: Dmytro Poplavskiy <dmytro.poplavskiy@nokia.com>
12 years agoAdded tests for unsupported and corrupted file.
bigbearzhu [Thu, 12 Apr 2012 05:31:50 +0000 (15:31 +1000)]
Added tests for unsupported and corrupted file.

Change-Id: Ifab4aed1e389afff9a567897829381b91b9bcddb
Reviewed-by: Michael Goddard <michael.goddard@nokia.com>
12 years agoAdded unit test for QSampleCache.
Lev Zelenskiy [Tue, 24 Apr 2012 01:00:06 +0000 (11:00 +1000)]
Added unit test for QSampleCache.

Change-Id: I4dbd54822f246ba9a69ab85897a4c983b7c17561
Reviewed-by: Ling Hu <ling.hu@nokia.com>
Reviewed-by: Michael Goddard <michael.goddard@nokia.com>
12 years agoExtended integration test for QSoundEffect
Lev Zelenskiy [Fri, 20 Apr 2012 07:14:26 +0000 (17:14 +1000)]
Extended integration test for QSoundEffect

- setting the source while loading, and while playing;
- supported mimetypes;
- loading corrupt wave files;

Change-Id: Iff27921aaf3a67bcf88807b2a5656deb8cf2d77e
Reviewed-by: Michael Goddard <michael.goddard@nokia.com>
12 years agoStill need to count usage even when capacity is zero.
Lev Zelenskiy [Tue, 24 Apr 2012 00:52:16 +0000 (10:52 +1000)]
Still need to count usage even when capacity is zero.

When the sample is removed we need to decrease sample cache usage,
even when capacity is set to zero.
Otherwise we're getting wrong usage after capacity is changed.

Change-Id: I38820c0f9441abec3086189698ec5a904e1e9b6f
Reviewed-by: Ling Hu <ling.hu@nokia.com>
Reviewed-by: Michael Goddard <michael.goddard@nokia.com>
12 years agoDo not try to complete flush operation if stream has changed.
Lev Zelenskiy [Fri, 20 Apr 2012 07:02:35 +0000 (17:02 +1000)]
Do not try to complete flush operation if stream has changed.

There is a problem when sound effect already has a sound loaded and
we try to load new sound with setSource().
When sampleReady() is called between emptyStream() and emptyComplete()
it unloads the current stream and creates a new stream.
As a result pulse audio crashed in emptyComplete() while calling
pa_operation_unref(pa_stream_cork(
m_pulseStream, 1, stream_cork_callback, m_ref->getRef()))
with the new m_pulseStream.

Change-Id: Idff4fe6037d3f3f116734dc0facabaafa3db14a2
Reviewed-by: Michael Goddard <michael.goddard@nokia.com>
Reviewed-by: Ling Hu <ling.hu@nokia.com>
12 years agoMove QVideoWindowControl out of widgets.
Thomas McGuire [Thu, 12 Apr 2012 09:14:04 +0000 (11:14 +0200)]
Move QVideoWindowControl out of widgets.

There is no widget dependency in it, and this enables the QML
Video element to support video overlays later.

Change-Id: I7ebcde350f9595a9f7c319663ff745930535a8a7
Reviewed-by: Michael Goddard <michael.goddard@nokia.com>
12 years agoRemove insignificant_test marker for maemo platform.
Jason McDonald [Mon, 23 Apr 2012 11:45:19 +0000 (21:45 +1000)]
Remove insignificant_test marker for maemo platform.

Continuous Integration is no longer performed for this platform.

Change-Id: I5bd33a3984108fea4e2072b49aed06c57b32d1f4
Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
12 years agoQtMultimedia: Fix compiler warnings.
Friedemann Kleint [Tue, 24 Apr 2012 08:59:20 +0000 (10:59 +0200)]
QtMultimedia: Fix compiler warnings.

Change-Id: Ic0edfa95c03103550d22bfdf88c33fdbd6f41e3c
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com>
12 years agoFix compilation after qtbase:8f85b84f4eaa85ff5c02ec5e65fd6706a10690b9.
Friedemann Kleint [Tue, 24 Apr 2012 08:58:04 +0000 (10:58 +0200)]
Fix compilation after qtbase:8f85b84f4eaa85ff5c02ec5e65fd6706a10690b9.

Remove QDeclarative compatibility module code.

Change-Id: Ib24c0c027c899e7eb30b3c8550a483d0d8b2b77f
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com>
12 years agogst player: clear the buffer pool when the video sink is stopped
Dmytro Poplavskiy [Fri, 20 Apr 2012 01:32:59 +0000 (11:32 +1000)]
gst player: clear the buffer pool when the video sink is stopped

Buffers were kept allocated until the player is destroyed or
next media played.

Change-Id: I8a0c85da3a82ac6883075a1d0674143783c7f010
Reviewed-by: Michael Goddard <michael.goddard@nokia.com>
12 years agoLink to QtAudioEngine on multimedia landing page
Angus Cummings [Thu, 19 Apr 2012 02:58:12 +0000 (12:58 +1000)]
Link to QtAudioEngine on multimedia landing page

Change-Id: I858644e16f668d0ee4ca820b3cc65f60fd3208dc
Reviewed-by: Michael Goddard <michael.goddard@nokia.com>
12 years agoQVideoProbe unit test.
Lev Zelenskiy [Wed, 18 Apr 2012 04:18:49 +0000 (14:18 +1000)]
QVideoProbe unit test.

Change-Id: If8d391734b08eee2edbc2250fbcbe7f45cf94b3e
Reviewed-by: Michael Goddard <michael.goddard@nokia.com>
12 years agoQAudioProbe unit test.
Lev Zelenskiy [Wed, 18 Apr 2012 03:20:19 +0000 (13:20 +1000)]
QAudioProbe unit test.

Change-Id: I4dde8a46883cfc793fdccbfd24ffde0c818fa1aa
Reviewed-by: Mithra Pattison <mithra.pattison@nokia.com>
Reviewed-by: Michael Goddard <michael.goddard@nokia.com>
12 years agoDisconnect probe control in case source was destroyed.
Lev Zelenskiy [Wed, 18 Apr 2012 03:11:53 +0000 (13:11 +1000)]
Disconnect probe control in case source was destroyed.

Change-Id: Ibc4583af8acf7d28ee2504f246840a26e3a527be
Reviewed-by: Dmytro Poplavskiy <dmytro.poplavskiy@nokia.com>
Reviewed-by: Mithra Pattison <mithra.pattison@nokia.com>
Reviewed-by: Michael Goddard <michael.goddard@nokia.com>
12 years agoAdding QtAudioEngine to the landing page
Angus Cummings [Wed, 18 Apr 2012 02:18:52 +0000 (12:18 +1000)]
Adding QtAudioEngine to the landing page

Change-Id: Ie24ff0d4b949ccb5cd21624e33ef2b42b6857743
Reviewed-by: Michael Goddard <michael.goddard@nokia.com>
12 years agoEmit connection-failed signal if gst_pad_alloc_buffer fails.
Lev Zelenskiy [Tue, 17 Apr 2012 04:44:49 +0000 (14:44 +1000)]
Emit connection-failed signal if gst_pad_alloc_buffer fails.

Buffer allocation might fail for requested format.
We need to emit connection-failed signal
and allow backend to insert colorspace transformation element.

Change-Id: I9a101bb3c027f150c68bbeaba8ab932deded47ea
Reviewed-by: Dmytro Poplavskiy <dmytro.poplavskiy@nokia.com>
Reviewed-by: Michael Goddard <michael.goddard@nokia.com>
12 years agoqvideosurfacegstsink: fixed calculation of supported formats.
Dmytro Poplavskiy [Tue, 17 Apr 2012 01:29:09 +0000 (11:29 +1000)]
qvideosurfacegstsink: fixed calculation of supported formats.

If the custom buffer pool is used, it's also necessary
to query the list of video surface formats with this handle type.

Change-Id: I8a38f4c75f37ed05fbfdcf0933023a6abef1b3e1
Reviewed-by: Mithra Pattison <mithra.pattison@nokia.com>
Reviewed-by: Michael Goddard <michael.goddard@nokia.com>
Reviewed-by: Jonas Rabbe <jonas.rabbe@gmail.com>
12 years agoAdded integration test for video surface backend.
Lev Zelenskiy [Mon, 16 Apr 2012 05:43:34 +0000 (15:43 +1000)]
Added integration test for video surface backend.

Make sure pipeline doesn't stall in RGB and YUV modes.

Change-Id: I9fa253ecb6952e3e0138180c52fa945a13f7cf50
Reviewed-by: Dmytro Poplavskiy <dmytro.poplavskiy@nokia.com>
Reviewed-by: Michael Goddard <michael.goddard@nokia.com>
12 years agoAdjust to changed QUrl::isRelative() semantics.
Michael Goddard [Fri, 20 Apr 2012 05:18:04 +0000 (15:18 +1000)]
Adjust to changed QUrl::isRelative() semantics.

Paths with a leading slash were previously considered relative (with
no scheme) but now they aren't.  So take the opportunity to tweak the
path resolution code

Change-Id: I7b02cb85403ebb151dba274db0c05459ef536f18
Reviewed-by: Lev Zelenskiy <lev.zelenskiy@nokia.com>
Reviewed-by: Ling Hu <ling.hu@nokia.com>
12 years agoAdd bug numbers to insignificant tests.
Jason McDonald [Fri, 13 Apr 2012 12:55:44 +0000 (22:55 +1000)]
Add bug numbers to insignificant tests.

Change-Id: I4600e4919f9b2bbfcf0ac580054748d14f31b0c9
Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
12 years agoChange Video and VideoOutput docs to mention ScreenSaver
Angus Cummings [Mon, 16 Apr 2012 04:48:08 +0000 (14:48 +1000)]
Change Video and VideoOutput docs to mention ScreenSaver

Change-Id: If7a03e9eafd351eec484a568802c75d955b68ecf
Reviewed-by: Michael Goddard <michael.goddard@nokia.com>
12 years agoExpose the audio category information for streams.
Michael Goddard [Fri, 13 Apr 2012 03:51:09 +0000 (13:51 +1000)]
Expose the audio category information for streams.

QAudioOutput and QSoundEffect now have a category property so that
system volume mixing or processing can be applied.

Initially just pulseaudio supports this but Windows Vista etc should also
work.

Change-Id: I6855b08367e5a055ac7dfcffd644c98bfd7c5a4e
Reviewed-by: Ling Hu <ling.hu@nokia.com>
12 years agobuffer should only be available when m_buffersAvailable > 0.
bigbearzhu [Mon, 16 Apr 2012 02:15:07 +0000 (12:15 +1000)]
buffer should only be available when m_buffersAvailable > 0.

Change-Id: I730fcbf6aa4fc446d12c64fcb7cfd410be96a20d
Reviewed-by: Michael Goddard <michael.goddard@nokia.com>
12 years agoQDeclarativeVideoOutput: correctly disconnect _q_updateMediaObject
Lev Zelenskiy [Mon, 16 Apr 2012 04:27:53 +0000 (14:27 +1000)]
QDeclarativeVideoOutput: correctly disconnect _q_updateMediaObject

Fixed a bug where _q_updateMediaObject() slot wasn't disconnected
correctly.

Change-Id: I45696fc850dc59ff6f1cc45da15b87c280c29088
Reviewed-by: Dmytro Poplavskiy <dmytro.poplavskiy@nokia.com>
Reviewed-by: Michael Goddard <michael.goddard@nokia.com>
12 years agoGstVideoConnector: make sure downstream filter is in correct state.
Lev Zelenskiy [Fri, 13 Apr 2012 07:34:13 +0000 (17:34 +1000)]
GstVideoConnector: make sure downstream filter is in correct state.

When requesting a buffer from downstream filter,
check if downstream element is in NULL state,
and wait for up to 1 second for it to switch.
Otherwise gst_pad_alloc_buffer returns GST_FLOW_WRONG_STATE and
pipeline stalls.

Change-Id: Ic0539c41638ab3bfb548a30043ebe925675b0b6f
Reviewed-by: Dmytro Poplavskiy <dmytro.poplavskiy@nokia.com>
12 years agoexpanding unit test for QAudioDecoder
Angus Cummings [Thu, 12 Apr 2012 04:44:28 +0000 (14:44 +1000)]
expanding unit test for QAudioDecoder

Looking for feedback concerning:
implementation of the change
desired functionality of QAudioDecoder

Changed the behaviour of QAudioDecoder for
more sane error output

Change-Id: I82193a94b6fe1ef4202a4ac7bd95c607e0bee9c6
Reviewed-by: Michael Goddard <michael.goddard@nokia.com>
12 years agoadd #include <unistd.h> to classes which use ::getpid
Thomas Senyk [Thu, 12 Apr 2012 15:44:10 +0000 (17:44 +0200)]
add #include <unistd.h> to classes which use ::getpid

I got  "error: ‘::getpid’ has not been declared" and solved it with
adding #include <unistd.h>

Updated version of change 23032.
Now including <sys/types.h> as well.

Change-Id: I969845e1c4d5b72a223f6f4e0050b2fb342b8f17
Reviewed-by: Girish Ramakrishnan <girish.1.ramakrishnan@nokia.com>
Reviewed-by: Michael Goddard <michael.goddard@nokia.com>
12 years agoUse QtMultimedia 5.0 in the QML Video element doc.
Thomas McGuire [Thu, 5 Apr 2012 13:53:59 +0000 (15:53 +0200)]
Use QtMultimedia 5.0 in the QML Video element doc.

Change-Id: I5e549b321a549d2b4abc058cf08d81329df3562e
Reviewed-by: Michael Goddard <michael.goddard@nokia.com>
12 years agoIgnore QtCreator user settings.
Thomas McGuire [Thu, 12 Apr 2012 13:41:11 +0000 (15:41 +0200)]
Ignore QtCreator user settings.

Change-Id: I0aed0177733e3804801ec2aba5c974d740118f42
Reviewed-by: Yuchen Deng <loaden@gmail.com>
Reviewed-by: Michael Goddard <michael.goddard@nokia.com>
12 years agoTranslated corresponding Gstreamer errors to QAudioDecoder::FormatError
bigbearzhu [Thu, 12 Apr 2012 05:40:32 +0000 (15:40 +1000)]
Translated corresponding Gstreamer errors to QAudioDecoder::FormatError

Change-Id: I34834075ea98c163251e7a9aca1fb7bc486ad7e9
Reviewed-by: Michael Goddard <michael.goddard@nokia.com>
12 years agoMove QAudioDecoder to public.
Michael Goddard [Tue, 10 Apr 2012 11:33:00 +0000 (21:33 +1000)]
Move QAudioDecoder to public.

To get better feedback between alpha & beta.

Change-Id: I3620825fb9c2bb9de69951cf1d583b191d62cb0d
Reviewed-by: Jonas Rabbe <jonas.rabbe@nokia.com>
12 years agoFix a number of doc errors and warnings.
Michael Goddard [Tue, 10 Apr 2012 10:19:34 +0000 (20:19 +1000)]
Fix a number of doc errors and warnings.

* Document a few missing classes/functions/methods
* Fix a number of QML snippets that wouldn't work as standalone snippets
* Add files to .pro so they show up in Creator..

Still the mysterious lack of controls dir documentation persists :/

Change-Id: I57162371a4d966e4db5bdb1b71d1baf9c0ca57c3
Reviewed-by: Jonas Rabbe <jonas.rabbe@nokia.com>
12 years agoAdded integration test for subsequent playback to media player backend.
Lev Zelenskiy [Mon, 2 Apr 2012 05:06:57 +0000 (15:06 +1000)]
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>
12 years agoAdd .gitignore file
Yuchen Deng [Sun, 8 Apr 2012 12:57:03 +0000 (20:57 +0800)]
Add .gitignore file

Change-Id: Icb5f1fd8879a7a99af688d51fd02f8c30c9bdb14
Reviewed-by: Michael Goddard <michael.goddard@nokia.com>
12 years agoSmall typo edit
dakovaci [Tue, 3 Apr 2012 06:52:58 +0000 (16:52 +1000)]
Small typo edit

Just some small eddits

Change-Id: I3e1e2a2890f7b8cb2d5933a25c41aaa53bc62867
Reviewed-by: Daron Andrew Edie <daron.edie@nokia.com>
12 years agoRemoved some systemtests
dakovaci [Tue, 3 Apr 2012 06:39:27 +0000 (16:39 +1000)]
Removed some systemtests

Removed pause video recording and video settings

Change-Id: Id763ce9c26c5b6f7b9b122ee1b4b80b0c9c926fa
Reviewed-by: Jonas Rabbe <jonas.rabbe@nokia.com>
12 years agoTypo fix
dakovaci [Tue, 3 Apr 2012 06:49:09 +0000 (16:49 +1000)]
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>