video: port to new colorimetry info
authorWim Taymans <wim.taymans@collabora.co.uk>
Tue, 23 Aug 2011 17:09:31 +0000 (19:09 +0200)
committerWim Taymans <wim.taymans@collabora.co.uk>
Tue, 23 Aug 2011 17:09:31 +0000 (19:09 +0200)
gst/alpha/gstalpha.c
gst/alpha/gstalphacolor.c
gst/rtp/gstrtpvrawpay.c

index 01af283..4ef2754 100644 (file)
@@ -377,7 +377,7 @@ gst_alpha_set_property (GObject * object, guint prop_id,
     case PROP_PREFER_PASSTHROUGH:{
       gboolean prefer_passthrough = g_value_get_boolean (value);
 
-      reconfigure = ((!!prefer_passthrough) != (!!alpha->prefer_passthrough))
+      reconfigure = ((! !prefer_passthrough) != (! !alpha->prefer_passthrough))
           && (alpha->method == ALPHA_METHOD_SET) && (alpha->alpha == 1.0);
       alpha->prefer_passthrough = prefer_passthrough;
       break;
@@ -532,11 +532,8 @@ gst_alpha_set_caps (GstBaseTransform * btrans,
 
   GST_ALPHA_LOCK (alpha);
 
-  alpha->in_sdtv =
-      in_info.color_matrix ? g_str_equal (in_info.color_matrix, "sdtv") : TRUE;
-  alpha->out_sdtv =
-      out_info.color_matrix ? g_str_equal (out_info.color_matrix,
-      "sdtv") : TRUE;
+  alpha->in_sdtv = in_info.colorimetry.matrix = GST_VIDEO_COLOR_MATRIX_BT601;
+  alpha->out_sdtv = out_info.colorimetry.matrix = GST_VIDEO_COLOR_MATRIX_BT601;
 
   passthrough = alpha->prefer_passthrough &&
       GST_VIDEO_INFO_FORMAT (&in_info) == GST_VIDEO_INFO_FORMAT (&out_info)
index c519566..66e2c33 100644 (file)
@@ -491,11 +491,8 @@ gst_alpha_color_set_caps (GstBaseTransform * btrans, GstCaps * incaps,
       GST_VIDEO_INFO_HEIGHT (&in_info) != GST_VIDEO_INFO_HEIGHT (&out_info))
     goto invalid_caps;
 
-  in_sdtv =
-      in_info.color_matrix ? g_str_equal (in_info.color_matrix, "sdtv") : TRUE;
-  out_sdtv =
-      out_info.color_matrix ? g_str_equal (out_info.color_matrix,
-      "sdtv") : TRUE;
+  in_sdtv = in_info.colorimetry.matrix = GST_VIDEO_COLOR_MATRIX_BT601;
+  out_sdtv = out_info.colorimetry.matrix = GST_VIDEO_COLOR_MATRIX_BT601;
 
   switch (GST_VIDEO_INFO_FORMAT (&in_info)) {
     case GST_VIDEO_FORMAT_ARGB:
index ff85119..ae6dc83 100644 (file)
@@ -121,14 +121,17 @@ gst_rtp_vraw_pay_setcaps (GstBaseRTPPayload * payload, GstCaps * caps)
 
   rtpvrawpay->vinfo = info;
 
-  colorimetrystr = "SMPTE240M";
-  if (info.color_matrix) {
-    if (g_str_equal (info.color_matrix, "sdtv")) {
-      /* BT.601 implies a bit more than just color-matrix */
-      colorimetrystr = "BT601-5";
-    } else if (g_str_equal (info.color_matrix, "hdtv")) {
-      colorimetrystr = "BT709-2";
-    }
+  if (gst_video_colorimetry_matches (&info.colorimetry,
+          GST_VIDEO_COLORIMETRY_BT601)) {
+    colorimetrystr = "BT601-5";
+  } else if (gst_video_colorimetry_matches (&info.colorimetry,
+          GST_VIDEO_COLORIMETRY_BT709)) {
+    colorimetrystr = "BT709-2";
+  } else if (gst_video_colorimetry_matches (&info.colorimetry,
+          GST_VIDEO_COLORIMETRY_SMPTE240M)) {
+    colorimetrystr = "SMPTE240M";
+  } else {
+    colorimetrystr = "SMPTE240M";
   }
 
   xinc = yinc = 1;
@@ -268,7 +271,7 @@ gst_rtp_vraw_pay_handle_buffer (GstBaseRTPPayload * payload, GstBuffer * buffer)
   width = GST_VIDEO_INFO_WIDTH (&rtpvrawpay->vinfo);
   height = GST_VIDEO_INFO_HEIGHT (&rtpvrawpay->vinfo);
 
-  interlaced = !!(rtpvrawpay->vinfo.flags & GST_VIDEO_FLAG_INTERLACED);
+  interlaced = ! !(rtpvrawpay->vinfo.flags & GST_VIDEO_FLAG_INTERLACED);
 
   /* start with line 0, offset 0 */
   for (field = 0; field < 1 + interlaced; field++) {