On Wed, Mar 11, 2026 at 06:59 AM, Brandon Brnich wrote:

>
> Upstream gstreamer has introduced a new method for mapping V4L2 buffer
> formats to their respective GST format. Previously it was a big switch
> statement manually assigning all contiguous and non-contiguous variants to
> fourcc and fourcc_nc respectively. Formats that didn't have both options
> would only populate the fourcc. The new mapping properly sets the
> corresponding fourcc/fourcc_nc. This means for pixel formats that have no
> contiguous option, the non-contiguous option should be checked prior to
> pipeline negotiation failures.
> 
> Signed-off-by: Brandon Brnich <[email protected]>
Tested-by: Telukula Jeevan Kumar Sahu <[email protected]>
> ---
>  ...pt-non-contiguous-if-contiguous-form.patch | 36 +++++++++++++++++++
>  .../gstreamer1.0-plugins-good_1.26-arago.inc  |  1 +
>  2 files changed, 37 insertions(+)
>  create mode 100644
> meta-arago-extras/recipes-multimedia/gstreamer/gstreamer1.0-plugins-good/0007-v4l2object-Attempt-non-contiguous-if-contiguous-form.patch
> 
> diff --git
> b/meta-arago-extras/recipes-multimedia/gstreamer/gstreamer1.0-plugins-good/0007-v4l2object-Attempt-non-contiguous-if-contiguous-form.patch
> new file mode 100644
> index 00000000..db7e6f0c
> --- /dev/null
> +++
> b/meta-arago-extras/recipes-multimedia/gstreamer/gstreamer1.0-plugins-good/0007-v4l2object-Attempt-non-contiguous-if-contiguous-form.patch
> @@ -0,0 +1,36 @@
> +From 8d29018dd31be2045f6724db0942ae1a7da0a789 Mon Sep 17 00:00:00 2001
> +From: Brandon Brnich <[email protected]>
> +Date: Tue, 10 Mar 2026 19:47:35 -0500
> +Subject: [PATCH] v4l2object: Attempt non-contiguous if contiguous format
> isn't
> + present
> +
> +Gstreamer previously had logic that would set fourcc even if the format
> +being negotiated didn't have a contiguous option - YUYV for example. A fix
> +was sent to properly set either forcc/forcc_nc properly. For formats that
> +don't have contiguous formats, that would mean attempting non-contiguous
> +options wouldn't happen. Attempt non-contiguous formats before erroring
> +out if applicable.
> +
> +Upstream-Status: Inappropriate [TI-custom]
> +
> +Signed-off-by: Brandon Brnich <[email protected]>
> +---
> + sys/v4l2/gstv4l2object.c | 2 +-
> + 1 file changed, 1 insertion(+), 1 deletion(-)
> +
> +diff --git a/sys/v4l2/gstv4l2object.c b/sys/v4l2/gstv4l2object.c
> +index dbfe4992be..b4a7c32f31 100644
> +--- a/sys/v4l2/gstv4l2object.c
> ++++ b/sys/v4l2/gstv4l2object.c
> +@@ -2167,7 +2167,7 @@ gst_v4l2_object_get_caps_info (GstV4l2Object *
> v4l2object, GstCaps * caps,
> +
> +   if (fourcc)
> +     fmt = gst_v4l2_object_get_format_from_fourcc (v4l2object, fourcc);
> +-  else if (fourcc == 0)
> ++  else if (fourcc_nc == 0)
> +     goto unhandled_format;
> +
> +   if (fmt == NULL) {
> +--
> +2.43.0
> +
> diff --git
> b/meta-arago-extras/recipes-multimedia/gstreamer/gstreamer1.0-plugins-good_1.26-arago.inc
> index f64790bc..9e418b86 100644
> ---
> a/meta-arago-extras/recipes-multimedia/gstreamer/gstreamer1.0-plugins-good_1.26-arago.inc
> +++
> b/meta-arago-extras/recipes-multimedia/gstreamer/gstreamer1.0-plugins-good_1.26-arago.inc
> @@ -7,6 +7,7 @@ SRC_URI:append = " \
>      file://0005-HACK-gstv4l2object-Increase-min-buffers-for-CSI-capt.patch \
>      file://0001-v4l2jpegenc-Add-support-for-cropping-in-JPEG-Encoder.patch \
>      file://0006-v4l2object-use-actual-stream-resolution-for-encoded-.patch \
> +    file://0007-v4l2object-Attempt-non-contiguous-if-contiguous-form.patch \
>  "
>  
>  PR:append = ".arago0"
> -- 
> 2.34.1
> 
>


-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#17306): 
https://lists.yoctoproject.org/g/meta-arago/message/17306
Mute This Topic: https://lists.yoctoproject.org/mt/118253324/21656
Group Owner: [email protected]
Unsubscribe: https://lists.yoctoproject.org/g/meta-arago/unsub 
[[email protected]]
-=-=-=-=-=-=-=-=-=-=-=-


Reply via email to