d3d11convert: Don't passthrough if colorimetry conversion is required
authorSeungha Yang <seungha@centricular.com>
Mon, 13 Jun 2022 18:15:42 +0000 (03:15 +0900)
committerSeungha Yang <seungha@centricular.com>
Mon, 13 Jun 2022 19:41:40 +0000 (04:41 +0900)
Different input/output colorimetry requires conversion

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2581>

subprojects/gst-plugins-bad/sys/d3d11/gstd3d11convert.cpp

index 0195452..1ebc5a3 100644 (file)
@@ -1778,7 +1778,9 @@ gst_d3d11_base_convert_set_info (GstD3D11BaseFilter * filter,
 
   if (in_info->width == out_info->width && in_info->height == out_info->height
       && in_info->finfo == out_info->finfo && self->borders_w == 0 &&
-      self->borders_h == 0) {
+      self->borders_h == 0 &&
+      gst_video_colorimetry_is_equal (&in_info->colorimetry,
+          &out_info->colorimetry)) {
     gst_base_transform_set_passthrough (GST_BASE_TRANSFORM (filter), TRUE);
     return TRUE;
   } else {