diff options
author | Matt Turner <mattst88@gentoo.org> | 2022-05-28 21:28:01 -0400 |
---|---|---|
committer | Matt Turner <mattst88@gentoo.org> | 2022-05-28 21:31:09 -0400 |
commit | 5b564489d98f2937be31ced87a6ca029fa4d3929 (patch) | |
tree | 95b949a4fa8a36222bcc1e04383b0f9043d17b23 /media-libs/clutter-gst | |
parent | net-libs/webkit-gtk: Version bump to 2.36.3 (diff) | |
download | gentoo-5b564489d98f2937be31ced87a6ca029fa4d3929.tar.gz gentoo-5b564489d98f2937be31ced87a6ca029fa4d3929.tar.bz2 gentoo-5b564489d98f2937be31ced87a6ca029fa4d3929.zip |
media-libs/clutter-gst: Add patch to remove RGBx/BGRx support
Closes: https://bugs.gentoo.org/847913
Signed-off-by: Matt Turner <mattst88@gentoo.org>
Diffstat (limited to 'media-libs/clutter-gst')
-rw-r--r-- | media-libs/clutter-gst/clutter-gst-3.0.27-r2.ebuild | 49 | ||||
-rw-r--r-- | media-libs/clutter-gst/files/3.0.27-video-sink-Remove-RGBx-BGRx-support.patch | 63 |
2 files changed, 112 insertions, 0 deletions
diff --git a/media-libs/clutter-gst/clutter-gst-3.0.27-r2.ebuild b/media-libs/clutter-gst/clutter-gst-3.0.27-r2.ebuild new file mode 100644 index 000000000000..3b28b0d10ce9 --- /dev/null +++ b/media-libs/clutter-gst/clutter-gst-3.0.27-r2.ebuild @@ -0,0 +1,49 @@ +# Copyright 1999-2022 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit gnome2 + +HOMEPAGE="https://blogs.gnome.org/clutter/" +DESCRIPTION="GStreamer integration library for Clutter" + +LICENSE="LGPL-2.1+" +SLOT="3.0" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~ia64 ~ppc ~ppc64 ~riscv ~sparc ~x86" +IUSE="X debug +introspection udev" + +# >=cogl-1.18 provides cogl-2.0-experimental +DEPEND=" + >=dev-libs/glib-2.20:2 + >=media-libs/clutter-1.20:1.0=[X=,introspection?] + >=media-libs/cogl-1.18:1.0=[introspection?] + >=media-libs/gstreamer-1.4:1.0[introspection?] + >=media-libs/gst-plugins-bad-1.4:1.0 + >=media-libs/gst-plugins-base-1.4:1.0[introspection?] + introspection? ( >=dev-libs/gobject-introspection-0.6.8:= ) + udev? ( dev-libs/libgudev ) +" +# uses goom from gst-plugins-good +RDEPEND="${DEPEND} + >=media-libs/gst-plugins-good-1.4:1.0 + !udev? ( media-plugins/gst-plugins-v4l2 ) +" +BDEPEND=" + dev-util/glib-utils + >=dev-util/gtk-doc-am-1.11 + virtual/pkgconfig +" + +PATCHES=( + "${FILESDIR}"/${PV}-video-sink-Remove-RGBx-BGRx-support.patch +) + +src_configure() { + # --enable-gl-texture-upload is experimental + gnome2_src_configure \ + --disable-maintainer-flags \ + --enable-debug=$(usex debug yes minimum) \ + $(use_enable introspection) \ + $(use_enable udev) +} diff --git a/media-libs/clutter-gst/files/3.0.27-video-sink-Remove-RGBx-BGRx-support.patch b/media-libs/clutter-gst/files/3.0.27-video-sink-Remove-RGBx-BGRx-support.patch new file mode 100644 index 000000000000..fba6addc08cf --- /dev/null +++ b/media-libs/clutter-gst/files/3.0.27-video-sink-Remove-RGBx-BGRx-support.patch @@ -0,0 +1,63 @@ +From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 +From: "Jan Alexander Steffens (heftig)" <heftig@archlinux.org> +Date: Tue, 26 Apr 2022 23:06:51 +0000 +Subject: [PATCH] video-sink: Remove RGBx/BGRx support + +The rgb24 renderer uses the wrong pixel stride and the rgb32 renderer +assumes alpha is meaningful. We can use neither. + +Fixes: https://gitlab.gnome.org/GNOME/cheese/-/issues/51 +--- + clutter-gst/clutter-gst-video-sink.c | 8 ++------ + 1 file changed, 2 insertions(+), 6 deletions(-) + +diff --git a/clutter-gst/clutter-gst-video-sink.c b/clutter-gst/clutter-gst-video-sink.c +index 2cbabe6043ca..2c1c10c7810b 100644 +--- a/clutter-gst/clutter-gst-video-sink.c ++++ b/clutter-gst/clutter-gst-video-sink.c +@@ -98,8 +98,6 @@ GST_DEBUG_CATEGORY_STATIC (clutter_gst_video_sink_debug); + "I420," \ + "RGBA," \ + "BGRA," \ +- "RGBx," \ +- "BGRx," \ + "RGB," \ + "BGR," \ + "NV12 }" +@@ -1392,21 +1390,21 @@ static ClutterGstRenderer rgb32_glsl_renderer = + ";" + #endif + MAKE_CAPS (GST_CAPS_FEATURE_MEMORY_SYSTEM_MEMORY, +- "{ RGBA, BGRA, RGBx, BGRx }")), ++ "{ RGBA, BGRA }")), + 1, /* n_layers */ + clutter_gst_rgb32_glsl_setup_pipeline, + clutter_gst_rgb32_upload, + clutter_gst_rgb32_upload_gl, + clutter_gst_dummy_shutdown, + }; + + static ClutterGstRenderer rgb32_renderer = + { + "RGB 32", + CLUTTER_GST_RGB32, + 0, + GST_STATIC_CAPS (MAKE_CAPS (GST_CAPS_FEATURE_MEMORY_SYSTEM_MEMORY, +- "{ RGBA, BGRA, RGBx, BGRx }")), ++ "{ RGBA, BGRA }")), + 2, /* n_layers */ + clutter_gst_rgb32_setup_pipeline, + clutter_gst_rgb32_upload, +@@ -1907,12 +1905,10 @@ clutter_gst_video_sink_parse_caps (GstCaps *caps, + format = CLUTTER_GST_NV12; + break; + case GST_VIDEO_FORMAT_RGB: +- case GST_VIDEO_FORMAT_RGBx: + format = CLUTTER_GST_RGB24; + bgr = FALSE; + break; + case GST_VIDEO_FORMAT_BGR: +- case GST_VIDEO_FORMAT_BGRx: + format = CLUTTER_GST_RGB24; + bgr = TRUE; + break; |