[gnome-build-meta/staging-3-30: 6/29] gst-libav: use the same version as freedesktop-sdk



commit 56eb5f29c5d1a4d025ee8f696e014192e2a3a96f
Author: Abderrahim Kitouni <akitouni gnome org>
Date:   Thu Sep 6 11:34:43 2018 +0100

    gst-libav: use the same version as freedesktop-sdk

 elements/sdk/gst-libav.bst                | 20 ++++++++++--
 files/gst-libav/fix-api.patch             | 52 +++++++++++++++++++++++++++++++
 files/gst-libav/stop-caching-codecs.patch | 18 +++++++++++
 3 files changed, 87 insertions(+), 3 deletions(-)
---
diff --git a/elements/sdk/gst-libav.bst b/elements/sdk/gst-libav.bst
index d24e32d..2a564f0 100644
--- a/elements/sdk/gst-libav.bst
+++ b/elements/sdk/gst-libav.bst
@@ -1,8 +1,22 @@
 kind: autotools
 sources:
-- kind: tar
-  url: http://gstreamer.freedesktop.org/src/gst-libav/gst-libav-1.14.2.tar.xz
-  ref: 8a351c39c5cfc2bbd31ca434ec4a290a730a26efbdea962fdd8306dce5c576de
+  - kind: git
+    url: git_freedesktop_org:gstreamer/gst-libav
+    track: master
+    # Latest stable release doesn't support our ffmpeg, this is the closest commit
+    # to 1.14.2 which supports ffmpeg n4.0.2 with minimal patching
+    ref: 3b6597188ad25cca84ae5caa7b08767a5b4cfee7 # 1.14.0-39-g3b65971
+    submodules:
+      common:
+        url: git_freedesktop_org:gstreamer/common
+      gst-libs/ext/libav:
+        url: https://git.ffmpeg.org/ffmpeg.git
+      gst-libs/ext/gas-preprocessor:
+        url: git://git.libav.org/gas-preprocessor.git
+  - kind: patch
+    path: files/gst-libav/stop-caching-codecs.patch
+  - kind: patch
+    path: files/gst-libav/fix-api.patch
 depends:
 - sdk/gst-plugins-base.bst
 - sdk/ffmpeg.bst
diff --git a/files/gst-libav/fix-api.patch b/files/gst-libav/fix-api.patch
new file mode 100644
index 0000000..37631ea
--- /dev/null
+++ b/files/gst-libav/fix-api.patch
@@ -0,0 +1,52 @@
+From 92e17eb716a6c69718c74497877b0dc4e82d7d56 Mon Sep 17 00:00:00 2001
+From: Thomas Coldrick <othko97 gmail com>
+Date: Wed, 15 Aug 2018 19:58:31 +0100
+Subject: [PATCH] Patch to build on freedesktop-sdk
+
+---
+ configure.ac            |  4 ++--
+ ext/libav/gstavviddec.c | 13 -------------
+ 2 files changed, 2 insertions(+), 15 deletions(-)
+
+diff --git a/configure.ac b/configure.ac
+index 1e8c353..21bfedb 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -45,8 +45,8 @@ AG_GST_LIBTOOL_PREPARE
+ AS_LIBTOOL(GST, 1500, 0, 1500)
+ 
+ dnl *** required versions of GStreamer stuff ***
+-GST_REQ=1.15.0.1
+-GST_PBREQ=1.15.0.1
++GST_REQ=1.14.2
++GST_PBREQ=1.14.2
+ 
+ ORC_REQ=0.4.16
+ ORC_CHECK([$ORC_REQ])
+diff --git a/ext/libav/gstavviddec.c b/ext/libav/gstavviddec.c
+index e3ae04f..09fcc7b 100644
+--- a/ext/libav/gstavviddec.c
++++ b/ext/libav/gstavviddec.c
+@@ -1592,19 +1592,6 @@ gst_ffmpegviddec_video_frame (GstFFMpegVidDec * ffmpegdec,
+           GST_VIDEO_BUFFER_FLAG_INTERLACED);
+   }
+ 
+-  {
+-    AVFrameSideData *side_data =
+-        av_frame_get_side_data (ffmpegdec->picture, AV_FRAME_DATA_A53_CC);
+-    if (side_data) {
+-      GST_LOG_OBJECT (ffmpegdec, "Found CC of size %d", side_data->size);
+-      GST_MEMDUMP ("A53 CC", side_data->data, side_data->size);
+-      out_frame->output_buffer =
+-          gst_buffer_make_writable (out_frame->output_buffer);
+-      gst_buffer_add_video_caption_meta (out_frame->output_buffer,
+-          GST_VIDEO_CAPTION_TYPE_CEA708_RAW, side_data->data, side_data->size);
+-    }
+-  }
+-
+   /* cleaning time */
+   /* so we decoded this frame, frames preceding it in decoding order
+    * that still do not have a buffer allocated seem rather useless,
+-- 
+2.18.0
+
diff --git a/files/gst-libav/stop-caching-codecs.patch b/files/gst-libav/stop-caching-codecs.patch
new file mode 100644
index 0000000..b0c9db1
--- /dev/null
+++ b/files/gst-libav/stop-caching-codecs.patch
@@ -0,0 +1,18 @@
+Index: gst-libav1.0/ext/libav/gstav.c
+===================================================================
+--- gst-libav1.0.orig/ext/libav/gstav.c        2012-09-14 12:09:56.359035020 +0200
++++ gst-libav1.0/ext/libav/gstav.c     2012-12-18 11:40:42.190169045 +0100
+@@ -134,6 +134,13 @@
+ 
+   av_register_all ();
+ 
++  gst_plugin_add_dependency_simple (plugin, NULL,
++      "/usr/lib:/usr/local/lib",
++      "libavcodec.so.58,"
++      "libavformat.so.58,"
++      "libswscale.so.5",
++      GST_PLUGIN_DEPENDENCY_FLAG_NONE);
++
+   gst_ffmpegaudenc_register (plugin);
+   gst_ffmpegvidenc_register (plugin);
+   gst_ffmpegauddec_register (plugin);


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]