From b8199244e913584d21c4217fb3ec71484d62ecf7 Mon Sep 17 00:00:00 2001 From: Carlos Rafael Giani Date: Wed, 30 Jul 2014 10:57:34 +0200 Subject: gstreamer1.0-libav: upgrade to 1.4.0 * Backported patch removed, since it is already included in this release (From OE-Core rev: e9bc4272c7415db278046d2dd9ac2df33f9b7122) Signed-off-by: Carlos Rafael Giani Signed-off-by: Saul Wold Signed-off-by: Richard Purdie --- .../videodec-Don-t-use-non-growable-pool.patch | 75 ---------------------- .../gstreamer/gstreamer1.0-libav_1.2.4.bb | 25 -------- .../gstreamer/gstreamer1.0-libav_1.4.0.bb | 24 +++++++ 3 files changed, 24 insertions(+), 100 deletions(-) delete mode 100644 meta/recipes-multimedia/gstreamer/gstreamer1.0-libav/videodec-Don-t-use-non-growable-pool.patch delete mode 100644 meta/recipes-multimedia/gstreamer/gstreamer1.0-libav_1.2.4.bb create mode 100644 meta/recipes-multimedia/gstreamer/gstreamer1.0-libav_1.4.0.bb (limited to 'meta/recipes-multimedia') diff --git a/meta/recipes-multimedia/gstreamer/gstreamer1.0-libav/videodec-Don-t-use-non-growable-pool.patch b/meta/recipes-multimedia/gstreamer/gstreamer1.0-libav/videodec-Don-t-use-non-growable-pool.patch deleted file mode 100644 index d9b796b6bc..0000000000 --- a/meta/recipes-multimedia/gstreamer/gstreamer1.0-libav/videodec-Don-t-use-non-growable-pool.patch +++ /dev/null @@ -1,75 +0,0 @@ -From 62a4d065ed7bd117d869fd8bcb61274c2870ddf5 Mon Sep 17 00:00:00 2001 -From: Nicolas Dufresne -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 ---- - 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); diff --git a/meta/recipes-multimedia/gstreamer/gstreamer1.0-libav_1.2.4.bb b/meta/recipes-multimedia/gstreamer/gstreamer1.0-libav_1.2.4.bb deleted file mode 100644 index 9e2321956c..0000000000 --- a/meta/recipes-multimedia/gstreamer/gstreamer1.0-libav_1.2.4.bb +++ /dev/null @@ -1,25 +0,0 @@ -include gstreamer1.0-libav.inc - -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/COPYING.GPLv2;md5=b234ee4d69f5fce4486a80fdaf4a4263 \ - file://gst-libs/ext/libav/COPYING.GPLv3;md5=d32239bcb673463ab874e80d47fae504 \ - file://gst-libs/ext/libav/COPYING.LGPLv2.1;md5=bd7a443320af8c812e4c18d1b79df004 \ - file://gst-libs/ext/libav/COPYING.LGPLv3;md5=e6a600fd5e1d9cbde2d983680233ad02" - -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" -LIBAV_EXTRA_CONFIGURE_COMMON_ARG = "--target-os=linux \ - --cc='${CC}' --as='${CC}' --ld='${CC}' --nm='${NM}' --ar='${AR}' \ - --ranlib='${RANLIB}' \ - ${GSTREAMER_1_0_DEBUG}" - -S = "${WORKDIR}/gst-libav-${PV}" - diff --git a/meta/recipes-multimedia/gstreamer/gstreamer1.0-libav_1.4.0.bb b/meta/recipes-multimedia/gstreamer/gstreamer1.0-libav_1.4.0.bb new file mode 100644 index 0000000000..bc79d54f5f --- /dev/null +++ b/meta/recipes-multimedia/gstreamer/gstreamer1.0-libav_1.4.0.bb @@ -0,0 +1,24 @@ +include gstreamer1.0-libav.inc + +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=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 \ + file://gst-libs/ext/libav/COPYING.LGPLv3;md5=e6a600fd5e1d9cbde2d983680233ad02" + +SRC_URI = " \ + http://gstreamer.freedesktop.org/src/gst-libav/gst-libav-${PV}.tar.xz \ + file://0001-Disable-yasm-for-libav-when-disable-yasm.patch \ +" +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}' \ + ${GSTREAMER_1_0_DEBUG}" + +S = "${WORKDIR}/gst-libav-${PV}" + -- cgit v1.2.3-54-g00ecf