Hello community,
here is the log from the commit of package phonon-backend-gstreamer for
openSUSE:Factory checked in at 2015-09-11 09:01:10
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/phonon-backend-gstreamer (Old)
and /work/SRC/openSUSE:Factory/.phonon-backend-gstreamer.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "phonon-backend-gstreamer"
Changes:
--------
---
/work/SRC/openSUSE:Factory/phonon-backend-gstreamer/phonon-backend-gstreamer.changes
2014-11-01 08:14:02.000000000 +0100
+++
/work/SRC/openSUSE:Factory/.phonon-backend-gstreamer.new/phonon-backend-gstreamer.changes
2015-09-11 09:01:18.000000000 +0200
@@ -1,0 +2,12 @@
+Thu Aug 27 19:10:43 UTC 2015 - [email protected]
+
+- Update to 4.8.2 (changes since 4.8.0):
+ * Prevent call to gst_element_set_state from a streaming thread.
+ * Don't set WA_PaintOnScreen on the OverlayWidget in X11Renderer
+ in Qt5 build.
+ * Make VideoWidget::snapshot work again.
+- Own /usr/share/kde4/services/phononbackends/ directory as no
+ phonon-backend-gstreamer requirement owns it.
+- Correct Phonon ABI version.
+
+-------------------------------------------------------------------
@@ -352 +363,0 @@
-
Old:
----
phonon-backend-gstreamer-4.8.0.tar.xz
New:
----
phonon-backend-gstreamer-4.8.2.tar.xz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ phonon-backend-gstreamer.spec ++++++
--- /var/tmp/diff_new_pack.V8rXAj/_old 2015-09-11 09:01:19.000000000 +0200
+++ /var/tmp/diff_new_pack.V8rXAj/_new 2015-09-11 09:01:19.000000000 +0200
@@ -1,7 +1,7 @@
#
# spec file for package phonon-backend-gstreamer
#
-# Copyright (c) 2014 SUSE LINUX Products GmbH, Nuernberg, Germany.
+# Copyright (c) 2015 SUSE LINUX GmbH, Nuernberg, Germany.
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
@@ -16,59 +16,59 @@
#
-%define _phonon_version 4.8.0
-
+%define _phonon_version 4.6.50
Name: phonon-backend-gstreamer
-Version: 4.8.0
+Version: 4.8.2
Release: 0
Summary: Phonon Multimedia Platform Abstraction
License: LGPL-2.1 or LGPL-3.0
Group: System/GUI/KDE
Url: http://phonon.kde.org/
-Source:
http://download.kde.org/stable/phonon/%{name}/%{version}/%{name}-%{version}.tar.xz
-BuildRequires: -post-build-checks
-BuildRequires: alsa-devel
+Source:
http://download.kde.org/stable/phonon/%{name}/%{version}/src/%{name}-%{version}.tar.xz
BuildRequires: automoc4
BuildRequires: cmake
BuildRequires: fdupes
BuildRequires: kde4-filesystem
-BuildRequires: phonon-devel
BuildRequires: update-desktop-files
-BuildRequires: xz
+BuildRequires: pkgconfig(alsa)
BuildRequires: pkgconfig(gstreamer-1.0)
BuildRequires: pkgconfig(gstreamer-plugins-base-1.0)
BuildRequires: pkgconfig(libxml-2.0)
-Requires: libphonon4 => %{_phonon_version}
+BuildRequires: pkgconfig(phonon) >= %{_phonon_version}
+Requires: libphonon4 >= %{_phonon_version}
Supplements: packageand(gstreamer-plugins-base:phonon)
Obsoletes: phonon-backend-gstreamer-0_10 < %{version}
Provides: phonon-backend
Provides: phonon-backend-gstreamer-0_10 = %{version}
-BuildRoot: %{_tmppath}/%{name}-%{version}-build
%description
Phonon is a cross-platform portable Multimedia Support Abstraction,
-which allows you to play multiple audio or video formats with the same
-quality on all platforms, no matter which underlying architecture is
-used.
+which allows you to play multiple audio or video formats with the
+same quality on all platforms, no matter which underlying
+architecture is used.
+
+This is the GStreamer backend for Phonon.
%prep
-%setup -q -n %{name}-%{version}
+%setup -q
%build
- %cmake_kde4 -d build
- %make_jobs
+%cmake_kde4 -d build
+%make_jobs
%install
- cd build
- %kde4_makeinstall
- %suse_update_desktop_file
%{buildroot}%{_kde4_servicesdir}/phononbackends/gstreamer.desktop
- %fdupes %{buildroot}%{_includedir}
+%kde4_makeinstall -C build
+%suse_update_desktop_file
%{buildroot}%{_kde4_servicesdir}/phononbackends/gstreamer.desktop
+%fdupes %{buildroot}%{_includedir}
+
+%kde_post_install
%files
%defattr(-,root,root)
%doc COPYING.LIB
+%dir %{_kde4_servicesdir}/phononbackends
+%{_kde4_iconsdir}/*/*/apps/phonon-gstreamer.*
%{_kde4_modulesdir}/plugins/phonon_backend/phonon_gstreamer.so
%{_kde4_servicesdir}/phononbackends/gstreamer.desktop
-%{_kde4_iconsdir}/*/*/apps/phonon-gstreamer.*
%changelog
++++++ phonon-backend-gstreamer-4.8.0.tar.xz ->
phonon-backend-gstreamer-4.8.2.tar.xz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/phonon-backend-gstreamer-4.8.0/CMakeLists.txt
new/phonon-backend-gstreamer-4.8.2/CMakeLists.txt
--- old/phonon-backend-gstreamer-4.8.0/CMakeLists.txt 2014-09-06
18:13:59.000000000 +0200
+++ new/phonon-backend-gstreamer-4.8.2/CMakeLists.txt 2014-12-27
15:05:27.000000000 +0100
@@ -7,7 +7,7 @@
set(PHONON_GST_MAJOR_VERSION "4")
set(PHONON_GST_MINOR_VERSION "8")
-set(PHONON_GST_PATCH_VERSION "0")
+set(PHONON_GST_PATCH_VERSION "2")
set(PHONON_GST_VERSION
"${PHONON_GST_MAJOR_VERSION}.${PHONON_GST_MINOR_VERSION}.${PHONON_GST_PATCH_VERSION}")
add_definitions(-DPHONON_GST_VERSION="${PHONON_GST_VERSION}")
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/phonon-backend-gstreamer-4.8.0/gstreamer/pipeline.cpp
new/phonon-backend-gstreamer-4.8.2/gstreamer/pipeline.cpp
--- old/phonon-backend-gstreamer-4.8.0/gstreamer/pipeline.cpp 2014-09-06
18:13:59.000000000 +0200
+++ new/phonon-backend-gstreamer-4.8.2/gstreamer/pipeline.cpp 2014-12-27
15:05:27.000000000 +0100
@@ -330,9 +330,10 @@
// Instead of playing when the pipeline is still streaming, we pause
// and let gst finish streaming.
if ( percent < 100 && gstMessage->type == GST_MESSAGE_BUFFERING) {
- that->setState(GST_STATE_PAUSED);
+ QMetaObject::invokeMethod(that, "setState", Qt::QueuedConnection,
Q_ARG(GstState, GST_STATE_PAUSED));
+
} else {
- that->setState(GST_STATE_PLAYING);
+ QMetaObject::invokeMethod(that, "setState", Qt::QueuedConnection,
Q_ARG(GstState, GST_STATE_PLAYING));
}
if (that->m_bufferPercent != percent) {
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/phonon-backend-gstreamer-4.8.0/gstreamer/pipeline.h
new/phonon-backend-gstreamer-4.8.2/gstreamer/pipeline.h
--- old/phonon-backend-gstreamer-4.8.0/gstreamer/pipeline.h 2014-09-06
18:13:59.000000000 +0200
+++ new/phonon-backend-gstreamer-4.8.2/gstreamer/pipeline.h 2014-12-27
15:05:27.000000000 +0100
@@ -50,7 +50,7 @@
GstElement *audioPipe() const;
GstElement *videoPipe() const;
- GstStateChangeReturn setState(GstState state);
+ Q_INVOKABLE GstStateChangeReturn setState(GstState state);
GstState state() const;
Phonon::MediaSource currentSource() const;
void writeToDot(MediaObject *media, const QString &type);
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/phonon-backend-gstreamer-4.8.0/gstreamer/videowidget.cpp
new/phonon-backend-gstreamer-4.8.2/gstreamer/videowidget.cpp
--- old/phonon-backend-gstreamer-4.8.0/gstreamer/videowidget.cpp
2014-09-06 18:13:59.000000000 +0200
+++ new/phonon-backend-gstreamer-4.8.2/gstreamer/videowidget.cpp
2014-12-27 15:05:27.000000000 +0100
@@ -329,8 +329,10 @@
g_object_get(G_OBJECT(videosink), "last-sample", &videobuffer, NULL);
if (videobuffer) {
+ // TODO Might need to use BGR on big-endian
+ // Needs someone with proper hardware to test
GstCaps *snapcaps = gst_caps_new_simple("video/x-raw",
- "format = (string)",
G_TYPE_STRING, GST_VIDEO_NE(RGB),
+ "format", G_TYPE_STRING, "RGB",
NULL);
GstSample *sample = gst_video_convert_sample(videobuffer, snapcaps,
GST_SECOND, NULL);
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/phonon-backend-gstreamer-4.8.0/gstreamer/x11renderer.cpp
new/phonon-backend-gstreamer-4.8.2/gstreamer/x11renderer.cpp
--- old/phonon-backend-gstreamer-4.8.0/gstreamer/x11renderer.cpp
2014-09-06 18:13:59.000000000 +0200
+++ new/phonon-backend-gstreamer-4.8.2/gstreamer/x11renderer.cpp
2014-12-27 15:05:27.000000000 +0100
@@ -81,7 +81,9 @@
X11Renderer::~X11Renderer()
{
+#if QT_VERSION < QT_VERSION_CHECK(5, 0, 0)
m_renderWidget->setAttribute(Qt::WA_PaintOnScreen, false);
+#endif
m_renderWidget->setAttribute(Qt::WA_NoSystemBackground, false);
delete m_renderWidget;
}
@@ -144,7 +146,10 @@
// Setting these values ensures smooth resizing since it
// will prevent the system from clearing the background
m_renderWidget->setAttribute(Qt::WA_NoSystemBackground, true);
+#if QT_VERSION < QT_VERSION_CHECK(5, 0, 0)
+ // Leads to tons of warnings from QWidget::paintEngine on Qt 5
m_renderWidget->setAttribute(Qt::WA_PaintOnScreen, true);
+#endif
setOverlay();
} else if (e->type() == QEvent::Resize) {
// This is a workaround for missing background repaints