From 953257782d9c1bb9233f18b1e7feb791cb8eed2b Mon Sep 17 00:00:00 2001 From: Seungha Yang Date: Sun, 17 Jul 2022 00:30:10 +0900 Subject: [PATCH] video-converter: Use primaries compare function Avoid conversion if both color primaries are functionally equal Part-of: --- .../gst-plugins-base/gst-libs/gst/video/video-converter.c | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/subprojects/gst-plugins-base/gst-libs/gst/video/video-converter.c b/subprojects/gst-plugins-base/gst-libs/gst/video/video-converter.c index 11963759c2..4ccabe17c3 100644 --- a/subprojects/gst-plugins-base/gst-libs/gst/video/video-converter.c +++ b/subprojects/gst-plugins-base/gst-libs/gst/video/video-converter.c @@ -1739,8 +1739,8 @@ chain_convert (GstVideoConverter * convert, GstLineCache * prev, gint idx) same_primaries = TRUE; } else { same_primaries = - convert->in_info.colorimetry.primaries == - convert->out_info.colorimetry.primaries; + gst_video_color_primaries_is_equivalent (convert->in_info. + colorimetry.primaries, convert->out_info.colorimetry.primaries); } GST_DEBUG ("matrix %d -> %d (%d)", convert->in_info.colorimetry.matrix, @@ -8214,7 +8214,8 @@ video_converter_lookup_fastpath (GstVideoConverter * convert) in_primaries = convert->in_info.colorimetry.primaries; out_primaries = convert->out_info.colorimetry.primaries; - same_primaries = in_primaries == out_primaries; + same_primaries = gst_video_color_primaries_is_equivalent (in_primaries, + out_primaries); } interlaced = GST_VIDEO_INFO_IS_INTERLACED (&convert->in_info);