commit 456c9ddfad3ecef37d54543c201277db8cc46831
Author: Simon Farnsworth <simon.farnsworth(a)onelan.co.uk>
Date: Fri Feb 7 14:57:35 2014 +0000
Fix vaapipostproc crash in live pipelines
...oc-Create-filter-surface-pool-if-it-does-.patch | 33 ++++++++++++++++++++++
gstreamer1-vaapi.spec | 8 +++++-
2 files changed, 40 insertions(+), 1 deletion(-)
---
diff --git a/0001-vaapipostproc-Create-filter-surface-pool-if-it-does-.patch
b/0001-vaapipostproc-Create-filter-surface-pool-if-it-does-.patch
new file mode 100644
index 0000000..ced901e
--- /dev/null
+++ b/0001-vaapipostproc-Create-filter-surface-pool-if-it-does-.patch
@@ -0,0 +1,33 @@
+From 4998c53c8775f79b7e19a93ed47a0e7e65f6be03 Mon Sep 17 00:00:00 2001
+From: Simon Farnsworth <simon.farnsworth(a)onelan.co.uk>
+Date: Fri, 7 Feb 2014 12:27:50 +0000
+Subject: [PATCH] vaapipostproc: Create filter surface pool if it does not
+ exist
+
+ensure_srcpad_buffer_pool tries to avoid unnecessarily deleting and
+recreating filter_pool. Unfortunately, this also meant it didn't create it
+if it did not exist.
+
+Fix it to always create the buffer pool if it does not exist.
+
+Signed-off-by: Simon Farnsworth <simon.farnsworth(a)onelan.co.uk>
+---
+ gst/vaapi/gstvaapipostproc.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/gst/vaapi/gstvaapipostproc.c b/gst/vaapi/gstvaapipostproc.c
+index f1be89c..70cc411 100644
+--- a/gst/vaapi/gstvaapipostproc.c
++++ b/gst/vaapi/gstvaapipostproc.c
+@@ -1126,7 +1126,7 @@ ensure_srcpad_buffer_pool(GstVaapiPostproc *postproc, GstCaps
*caps)
+ gst_video_info_set_format(&vi, postproc->format,
+ GST_VIDEO_INFO_WIDTH(&vi), GST_VIDEO_INFO_HEIGHT(&vi));
+
+- if (!video_info_changed(&vi, &postproc->filter_pool_info))
++ if (postproc->filter_pool && !video_info_changed(&vi,
&postproc->filter_pool_info))
+ return TRUE;
+ postproc->filter_pool_info = vi;
+
+--
+1.8.5.3
+
diff --git a/gstreamer1-vaapi.spec b/gstreamer1-vaapi.spec
index 939f86c..5fd3780 100644
--- a/gstreamer1-vaapi.spec
+++ b/gstreamer1-vaapi.spec
@@ -1,11 +1,13 @@
Name: gstreamer1-vaapi
Version: 0.5.8
-Release: 1%{?dist}
+Release: 2%{?dist}
Summary: GStreamer plugins to use VA API video acceleration
License: LGPLv2+
URL:
https://gitorious.org/vaapi/gstreamer-vaapi/
Source0:
http://www.freedesktop.org/software/vaapi/releases/gstreamer-vaapi/gstrea...
+# Fix for
https://bugzilla.gnome.org/show_bug.cgi?id=723834
+Patch1: 0001-vaapipostproc-Create-filter-surface-pool-if-it-does-.patch
BuildRequires: glib2-devel >= 2.28
BuildRequires: gstreamer1-devel >= 1.0.0
@@ -35,6 +37,7 @@ developing applications that use %{name}.
%prep
%setup -q -n gstreamer-vaapi-%{version}
+%patch0 -p1
%build
@@ -73,5 +76,8 @@ find $RPM_BUILD_ROOT -type f -name "*.la" -exec rm -f {}
';'
%{_libdir}/pkgconfig/gstreamer-vaapi*.pc
%changelog
+* Fri Feb 7 2014 Simon Farnsworth <simon(a)farnz.org.uk> - 0.5.8-2
+- Fix vaapipostproc crash in live pipelines
+
* Wed Feb 5 2014 Simon Farnsworth <simon(a)farnz.org.uk> - 0.5.8-1
- initial release