Title: [291345] trunk/Tools/buildstream
Revision
291345
Author
commit-qu...@webkit.org
Date
2022-03-16 07:28:59 -0700 (Wed, 16 Mar 2022)

Log Message

[Flatpak SDK] Update to GStreamer 1.20.1
https://bugs.webkit.org/show_bug.cgi?id=237954

Patch by Philippe Normand <pnorm...@igalia.com> on 2022-03-16
Reviewed by Adrian Perez de Castro.

* elements/sdk/gst-libav.bst:
* elements/sdk/gst-plugins-bad.bst:
* elements/sdk/gst-plugins-base.bst:
* elements/sdk/gst-plugins-good.bst:
* elements/sdk/gst-plugins-ugly.bst:
* elements/sdk/gstreamer.bst:
* patches/gstreamer-0001-dtlstransport-Notify-ICE-transport-property-changes.patch: Removed.
* patches/gstreamer-0001-typefind-Skip-parsing-of-data-URIs.patch: Added.
* patches/gstreamer-0002-uri-Build-doubly-linked-list-by-prepending-items.patch: Added.

Modified Paths

Added Paths

Removed Paths

Diff

Modified: trunk/Tools/buildstream/ChangeLog (291344 => 291345)


--- trunk/Tools/buildstream/ChangeLog	2022-03-16 13:14:18 UTC (rev 291344)
+++ trunk/Tools/buildstream/ChangeLog	2022-03-16 14:28:59 UTC (rev 291345)
@@ -1,3 +1,20 @@
+2022-03-16  Philippe Normand  <pnorm...@igalia.com>
+
+        [Flatpak SDK] Update to GStreamer 1.20.1
+        https://bugs.webkit.org/show_bug.cgi?id=237954
+
+        Reviewed by Adrian Perez de Castro.
+
+        * elements/sdk/gst-libav.bst:
+        * elements/sdk/gst-plugins-bad.bst:
+        * elements/sdk/gst-plugins-base.bst:
+        * elements/sdk/gst-plugins-good.bst:
+        * elements/sdk/gst-plugins-ugly.bst:
+        * elements/sdk/gstreamer.bst:
+        * patches/gstreamer-0001-dtlstransport-Notify-ICE-transport-property-changes.patch: Removed.
+        * patches/gstreamer-0001-typefind-Skip-parsing-of-data-URIs.patch: Added.
+        * patches/gstreamer-0002-uri-Build-doubly-linked-list-by-prepending-items.patch: Added.
+
 2022-03-14  Philippe Normand  <pnorm...@igalia.com>
 
         [Flatpak SDK] Get rid of Python2

Modified: trunk/Tools/buildstream/elements/sdk/gst-libav.bst (291344 => 291345)


--- trunk/Tools/buildstream/elements/sdk/gst-libav.bst	2022-03-16 13:14:18 UTC (rev 291344)
+++ trunk/Tools/buildstream/elements/sdk/gst-libav.bst	2022-03-16 14:28:59 UTC (rev 291345)
@@ -1,8 +1,8 @@
 kind: meson
 sources:
 - kind: tar
-  url: gst_downloads:gst-libav/gst-libav-1.20.0.tar.xz
-  ref: 5eee5ed8d5082a31b500448e41535c722ee30cd5f8224f32982bbaba2eedef17
+  url: gst_downloads:gst-libav/gst-libav-1.20.1.tar.xz
+  ref: 91a71fb633b75e1bd52e22a457845cb0ba563a2972ba5954ec88448f443a9fc7
 build-depends:
 - freedesktop-sdk.bst:public-stacks/buildsystem-meson.bst
 - freedesktop-sdk.bst:components/nasm.bst

Modified: trunk/Tools/buildstream/elements/sdk/gst-plugins-bad.bst (291344 => 291345)


--- trunk/Tools/buildstream/elements/sdk/gst-plugins-bad.bst	2022-03-16 13:14:18 UTC (rev 291344)
+++ trunk/Tools/buildstream/elements/sdk/gst-plugins-bad.bst	2022-03-16 14:28:59 UTC (rev 291345)
@@ -1,11 +1,8 @@
 kind: meson
 sources:
 - kind: tar
