[PATCH] gstreamer: Add Y444 format support to the YUV list

Kieran Bingham kieran.bingham at ideasonboard.com
Mon Mar 17 18:52:52 CET 2025


Quoting Antoine Bouyer (2025-03-17 16:10:50)
> 'imx8-isi' pipeline provides support for 'YUV444' PixelFormat with YUV
> streams, but it cannot be played with gstreamer adapter whereas
> gstreamer's video format 'Y444' value suggests that it also supports
> this format.

'Suggests'? I think we can be a bit more confident in the wording that
we expect Y444 from gstreamer to be mapped to the YUV444 from libcamera.

I assume you have tested this as well, so we can 'confirm' that this is
indeed the correct format mappings ?

> 
> To add support of Planar 4:4:4 YUV format in gstreamer adapter, this patch
> maps 'Y444' gstreamer video format with 'YUV444' libcamera PixelFormat.
> 
> Then below command example can be used to capture a stream with imx8-isi
> pipeline:
> 
>   gst-launch-1.0 \
>       libcamerasrc camera-name=<your_camera_name> ! \
>       video/x-raw, format=Y444, width=1280, height=800 ! \
>       queue ! \
>       filesink location=/tmp/output

Not always something we would have in the commit message, but I think
clearly stating how this is tested here is useful!

> 
> Signed-off-by: Antoine Bouyer <antoine.bouyer at nxp.com>

Overall, that's an easy one :-)

Reviewed-by: Kieran Bingham <kieran.bingham at ideasonboard.com>

> ---
>  src/gstreamer/gstlibcamera-utils.cpp | 1 +
>  1 file changed, 1 insertion(+)
> 
> diff --git a/src/gstreamer/gstlibcamera-utils.cpp b/src/gstreamer/gstlibcamera-utils.cpp
> index a466b30..41eea7d 100644
> --- a/src/gstreamer/gstlibcamera-utils.cpp
> +++ b/src/gstreamer/gstlibcamera-utils.cpp
> @@ -74,6 +74,7 @@ static struct {
>         { GST_VIDEO_FORMAT_I420, formats::YUV420 },
>         { GST_VIDEO_FORMAT_YV12, formats::YVU420 },
>         { GST_VIDEO_FORMAT_Y42B, formats::YUV422 },
> +       { GST_VIDEO_FORMAT_Y444, formats::YUV444 },
>  
>         /* YUV Packed */
>         { GST_VIDEO_FORMAT_UYVY, formats::UYVY },
> -- 
> 2.34.1
>


More information about the libcamera-devel mailing list