Hello community,
here is the log from the commit of package gstreamer-plugins-bad for
openSUSE:Factory checked in at 2018-01-01 22:10:19
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/gstreamer-plugins-bad (Old)
and /work/SRC/openSUSE:Factory/.gstreamer-plugins-bad.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "gstreamer-plugins-bad"
Mon Jan 1 22:10:19 2018 rev:71 rq:560899 version:1.12.4
Changes:
--------
---
/work/SRC/openSUSE:Factory/gstreamer-plugins-bad/gstreamer-plugins-bad.changes
2017-12-14 10:52:16.494700471 +0100
+++
/work/SRC/openSUSE:Factory/.gstreamer-plugins-bad.new/gstreamer-plugins-bad.changes
2018-01-01 22:10:36.029383827 +0100
@@ -1,0 +2,20 @@
+Fri Dec 29 19:26:46 UTC 2017 - [email protected]
+
+- Add gst-bad-player-transfer-ownership.patch: player: transfer
+ ownership of info properties (bgo#791982).
+
+-------------------------------------------------------------------
+Sat Dec 23 14:29:12 UTC 2017 - [email protected]
+
+- Add gst-bad-vtdec-destroy-create-fix.patch: vtdec: destroy and
+ create the GL context on start()/stop(). Removes a reference
+ count loop.
+- Add python3-xml BuildRequires and switch to using plain make
+ instead of make_build macro, and add conditional for
+ pkgconfig(graphene-1.0), pkgconfig(wayland-client),
+ pkgconfig(wayland-cursor), pkgconfig(wayland-egl),
+ pkgconfig(wayland-protocols) and pkgconfig(wayland-scanner)
+ BuildRequires and the .so and sub-package produced, fix build for
+ old versions of openSUSE.
+
+-------------------------------------------------------------------
New:
----
gst-bad-player-transfer-ownership.patch
gst-bad-vtdec-destroy-create-fix.patch
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ gstreamer-plugins-bad.spec ++++++
--- /var/tmp/diff_new_pack.EG3hI6/_old 2018-01-01 22:10:40.199991432 +0100
+++ /var/tmp/diff_new_pack.EG3hI6/_new 2018-01-01 22:10:40.203990098 +0100
@@ -33,6 +33,11 @@
Source:
https://gstreamer.freedesktop.org/src/gst-plugins-bad/%{_name}-%{version}.tar.xz
Source2: gstreamer-plugins-bad.appdata.xml
Source99: baselibs.conf
+# PATCH-FIX-UPSTREAM gst-bad-vtdec-destroy-create-fix.patch
[email protected] -- vtdec: destroy and create the GL context on
start()/stop()
+Patch0: gst-bad-vtdec-destroy-create-fix.patch
+# PATCH-FIX-UPSTREAM gst-bad-player-transfer-ownership.patch bgo#791982
[email protected] -- player: transfer ownership of info properties
+Patch1: gst-bad-player-transfer-ownership.patch
+
BuildRequires: Mesa-libGLESv3-devel
BuildRequires: fdupes
BuildRequires: gcc-c++
@@ -45,6 +50,7 @@
BuildRequires: libmpcdec-devel
BuildRequires: orc >= 0.4.11
BuildRequires: python3-base
+BuildRequires: python3-xml
BuildRequires: pkgconfig(OpenEXR)
BuildRequires: pkgconfig(bluez)
BuildRequires: pkgconfig(bzip2)
@@ -102,11 +108,13 @@
BuildRequires: pkgconfig(soundtouch)
BuildRequires: pkgconfig(spandsp) >= 0.0.6
BuildRequires: pkgconfig(vdpau)
+%if 0%{?suse_version} >= 1500
BuildRequires: pkgconfig(wayland-client) >= 1.0.0
BuildRequires: pkgconfig(wayland-cursor) >= 1.0
BuildRequires: pkgconfig(wayland-egl) >= 9.0
BuildRequires: pkgconfig(wayland-protocols) >= 1.4
BuildRequires: pkgconfig(wayland-scanner) >= 1.4.0
+%endif
BuildRequires: pkgconfig(webrtc-audio-processing) >= 0.2
BuildRequires: pkgconfig(x11)
BuildRequires: pkgconfig(xcb) >= 1.10
@@ -114,7 +122,9 @@
%if 0%{?is_opensuse}
BuildRequires: libbs2b-devel
BuildRequires: pkgconfig(fluidsynth)
+%if 0%{?suse_version} >= 1500
BuildRequires: pkgconfig(graphene-1.0) >= 1.4.0
+%endif
BuildRequires: pkgconfig(libchromaprint)
BuildRequires: pkgconfig(libopenjp2)
BuildRequires: pkgconfig(openal)
@@ -263,6 +273,7 @@
videos. Its plug-in-based architecture means that new data types or
processing capabilities can be added simply by installing new plug-ins.
+%if 0%{?suse_version} >= 1500
%package -n libgstwayland-1_0-0
Summary: GStreamer Streaming-Media Framework Plug-Ins - Wayland backend
Group: System/Libraries
@@ -273,6 +284,7 @@
anything media-related,from real-time sound processing to playing
videos. Its plug-in-based architecture means that new data types or
processing capabilities can be added simply by installing new plug-ins.
+%endif
%package -n libgstcodecparsers-1_0-0
Summary: GStreamer Streaming-Media Framework Plug-Ins
@@ -358,7 +370,9 @@
Requires: libgstphotography-1_0-0 = %{version}
Requires: libgstplayer-1_0-0 = %{version}
Requires: libgsturidownloader-1_0-0 = %{version}
+%if 0%{?suse_version} >= 1500
Requires: libgstwayland-1_0-0 = %{version}
+%endif
Requires: typelib-1_0-GstBadAllocators-1_0 = %{version}
Requires: typelib-1_0-GstGL-1_0 = %{version}
Requires: typelib-1_0-GstInsertBin-1_0 = %{version}
@@ -455,7 +469,7 @@
%lang_package
%prep
-%setup -q -n %{_name}-%{version}
+%autosetup -n %{_name}-%{version} -p1
%build
export PYTHON=/usr/bin/python3
@@ -477,7 +491,7 @@
--enable-wayland \
--enable-introspection \
%{nil}
-%make_build
+make %{?_smp_mflags}
%install
%make_install
@@ -517,7 +531,9 @@
%post -n libgstphotography-1_0-0 -p /sbin/ldconfig
%post -n libgstplayer-1_0-0 -p /sbin/ldconfig
%post -n libgsturidownloader-1_0-0 -p /sbin/ldconfig
+%if 0%{?suse_version} >= 1500
%post -n libgstwayland-1_0-0 -p /sbin/ldconfig
+%endif
%postun -n libgstadaptivedemux-1_0-0 -p /sbin/ldconfig
%postun -n libgstbadallocators-1_0-0 -p /sbin/ldconfig
@@ -532,7 +548,9 @@
%postun -n libgstcodecparsers-1_0-0 -p /sbin/ldconfig
%postun -n libgstinsertbin-1_0-0 -p /sbin/ldconfig
%postun -n libgsturidownloader-1_0-0 -p /sbin/ldconfig
+%if 0%{?suse_version} >= 1500
%postun -n libgstwayland-1_0-0 -p /sbin/ldconfig
+%endif
%files
%doc COPYING COPYING.LIB
@@ -633,7 +651,9 @@
%{_libdir}/gstreamer-%{gst_branch}/libgstvideoparsersbad.so
%{_libdir}/gstreamer-%{gst_branch}/libgstvideosignal.so
%{_libdir}/gstreamer-%{gst_branch}/libgstvmnc.so
+%if 0%{?suse_version} >= 1500
%{_libdir}/gstreamer-%{gst_branch}/libgstwaylandsink.so
+%endif
%{_libdir}/gstreamer-%{gst_branch}/libgstwebrtcdsp.so
%{_libdir}/gstreamer-%{gst_branch}/libgsty4mdec.so
%{_libdir}/gstreamer-%{gst_branch}/libgstyadif.so
@@ -695,8 +715,10 @@
%files -n libgstvdpau
%{_libdir}/gstreamer-%{gst_branch}/libgstvdpau.so
+%if 0%{?suse_version} >= 1500
%files -n libgstwayland-1_0-0
%{_libdir}/libgstwayland-1.0.so.*
+%endif
%files -n typelib-1_0-GstBadAllocators-1_0
%defattr(-, root, root)
++++++ gst-bad-player-transfer-ownership.patch ++++++
>From 46897797c2ab835ca525e098f3d48db2f8a475d4 Mon Sep 17 00:00:00 2001
From: Philippe Normand <[email protected]>
Date: Wed, 27 Dec 2017 13:08:18 +0000
Subject: player: transfer ownership of info properties
The previous code would emit GObject critical warnings when the info properties
are NULL.
https://bugzilla.gnome.org/show_bug.cgi?id=791982
---
gst-libs/gst/player/gstplayer.c | 12 ++++--------
1 file changed, 4 insertions(+), 8 deletions(-)
diff --git a/gst-libs/gst/player/gstplayer.c b/gst-libs/gst/player/gstplayer.c
index 6ee2023..d0d9f26 100644
--- a/gst-libs/gst/player/gstplayer.c
+++ b/gst-libs/gst/player/gstplayer.c
@@ -773,29 +773,25 @@ gst_player_get_property (GObject * object, guint prop_id,
}
case PROP_MEDIA_INFO:{
GstPlayerMediaInfo *media_info = gst_player_get_media_info (self);
- g_value_set_object (value, media_info);
- g_object_unref (media_info);
+ g_value_take_object (value, media_info);
break;
}
case PROP_CURRENT_AUDIO_TRACK:{
GstPlayerAudioInfo *audio_info =
gst_player_get_current_audio_track (self);
- g_value_set_object (value, audio_info);
- g_object_unref (audio_info);
+ g_value_take_object (value, audio_info);
break;
}
case PROP_CURRENT_VIDEO_TRACK:{
GstPlayerVideoInfo *video_info =
gst_player_get_current_video_track (self);
- g_value_set_object (value, video_info);
- g_object_unref (video_info);
+ g_value_take_object (value, video_info);
break;
}
case PROP_CURRENT_SUBTITLE_TRACK:{
GstPlayerSubtitleInfo *subtitle_info =
gst_player_get_current_subtitle_track (self);
- g_value_set_object (value, subtitle_info);
- g_object_unref (subtitle_info);
+ g_value_take_object (value, subtitle_info);
break;
}
case PROP_VOLUME:
--
cgit v1.1
++++++ gst-bad-vtdec-destroy-create-fix.patch ++++++
>From be5b414e3455d643bf0c6d2139ae693f66393be7 Mon Sep 17 00:00:00 2001
From: Matthew Waters <[email protected]>
Date: Fri, 22 Sep 2017 14:27:51 +1000
Subject: vtdec: destroy and create the GL context on start()/stop()
Removes a reference count loop
---
sys/applemedia/vtdec.c | 13 +++++++++++--
1 file changed, 11 insertions(+), 2 deletions(-)
diff --git a/sys/applemedia/vtdec.c b/sys/applemedia/vtdec.c
index d9c943d..57847a8 100644
--- a/sys/applemedia/vtdec.c
+++ b/sys/applemedia/vtdec.c
@@ -156,7 +156,6 @@ static void
gst_vtdec_init (GstVtdec * vtdec)
{
vtdec->reorder_queue = g_async_queue_new ();
- vtdec->ctxh = gst_gl_context_helper_new (GST_ELEMENT (vtdec));
}
void
@@ -167,7 +166,6 @@ gst_vtdec_finalize (GObject * object)
GST_DEBUG_OBJECT (vtdec, "finalize");
g_async_queue_unref (vtdec->reorder_queue);
- gst_gl_context_helper_free (vtdec->ctxh);
G_OBJECT_CLASS (gst_vtdec_parent_class)->finalize (object);
}
@@ -179,6 +177,9 @@ gst_vtdec_start (GstVideoDecoder * decoder)
GST_DEBUG_OBJECT (vtdec, "start");
+ if (!vtdec->ctxh)
+ vtdec->ctxh = gst_gl_context_helper_new (GST_ELEMENT (decoder));
+
return TRUE;
}
@@ -198,6 +199,10 @@ gst_vtdec_stop (GstVideoDecoder * decoder)
gst_video_texture_cache_free (vtdec->texture_cache);
vtdec->texture_cache = NULL;
+ if (vtdec->ctxh)
+ gst_gl_context_helper_free (vtdec->ctxh);
+ vtdec->ctxh = NULL;
+
GST_DEBUG_OBJECT (vtdec, "stop");
return TRUE;
@@ -320,6 +325,8 @@ gst_vtdec_negotiate (GstVideoDecoder * decoder)
/* call this regardless of whether caps have changed or not since a new
* local context could have become available
*/
+ if (!vtdec->ctxh)
+ vtdec->ctxh = gst_gl_context_helper_new (GST_ELEMENT (vtdec));
gst_gl_context_helper_ensure_context (vtdec->ctxh);
GST_INFO_OBJECT (vtdec, "pushing textures, context %p old context %p",
@@ -1016,6 +1023,8 @@ gst_vtdec_set_context (GstElement * element, GstContext *
context)
GST_INFO_OBJECT (element, "setting context %s",
gst_context_get_context_type (context));
+ if (!vtdec->ctxh)
+ vtdec->ctxh = gst_gl_context_helper_new (element);
gst_gl_handle_set_context (element, context,
&vtdec->ctxh->display, &vtdec->ctxh->other_context);
GST_ELEMENT_CLASS (gst_vtdec_parent_class)->set_context (element, context);
--
cgit v1.1