-  url: gst_downloads:gst-plugins-bad/gst-plugins-bad-1.20.0.tar.xz
-  ref: 015b8d4d9a395ebf444d40876867a2034dd3304b3ad48bc3a0dd0c1ee71dc11d
-# To be shipped in 1.20.1.
-- kind: patch
-  path: patches/gstreamer-0001-dtlstransport-Notify-ICE-transport-property-changes.patch
+  url: gst_downloads:gst-plugins-bad/gst-plugins-bad-1.20.1.tar.xz
+  ref: 09d3c2cf5911f0bc7da6bf557a55251779243d3de216b6a26cc90c445b423848
 build-depends:
 - freedesktop-sdk.bst:public-stacks/buildsystem-meson.bst
 depends:

Modified: trunk/Tools/buildstream/elements/sdk/gst-plugins-base.bst (291344 => 291345)


--- trunk/Tools/buildstream/elements/sdk/gst-plugins-base.bst	2022-03-16 13:14:18 UTC (rev 291344)
+++ trunk/Tools/buildstream/elements/sdk/gst-plugins-base.bst	2022-03-16 14:28:59 UTC (rev 291345)
@@ -1,8 +1,8 @@
 kind: meson
 sources:
 - kind: tar
-  url: gst_downloads:gst-plugins-base/gst-plugins-base-1.20.0.tar.xz
-  ref: 4cb66fccf730b1037e6533862c2128990912a6db4e5bbd14e0ef914450eb4c7c
+  url: gst_downloads:gst-plugins-base/gst-plugins-base-1.20.1.tar.xz
+  ref: 96d8a6413ba9394fbec1217aeef63741a729d476a505a797c1d5337d8fa7c204
 build-depends:
 - freedesktop-sdk.bst:public-stacks/buildsystem-meson.bst
 depends:

Modified: trunk/Tools/buildstream/elements/sdk/gst-plugins-good.bst (291344 => 291345)


--- trunk/Tools/buildstream/elements/sdk/gst-plugins-good.bst	2022-03-16 13:14:18 UTC (rev 291344)
+++ trunk/Tools/buildstream/elements/sdk/gst-plugins-good.bst	2022-03-16 14:28:59 UTC (rev 291345)
@@ -1,8 +1,8 @@
 kind: meson
 sources:
 - kind: tar
-  url: gst_downloads:gst-plugins-good/gst-plugins-good-1.20.0.tar.xz
-  ref: 2d119c15ab8c9e79f8cd3c6bf582ff7a050b28ccae52ab4865e1a1464991659c
+  url: gst_downloads:gst-plugins-good/gst-plugins-good-1.20.1.tar.xz
+  ref: 3c66876f821d507bcdbebffb08b4f31a322727d6753f65a0f02c905ecb7084aa
 build-depends:
 - freedesktop-sdk.bst:public-stacks/buildsystem-meson.bst
 depends:

Modified: trunk/Tools/buildstream/elements/sdk/gst-plugins-ugly.bst (291344 => 291345)


--- trunk/Tools/buildstream/elements/sdk/gst-plugins-ugly.bst	2022-03-16 13:14:18 UTC (rev 291344)
+++ trunk/Tools/buildstream/elements/sdk/gst-plugins-ugly.bst	2022-03-16 14:28:59 UTC (rev 291345)
@@ -1,8 +1,8 @@
 kind: meson
 sources:
 - kind: tar
-  url: gst_downloads:gst-plugins-ugly/gst-plugins-ugly-1.20.0.tar.xz
-  ref: 4e8dcb5d26552f0a4937f6bc6279bd9070f55ca6ae0eaa32d72d264c44001c2e
+  url: gst_downloads:gst-plugins-ugly/gst-plugins-ugly-1.20.1.tar.xz
+  ref: 42035145e29983308d2828207bb4ef933ed0407bb587fb3a569738c6a57fdb19
 build-depends:
 - freedesktop-sdk.bst:public-stacks/buildsystem-meson.bst
 depends:

Modified: trunk/Tools/buildstream/elements/sdk/gstreamer.bst (291344 => 291345)


--- trunk/Tools/buildstream/elements/sdk/gstreamer.bst	2022-03-16 13:14:18 UTC (rev 291344)
+++ trunk/Tools/buildstream/elements/sdk/gstreamer.bst	2022-03-16 14:28:59 UTC (rev 291345)
@@ -1,8 +1,13 @@
 kind: meson
 sources:
 - kind: tar
