Hello community,
here is the log from the commit of package libqt5-qtmultimedia for
openSUSE:Factory checked in at 2014-09-08 21:28:25
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/libqt5-qtmultimedia (Old)
and /work/SRC/openSUSE:Factory/.libqt5-qtmultimedia.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "libqt5-qtmultimedia"
Changes:
--------
--- /work/SRC/openSUSE:Factory/libqt5-qtmultimedia/libqt5-qtmultimedia.changes
2014-06-30 21:50:27.000000000 +0200
+++
/work/SRC/openSUSE:Factory/.libqt5-qtmultimedia.new/libqt5-qtmultimedia.changes
2014-09-08 21:28:41.000000000 +0200
@@ -1,0 +2,13 @@
+Thu Sep 4 20:37:34 UTC 2014 - [email protected]
+
+- Update to 5.3.2~git20140904 (r6e39a79):
+ * Tip of the bugfix 5.3.2 branch
+ * MediaPlayer's loops property now works correctly when
+ playing a media from a qrc file.
+ * [QTBUG-29742] Fixed Qt apps hanging when audio APIs are
+ used and PulseAudio is not running.
+ * [QTBUG-39949] Fixed QMediaRecorder::setOutputLocation() not
+ working with QUrl::fromLocalFile().
+- Rebase Initial-porting-effort-to-GStreamer-1.0.patch
+
+-------------------------------------------------------------------
Old:
----
qtmultimedia-opensource-src-5.3.1.tar.xz
New:
----
qtmultimedia-opensource-src-5.3.2.tar.xz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ libqt5-qtmultimedia.spec ++++++
--- /var/tmp/diff_new_pack.JXStdp/_old 2014-09-08 21:28:42.000000000 +0200
+++ /var/tmp/diff_new_pack.JXStdp/_new 2014-09-08 21:28:42.000000000 +0200
@@ -16,25 +16,21 @@
#
-%define qt5_snapshot 0
+%define qt5_snapshot 1
%define libname libQt5Multimedia5
Name: libqt5-qtmultimedia
-Version: 5.3.1
+Version: 5.3.2~git20140904
Release: 0
Summary: Qt 5 Multimedia Library
License: SUSE-LGPL-2.1-with-digia-exception-1.1 or GPL-3.0
Group: Development/Libraries/X11
Url: http://qt.digia.com
%define base_name libqt5
-%define real_version 5.3.1
-%define so_version 5.3.1
-%if %qt5_snapshot
-%define tar_version qtmultimedia-%{real_version}
-%else
+%define real_version 5.3.2
+%define so_version 5.3.2
%define tar_version qtmultimedia-opensource-src-%{real_version}
-%endif
Source: %{tar_version}.tar.xz
Source1: baselibs.conf
# PATCH-FIX-UPSTREAM Initial-porting-effort-to-GStreamer-1.0.patch -- support
building with gstreamer 1.0 API (taken from upstream wip/gstreamer-1.0 branch)
@@ -80,11 +76,7 @@
handling.
%prep
-%if %qt5_snapshot
-%setup -q -n qtmultimedia-%{real_version}
-%else
%setup -q -n qtmultimedia-opensource-src-%{real_version}
-%endif
%if 0%{?suse_version} >= 1315
%patch0 -p1
%endif
++++++ Initial-porting-effort-to-GStreamer-1.0.patch ++++++
--- /var/tmp/diff_new_pack.JXStdp/_old 2014-09-08 21:28:42.000000000 +0200
+++ /var/tmp/diff_new_pack.JXStdp/_new 2014-09-08 21:28:42.000000000 +0200
@@ -1,69 +1,3 @@
-From 9bae6a95a312bfd691cac6f4cc5d59759b7835ec Mon Sep 17 00:00:00 2001
-From: Yoann Lopes <[email protected]>
-Date: Thu, 31 Oct 2013 15:06:30 +0100
-Subject: [PATCH 1/1] Initial porting effort to GStreamer 1.0.
-
-Imported from [email protected]:jhodapp/qtmultimedia.git
-
-Contributions from:
-Ilya Smelykh <[email protected]>
-Jim Hodapp <[email protected]>
-Sergio Schvezov <[email protected]>
-
-Change-Id: I10fa5e5078efa4564ce833befd417008e26a90a9
-Reviewed-by: Yoann Lopes <[email protected]>
-(cherry picked from commit d91dac090d92fdbc3a3425e8d969c62e5c79eff9)
-
-Conflicts:
- src/gsttools/qgstreamervideorenderer.cpp
- src/gsttools/qgstreamervideowidget.cpp
- src/gsttools/qgstreamervideowindow.cpp
- src/plugins/gstreamer/camerabin/camerabinsession.cpp
- src/plugins/gstreamer/mediacapture/qgstreamercapturesession.cpp
- src/plugins/gstreamer/mediaplayer/qgstreamerplayersession.cpp
----
- config.tests/gstreamer/gstreamer.pro | 11 +-
- config.tests/gstreamer_appsrc/gstreamer_appsrc.pro | 13 +-
- .../gstreamer_encodingprofiles.pro | 13 +-
- .../gstreamer_photography.pro | 15 +-
- qtmultimedia.pro | 22 +-
- src/gsttools/gsttools.pro | 33 +-
- src/gsttools/gstvideoconnector.c | 199 +++++++++++-
- src/gsttools/qgstappsrc.cpp | 29 +-
- src/gsttools/qgstreameraudioprobecontrol.cpp | 19 +-
- src/gsttools/qgstreamerbushelper.cpp | 8 +
- src/gsttools/qgstreamermirtexturerenderer.cpp | 360 +++++++++++++++++++++
- src/gsttools/qgstreamervideoprobecontrol.cpp | 9 +
- src/gsttools/qgstreamervideorenderer.cpp | 3 +-
- src/gsttools/qgstreamervideowidget.cpp | 29 +-
- src/gsttools/qgstreamervideowindow.cpp | 79 ++++-
- src/gsttools/qgstutils.cpp | 25 +-
- src/gsttools/qgstvideobuffer.cpp | 18 +-
- src/gsttools/qvideosurfacegstsink.cpp | 143 +++++++-
- src/multimedia/gsttools_headers/qgstappsrc_p.h | 3 +
- .../qgstreameraudioprobecontrol_p.h | 5 +-
- .../qgstreamermirtexturerenderer_p.h | 111 +++++++
- .../qgstreamervideoprobecontrol_p.h | 4 +
- .../gsttools_headers/qgstreamervideowindow_p.h | 4 +
- src/multimedia/gsttools_headers/qgstutils_p.h | 4 +
- .../gsttools_headers/qgstvideobuffer_p.h | 3 +
- .../gsttools_headers/qvideosurfacegstsink_p.h | 6 +-
- .../qgstreameraudiodecoderserviceplugin.cpp | 27 +-
- .../audiodecoder/qgstreameraudiodecodersession.cpp | 33 +-
- .../gstreamer/camerabin/camerabinsession.cpp | 25 ++
- src/plugins/gstreamer/common.pri | 21 +-
- src/plugins/gstreamer/gstreamer.pro | 3 +-
- .../mediacapture/qgstreamercapturesession.cpp | 5 +
- src/plugins/gstreamer/mediaplayer/mediaplayer.pro | 1 -
- .../mediaplayer/qgstreamerplayercontrol.cpp | 2 +
- .../mediaplayer/qgstreamerplayerservice.cpp | 9 +-
- .../mediaplayer/qgstreamerplayerserviceplugin.cpp | 27 +-
- .../mediaplayer/qgstreamerplayersession.cpp | 154 ++++++++-
- .../mediaplayer/qgstreamerplayersession.h | 9 +
- 38 files changed, 1354 insertions(+), 130 deletions(-)
- create mode 100644 src/gsttools/qgstreamermirtexturerenderer.cpp
- create mode 100644
src/multimedia/gsttools_headers/qgstreamermirtexturerenderer_p.h
-
diff --git a/config.tests/gstreamer/gstreamer.pro
b/config.tests/gstreamer/gstreamer.pro
index 02a7e34..6b9843a 100644
--- a/config.tests/gstreamer/gstreamer.pro
@@ -153,10 +87,10 @@
+LIBS += -lgstphotography-$$GST_VERSION
diff --git a/qtmultimedia.pro b/qtmultimedia.pro
-index 1deaab2..0b7b4fc 100644
+index 3cec526..109dd81 100644
--- a/qtmultimedia.pro
+++ b/qtmultimedia.pro
-@@ -21,10 +21,24 @@ win32 {
+@@ -17,11 +17,26 @@ win32 {
} else {
qtCompileTest(alsa)
qtCompileTest(pulseaudio)
@@ -164,6 +98,7 @@
- qtCompileTest(gstreamer_photography)
- qtCompileTest(gstreamer_encodingprofiles)
- qtCompileTest(gstreamer_appsrc)
+- qtCompileTest(linux_v4l)
+ !done_config_gstreamer {
+ gstver=1.0
+ cache(GST_VERSION, set, gstver);
@@ -171,6 +106,7 @@
+ qtCompileTest(gstreamer_photography)
+ qtCompileTest(gstreamer_encodingprofiles)
+ qtCompileTest(gstreamer_appsrc)
++ qtCompileTest(linux_v4l)
+ } else {
+ gstver=0.10
+ cache(GST_VERSION, set, gstver);
@@ -180,13 +116,14 @@
+ qtCompileTest(gstreamer_photography)
+ qtCompileTest(gstreamer_encodingprofiles)
+ qtCompileTest(gstreamer_appsrc)
++ qtCompileTest(linux_v4l)
+ }
+ }
}
qtCompileTest(resourcepolicy)
qtCompileTest(gpu_vivante)
diff --git a/src/gsttools/gsttools.pro b/src/gsttools/gsttools.pro
-index 15edd04..d252344 100644
+index 7c809a7..6b9bf5d 100644
--- a/src/gsttools/gsttools.pro
+++ b/src/gsttools/gsttools.pro
@@ -2,7 +2,7 @@ TEMPLATE = lib
@@ -243,7 +180,7 @@
+ LIBS_PRIVATE += -lgstapp-$$GST_VERSION
}
- HEADERS += $$PRIVATE_HEADERS
+ config_linux_v4l: DEFINES += USE_V4L
diff --git a/src/gsttools/gstvideoconnector.c
b/src/gsttools/gstvideoconnector.c
index 3e08fe5..ff3f9a3 100644
--- a/src/gsttools/gstvideoconnector.c
@@ -1702,10 +1639,10 @@
if (m_duration != duration) {
m_duration = duration;
diff --git a/src/plugins/gstreamer/camerabin/camerabinsession.cpp
b/src/plugins/gstreamer/camerabin/camerabinsession.cpp
-index 6e3448f..0dbf848 100644
+index a835b1c..6bd3682 100644
--- a/src/plugins/gstreamer/camerabin/camerabinsession.cpp
+++ b/src/plugins/gstreamer/camerabin/camerabinsession.cpp
-@@ -726,7 +726,11 @@ qint64 CameraBinSession::duration() const
+@@ -731,7 +731,11 @@ qint64 CameraBinSession::duration() const
GstFormat format = GST_FORMAT_TIME;
gint64 duration = 0;
@@ -1717,7 +1654,7 @@
return duration / 1000000;
else
return 0;
-@@ -759,8 +763,13 @@ void CameraBinSession::setMetaData(const QMap<QByteArray,
QVariant> &data)
+@@ -764,8 +768,13 @@ void CameraBinSession::setMetaData(const QMap<QByteArray,
QVariant> &data)
if (m_camerabin) {
GstIterator *elements =
gst_bin_iterate_all_by_interface(GST_BIN(m_camerabin), GST_TYPE_TAG_SETTER);
@@ -1731,7 +1668,7 @@
gst_tag_setter_reset_tags(GST_TAG_SETTER(element));
QMapIterator<QByteArray, QVariant> it(data);
-@@ -821,7 +830,11 @@ bool CameraBinSession::processSyncMessage(const
QGstreamerMessage &message)
+@@ -826,7 +835,11 @@ bool CameraBinSession::processSyncMessage(const
QGstreamerMessage &message)
if (gm && GST_MESSAGE_TYPE(gm) == GST_MESSAGE_ELEMENT) {
if (m_captureMode == QCamera::CaptureStillImage &&
@@ -1743,7 +1680,7 @@
st = gst_message_get_structure(gm);
if (gst_structure_has_field_typed(st, "buffer", GST_TYPE_BUFFER))
{
-@@ -831,7 +844,11 @@ bool CameraBinSession::processSyncMessage(const
QGstreamerMessage &message)
+@@ -836,7 +849,11 @@ bool CameraBinSession::processSyncMessage(const
QGstreamerMessage &message)
QImage img;
@@ -1755,7 +1692,7 @@
if (caps) {
GstStructure *structure =
gst_caps_get_structure(caps, 0);
gint width = 0;
-@@ -1103,7 +1120,11 @@ QList< QPair<int,int> >
CameraBinSession::supportedFrameRates(const QSize &frame
+@@ -1109,7 +1126,11 @@ QList< QPair<int,int> >
CameraBinSession::supportedFrameRates(const QSize &frame
gst_structure_remove_all_fields(structure);
gst_structure_set_value(structure, "framerate", &rate);
}
@@ -1767,7 +1704,7 @@
for (uint i=0; i<gst_caps_get_size(caps); i++) {
-@@ -1223,7 +1244,11 @@ QList<QSize>
CameraBinSession::supportedResolutions(QPair<int,int> rate,
+@@ -1229,7 +1250,11 @@ QList<QSize>
CameraBinSession::supportedResolutions(QPair<int,int> rate,
gst_structure_set_value(structure, "width", &w);
gst_structure_set_value(structure, "height", &h);
}
@@ -1837,10 +1774,10 @@
OTHER_FILES += \
diff --git a/src/plugins/gstreamer/mediacapture/qgstreamercapturesession.cpp
b/src/plugins/gstreamer/mediacapture/qgstreamercapturesession.cpp
-index 518a66b..0c99502 100644
+index b9114c6..97d9203 100644
--- a/src/plugins/gstreamer/mediacapture/qgstreamercapturesession.cpp
+++ b/src/plugins/gstreamer/mediacapture/qgstreamercapturesession.cpp
-@@ -504,6 +504,11 @@ GstElement *QGstreamerCaptureSession::buildImageCapture()
+@@ -506,6 +506,11 @@ GstElement *QGstreamerCaptureSession::buildImageCapture()
gst_pad_add_buffer_probe(pad, G_CALLBACK(passImageFilter), this);
gst_object_unref(GST_OBJECT(pad));
@@ -1862,7 +1799,7 @@
mediaplayer.json
-
diff --git a/src/plugins/gstreamer/mediaplayer/qgstreamerplayercontrol.cpp
b/src/plugins/gstreamer/mediaplayer/qgstreamerplayercontrol.cpp
-index ff99aa3..f9de6a7 100644
+index 99c471b..deec236 100644
--- a/src/plugins/gstreamer/mediaplayer/qgstreamerplayercontrol.cpp
+++ b/src/plugins/gstreamer/mediaplayer/qgstreamerplayercontrol.cpp
@@ -527,6 +527,8 @@ void QGstreamerPlayerControl::processEOS()
@@ -1958,7 +1895,7 @@
GstStaticPadTemplate *padtemplate =
(GstStaticPadTemplate*)(pads->data);
pads = g_list_next (pads);
diff --git a/src/plugins/gstreamer/mediaplayer/qgstreamerplayersession.cpp
b/src/plugins/gstreamer/mediaplayer/qgstreamerplayersession.cpp
-index 27446e0..579bd2b 100644
+index 87b71d7..03185a2 100644
--- a/src/plugins/gstreamer/mediaplayer/qgstreamerplayersession.cpp
+++ b/src/plugins/gstreamer/mediaplayer/qgstreamerplayersession.cpp
@@ -93,6 +93,16 @@ typedef enum {
@@ -2183,7 +2120,7 @@
foreach (const QByteArray &rawHeader,
self->m_request.rawHeaderList()) {
if (rawHeader == userAgentString) // Filter User-Agent
-@@ -1629,7 +1691,11 @@ GstAutoplugSelectResult
QGstreamerPlayerSession::handleAutoplugSelect(GstBin *bi
+@@ -1630,7 +1692,11 @@ GstAutoplugSelectResult
QGstreamerPlayerSession::handleAutoplugSelect(GstBin *bi
const gchar *factoryName =
gst_plugin_feature_get_name(GST_PLUGIN_FEATURE(factory));
if (g_str_has_prefix(factoryName, "vaapi")) {
GstPad *sinkPad = gst_element_get_static_pad(session->m_videoSink,
"sink");
@@ -2195,7 +2132,7 @@
#if (GST_VERSION_MAJOR == 0) && ((GST_VERSION_MINOR < 10) ||
(GST_VERSION_MICRO < 33))
if (!factory_can_src_any_caps(factory, sinkCaps))
-@@ -1658,14 +1724,19 @@ void
QGstreamerPlayerSession::handleElementAdded(GstBin *bin, GstElement *elemen
+@@ -1659,14 +1725,19 @@ void
QGstreamerPlayerSession::handleElementAdded(GstBin *bin, GstElement *elemen
// Disable on-disk buffering.
g_object_set(G_OBJECT(element), "temp-template", NULL, NULL);
} else if (g_str_has_prefix(elementName, "uridecodebin") ||
@@ -2217,7 +2154,7 @@
}
//listen for queue2 element added to uridecodebin/decodebin2 as well.
-@@ -1733,7 +1804,27 @@ void
QGstreamerPlayerSession::removeProbe(QGstreamerVideoProbeControl* probe)
+@@ -1734,7 +1805,27 @@ void
QGstreamerPlayerSession::removeProbe(QGstreamerVideoProbeControl* probe)
// Assume user releases any outstanding references to video frames.
}
@@ -2246,7 +2183,7 @@
{
Q_UNUSED(pad);
-@@ -1748,6 +1839,7 @@ gboolean
QGstreamerPlayerSession::padVideoBufferProbe(GstPad *pad, GstBuffer *bu
+@@ -1749,6 +1840,7 @@ gboolean
QGstreamerPlayerSession::padVideoBufferProbe(GstPad *pad, GstBuffer *bu
return TRUE;
}
@@ -2254,7 +2191,7 @@
void QGstreamerPlayerSession::addProbe(QGstreamerAudioProbeControl* probe)
{
-@@ -1765,6 +1857,24 @@ void
QGstreamerPlayerSession::removeProbe(QGstreamerAudioProbeControl* probe)
+@@ -1766,6 +1858,24 @@ void
QGstreamerPlayerSession::removeProbe(QGstreamerAudioProbeControl* probe)
m_audioProbes.removeOne(probe);
}
@@ -2279,7 +2216,7 @@
gboolean QGstreamerPlayerSession::padAudioBufferProbe(GstPad *pad, GstBuffer
*buffer, gpointer user_data)
{
Q_UNUSED(pad);
-@@ -1780,7 +1890,7 @@ gboolean
QGstreamerPlayerSession::padAudioBufferProbe(GstPad *pad, GstBuffer *bu
+@@ -1781,7 +1891,7 @@ gboolean
QGstreamerPlayerSession::padAudioBufferProbe(GstPad *pad, GstBuffer *bu
return TRUE;
}
@@ -2288,7 +2225,7 @@
// This function is similar to stop(),
// but does not set m_everPlayed, m_lastPosition,
// and setSeekable() values.
-@@ -1813,7 +1923,11 @@ void QGstreamerPlayerSession::removeVideoBufferProbe()
+@@ -1814,7 +1924,11 @@ void QGstreamerPlayerSession::removeVideoBufferProbe()
GstPad *pad = gst_element_get_static_pad(m_videoSink, "sink");
if (pad) {
@@ -2300,7 +2237,7 @@
gst_object_unref(GST_OBJECT(pad));
}
-@@ -1828,7 +1942,11 @@ void QGstreamerPlayerSession::addVideoBufferProbe()
+@@ -1829,7 +1943,11 @@ void QGstreamerPlayerSession::addVideoBufferProbe()
GstPad *pad = gst_element_get_static_pad(m_videoSink, "sink");
if (pad) {
@@ -2312,7 +2249,7 @@
gst_object_unref(GST_OBJECT(pad));
}
}
-@@ -1845,7 +1963,11 @@ void QGstreamerPlayerSession::removeAudioBufferProbe()
+@@ -1846,7 +1964,11 @@ void QGstreamerPlayerSession::removeAudioBufferProbe()
GstPad *pad = gst_element_get_static_pad(m_audioSink, "sink");
if (pad) {
@@ -2324,7 +2261,7 @@
gst_object_unref(GST_OBJECT(pad));
}
-@@ -1860,7 +1982,11 @@ void QGstreamerPlayerSession::addAudioBufferProbe()
+@@ -1861,7 +1983,11 @@ void QGstreamerPlayerSession::addAudioBufferProbe()
GstPad *pad = gst_element_get_static_pad(m_audioSink, "sink");
if (pad) {
@@ -2336,7 +2273,7 @@
gst_object_unref(GST_OBJECT(pad));
}
}
-@@ -1893,7 +2019,7 @@ void
QGstreamerPlayerSession::playlistTypeFindFunction(GstTypeFind *find, gpoint
+@@ -1894,7 +2020,7 @@ void
QGstreamerPlayerSession::playlistTypeFindFunction(GstTypeFind *find, gpoint
length = qMin(length, guint64(1024));
while (length > 0) {
@@ -2377,6 +2314,3 @@
};
QT_END_NAMESPACE
---
-1.9.1
-
++++++ qtmultimedia-opensource-src-5.3.1.tar.xz ->
qtmultimedia-opensource-src-5.3.2.tar.xz ++++++
++++ 7790 lines of diff (skipped)
--
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]