+++ /dev/null
-From 62a4d065ed7bd117d869fd8bcb61274c2870ddf5 Mon Sep 17 00:00:00 2001
-From: Nicolas Dufresne <nicolas.dufresne@collabora.com>
-Date: Thu, 27 Mar 2014 18:53:53 -0400
-Subject: [PATCH] videodec: Don't use non-growable pool
-
-As we don't know how many output buffers we need to operate, we need to
-avoid pool that can't grow. Otherwise the pipeline may stall, waiting
-for buffers. For now, we require it to be able to grow to at least
-32 buffers, which I think is a fair amount of buffers for decoders.
-
-https://bugzilla.gnome.org/show_bug.cgi?id=726299
-
-Commit 2a337d926cc30cd7eaae13a4b46eea68ba89e368 in master branch
-
-Upstream Status: Backported
-
-Signed-off-by: Nicolas Dufresne <nicolas.dufresne@collabora.com>
----
- ext/libav/gstavviddec.c | 22 +++++++++++++++++++++-
- 1 file changed, 21 insertions(+), 1 deletion(-)
-
-diff --git a/ext/libav/gstavviddec.c b/ext/libav/gstavviddec.c
-index 6c9c0c9..d80fd52 100644
---- a/ext/libav/gstavviddec.c
-+++ b/ext/libav/gstavviddec.c
-@@ -46,6 +46,7 @@ GST_DEBUG_CATEGORY_EXTERN (GST_CAT_PERFORMANCE);
- #define DEFAULT_DIRECT_RENDERING TRUE
- #define DEFAULT_DEBUG_MV FALSE
- #define DEFAULT_MAX_THREADS 0
-+#define REQUIRED_POOL_MAX_BUFFERS 32
-
- enum
- {
-@@ -1620,7 +1621,7 @@ gst_ffmpegviddec_decide_allocation (GstVideoDecoder * decoder, GstQuery * query)
- GstBufferPool *pool;
- guint size, min, max;
- GstStructure *config;
-- gboolean have_videometa, have_alignment;
-+ gboolean have_videometa, have_alignment, update_pool;
- GstAllocator *allocator = NULL;
- GstAllocationParams params = { 0, 15, 0, 0, };
-
-@@ -1639,6 +1640,22 @@ gst_ffmpegviddec_decide_allocation (GstVideoDecoder * decoder, GstQuery * query)
-
- gst_query_parse_nth_allocation_pool (query, 0, &pool, &size, &min, &max);
-
-+ /* Don't use pool that can't grow, as we don't know how many buffer we'll
-+ * need, otherwise we may stall */
-+ if (max != 0 && max < REQUIRED_POOL_MAX_BUFFERS) {
-+ gst_object_unref (pool);
-+ pool = gst_video_buffer_pool_new ();
-+ max = 0;
-+ update_pool = TRUE;
-+
-+ /* if there is an allocator, also drop it, as it might be the reason we
-+ * have this limit. Default will be used */
-+ if (allocator) {
-+ gst_object_unref (allocator);
-+ allocator = NULL;
-+ }
-+ }
-+
- config = gst_buffer_pool_get_config (pool);
- gst_buffer_pool_config_set_params (config, state->caps, size, min, max);
- /* we are happy with the default allocator but we would like to have 16 bytes
-@@ -1726,6 +1743,9 @@ gst_ffmpegviddec_decide_allocation (GstVideoDecoder * decoder, GstQuery * query)
- /* and store */
- gst_buffer_pool_set_config (pool, config);
-
-+ if (update_pool)
-+ gst_query_set_nth_allocation_pool (query, 0, pool, size, min, max);
-+
- gst_object_unref (pool);
- if (allocator)
- gst_object_unref (allocator);
LIC_FILES_CHKSUM = "file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263 \
file://COPYING.LIB;md5=6762ed442b3822387a51c92d928ead0d \
file://ext/libav/gstav.h;beginline=1;endline=18;md5=a752c35267d8276fd9ca3db6994fca9c \
- file://gst-libs/ext/libav/LICENSE;md5=23a54f59b82572c203a559346e89ed57 \
+ file://gst-libs/ext/libav/LICENSE;md5=df1087a33b5cafe5e70b3452aac81515 \
file://gst-libs/ext/libav/COPYING.GPLv2;md5=b234ee4d69f5fce4486a80fdaf4a4263 \
file://gst-libs/ext/libav/COPYING.GPLv3;md5=d32239bcb673463ab874e80d47fae504 \
file://gst-libs/ext/libav/COPYING.LGPLv2.1;md5=bd7a443320af8c812e4c18d1b79df004 \
SRC_URI = " \
http://gstreamer.freedesktop.org/src/gst-libav/gst-libav-${PV}.tar.xz \
file://0001-Disable-yasm-for-libav-when-disable-yasm.patch \
- file://videodec-Don-t-use-non-growable-pool.patch \
"
-SRC_URI[md5sum] = "6454f9f22b3aa37694781633e0d20a9c"
-SRC_URI[sha256sum] = "2a69480d63fc2db93249d9e2e229ab3541bbc2db881b0f64de13d0bfc7d1f037"
+SRC_URI[md5sum] = "60811ae08c26fa093a96996582962c75"
+SRC_URI[sha256sum] = "c82c7a657863f2e27ac5cba539b0bd0a8114ad6bd4ba33bae777e4dbfab9e380"
LIBAV_EXTRA_CONFIGURE_COMMON_ARG = "--target-os=linux \
--cc='${CC}' --as='${CC}' --ld='${CC}' --nm='${NM}' --ar='${AR}' \
--ranlib='${RANLIB}' \