-  url: gst_downloads:gstreamer/gstreamer-1.20.0.tar.xz
-  ref: edf4bffff85591d4fff7b21bb9ed7f0feabc123ac4a4eff29e73cbce454f9db7
+  url: gst_downloads:gstreamer/gstreamer-1.20.1.tar.xz
+  ref: de094a404a3ad8f4977829ea87edf695a4da0b5c8f613ebe54ab414bac89f031
+# Upstreamed patches most likely shipping in 1.20.2.
+- kind: patch
+  path: patches/gstreamer-0001-typefind-Skip-parsing-of-data-URIs.patch
+- kind: patch
+  path: patches/gstreamer-0002-uri-Build-doubly-linked-list-by-prepending-items.patch
 build-depends:
 - freedesktop-sdk.bst:components/gobject-introspection.bst
 - freedesktop-sdk.bst:public-stacks/buildsystem-meson.bst

Deleted: trunk/Tools/buildstream/patches/gstreamer-0001-dtlstransport-Notify-ICE-transport-property-changes.patch (291344 => 291345)


--- trunk/Tools/buildstream/patches/gstreamer-0001-dtlstransport-Notify-ICE-transport-property-changes.patch	2022-03-16 13:14:18 UTC (rev 291344)
+++ trunk/Tools/buildstream/patches/gstreamer-0001-dtlstransport-Notify-ICE-transport-property-changes.patch	2022-03-16 14:28:59 UTC (rev 291345)
@@ -1,41 +0,0 @@
-From 5a2e1ecb4d82a28aa735d829eb8ecfaaae34674f Mon Sep 17 00:00:00 2001
-From: Philippe Normand <ph...@igalia.com>
-Date: Sat, 12 Feb 2022 10:05:11 +0000
-Subject: [PATCH] dtlstransport: Notify ICE transport property changes
-
-The application might track the underlying ICE transport, so not notifying
-changes might lead to use-after-free issues.
-
-Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1688>
----
- .../gst-plugins-bad/gst-libs/gst/webrtc/dtlstransport.c  | 9 ++++++++-
- 1 file changed, 8 insertions(+), 1 deletion(-)
-
-diff --git a/gst-libs/gst/webrtc/dtlstransport.c b/gst-libs/gst/webrtc/dtlstransport.c
-index c401f7f73b..e3d54a0566 100644
---- a/gst-libs/gst/webrtc/dtlstransport.c
-+++ b/gst-libs/gst/webrtc/dtlstransport.c
-@@ -64,12 +64,19 @@ void
- gst_webrtc_dtls_transport_set_transport (GstWebRTCDTLSTransport * transport,
-     GstWebRTCICETransport * ice)
- {
-+  gboolean notify = FALSE;
-+
-   g_return_if_fail (GST_IS_WEBRTC_DTLS_TRANSPORT (transport));
-   g_return_if_fail (GST_IS_WEBRTC_ICE_TRANSPORT (ice));
- 
-   GST_OBJECT_LOCK (transport);
--  gst_object_replace ((GstObject **) & transport->transport, GST_OBJECT (ice));
-+  notify =
-+      gst_object_replace ((GstObject **) & transport->transport,
-+      GST_OBJECT (ice));
-   GST_OBJECT_UNLOCK (transport);
-+
-+  if (notify)
-+    g_object_notify (G_OBJECT (transport), "transport");
- }
- 
- static void
--- 
-2.34.1
-

Added: trunk/Tools/buildstream/patches/gstreamer-0001-typefind-Skip-parsing-of-data-URIs.patch (0 => 291345)


