[libcamera-devel] [PATCH] gstreamer: Check gstreamer version before using newer macros

Umang Jain umang.jain at ideasonboard.com
Sun Sep 11 18:58:48 CEST 2022


CC Rishi

Hi, Can you please review and add your tags here, I guess you have tested ?

On 9/10/22 3:09 AM, Vedant Paranjape via libcamera-devel wrote:
> GST_VIDEO_TRANSFER_BT601 and GST_VIDEO_TRANSFER_BT2020_10 macros are
> defined in GST Version 1.18.0.
>
> Use of these macros breaks libcamera if GST_VERSION < 1.18.0, these
> macros are used only if GST_VERSION >= 1.18.0. Fixes the following
> compilation error:
>
> ../src/gstreamer/gstlibcamera-utils.cpp:157:7: error: ‘GST_VIDEO_TRANSFER_BT601’ was not declared in this scope; did you mean ‘GST_VIDEO_TRANSFER_BT709’?
>    157 |  case GST_VIDEO_TRANSFER_BT601:
>        |       ^~~~~~~~~~~~~~~~~~~~~~~~
>        |       GST_VIDEO_TRANSFER_BT709
> ../src/gstreamer/gstlibcamera-utils.cpp:159:7: error: ‘GST_VIDEO_TRANSFER_BT2020_10’ was not declared in this scope; did you mean ‘GST_VIDEO_TRANSFER_BT2020_12’?
>    159 |  case GST_VIDEO_TRANSFER_BT2020_10:
>        |       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
>        |       GST_VIDEO_TRANSFER_BT2020_12
>
> Signed-off-by: Vedant Paranjape <vedantparanjape160201 at gmail.com>
> ---
>   src/gstreamer/gstlibcamera-utils.cpp | 4 +++-
>   1 file changed, 3 insertions(+), 1 deletion(-)
>
> diff --git a/src/gstreamer/gstlibcamera-utils.cpp b/src/gstreamer/gstlibcamera-utils.cpp
> index 4df5dd6c14fd..244a4a79845d 100644
> --- a/src/gstreamer/gstlibcamera-utils.cpp
> +++ b/src/gstreamer/gstlibcamera-utils.cpp
> @@ -154,9 +154,11 @@ colorspace_from_colorimetry(const GstVideoColorimetry &colorimetry)
>   	case GST_VIDEO_TRANSFER_SRGB:
>   		colorspace->transferFunction = ColorSpace::TransferFunction::Srgb;
>   		break;
> +#if GST_CHECK_VERSION(1, 18, 0)
>   	case GST_VIDEO_TRANSFER_BT601:
> -	case GST_VIDEO_TRANSFER_BT2020_12:
>   	case GST_VIDEO_TRANSFER_BT2020_10:
> +#endif
> +	case GST_VIDEO_TRANSFER_BT2020_12:
>   	case GST_VIDEO_TRANSFER_BT709:
>   		colorspace->transferFunction = ColorSpace::TransferFunction::Rec709;
>   		break;



More information about the libcamera-devel mailing list