--- trunk/Tools/buildstream/patches/gstreamer-0001-typefind-Skip-parsing-of-data-URIs.patch	                        (rev 0)
+++ trunk/Tools/buildstream/patches/gstreamer-0001-typefind-Skip-parsing-of-data-URIs.patch	2022-03-16 14:28:59 UTC (rev 291345)
@@ -0,0 +1,43 @@
+From b8ccf7f80283d06841a0b191be940f7ab78940c8 Mon Sep 17 00:00:00 2001
+From: Philippe Normand <ph...@igalia.com>
+Date: Tue, 8 Mar 2022 12:04:41 +0000
+Subject: [PATCH 1/2] typefind: Skip parsing of data URIs
+
+Commit a46ab2ced20d757e0e770d4de1edc3a152cc4f2f introduced a regression,
+breaking typefinding for media content muxed in mp4 container and serialized to
+data URIs. For this case it doesn't make sense to look for a file extension, so
+skip URI parsing.
+
+Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1909>
+---
+ .../plugins/elements/gsttypefindelement.c        | 7 +++++++
+ 1 file changed, 7 insertions(+)
+
+diff --git a/plugins/elements/gsttypefindelement.c b/plugins/elements/gsttypefindelement.c
+index 84e60a9c68..41dedb27fe 100644
+--- a/plugins/elements/gsttypefindelement.c
++++ b/plugins/elements/gsttypefindelement.c
+@@ -803,6 +803,8 @@ gst_type_find_get_extension (GstTypeFindElement * typefind, GstPad * pad)
+   gchar *uri, *result, *path, *base_path, *find;
+   GstUri *gst_uri;
+ 
++  base_path = NULL;
++
+   query = gst_query_new_uri ();
+ 
+   /* try getting the caps with an uri query and from the extension */
+@@ -813,6 +815,11 @@ gst_type_find_get_extension (GstTypeFindElement * typefind, GstPad * pad)
+   if (uri == NULL)
+     goto no_uri;
+ 
++  /* data URIs paths are opaque and do not semantically represent a
++     filesystem-like resource path, so skip URI parsing for this case. */
++  if (g_str_has_prefix (uri, "data:"))
++    goto no_extension;
++
+   GST_DEBUG_OBJECT (typefind, "finding extension of %s", uri);
+ 
+   gst_uri = gst_uri_from_string (uri);
+-- 
+2.35.1
+

Added: trunk/Tools/buildstream/patches/gstreamer-0002-uri-Build-doubly-linked-list-by-prepending-items.patch (0 => 291345)


--- trunk/Tools/buildstream/patches/gstreamer-0002-uri-Build-doubly-linked-list-by-prepending-items.patch	                        (rev 0)
+++ trunk/Tools/buildstream/patches/gstreamer-0002-uri-Build-doubly-linked-list-by-prepending-items.patch	2022-03-16 14:28:59 UTC (rev 291345)
@@ -0,0 +1,48 @@
+From 4277af3219cc68853a49537e39aa0c1caefc5356 Mon Sep 17 00:00:00 2001
+From: Philippe Normand <ph...@igalia.com>
+Date: Thu, 10 Mar 2022 18:22:49 +0000
+Subject: [PATCH 2/2] uri: Build doubly-linked list by prepending items
+
+As outlined in the API documentation, g_list_append() iterates over the whole
+list, which can quickly introduce performance issues when the list becomes very
+big, such as for data URIs for instance.
+
+Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1909>
+---
+ gst/gsturi.c | 6 +++---
+ 1 file changed, 3 insertions(+), 3 deletions(-)
+
+diff --git a/gst/gsturi.c b/gst/gsturi.c
+index de613658cc..d3501a8360 100644
+--- a/gst/gsturi.c
++++ b/gst/gsturi.c
+@@ -1315,7 +1315,7 @@ _gst_uri_string_to_list (const gchar * str, const gchar * sep, gboolean convert,
+       for (next_elem = split_str; *next_elem; next_elem += 1) {
+         gchar *elem = *next_elem;
+         if (*elem == '\0') {
+-          new_list = g_list_append (new_list, NULL);
++          new_list = g_list_prepend (new_list, NULL);
+         } else {
+           if (convert && !unescape) {
+             gchar *next_sep;
+@@ -1331,7 +1331,7 @@ _gst_uri_string_to_list (const gchar * str, const gchar * sep, gboolean convert,
+             g_free (elem);
+             elem = *next_elem;
+           }
+-          new_list = g_list_append (new_list, g_strdup (elem));
++          new_list = g_list_prepend (new_list, g_strdup (elem));
+         }
+       }
+     }
+@@ -1340,7 +1340,7 @@ _gst_uri_string_to_list (const gchar * str, const gchar * sep, gboolean convert,
+       g_free (pct_sep);
+   }
+ 
+-  return new_list;
++  return g_list_reverse (new_list);
+ }
+ 
+ static GHashTable *
+-- 
+2.35.1
+
_______________________________________________
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to