/** * gst_video_colorimetry_matches: * @cinfo: a #GstVideoInfo * @color: a colorimetry string * * Check if the colorimetry information in @info matches that of the * string @color. * * Returns: #TRUE if @color conveys the same colorimetry info as the color * information in @info. */ gboolean gst_video_colorimetry_matches (GstVideoColorimetry * cinfo, const gchar * color) { const ColorimetryInfo *ci; if ((ci = gst_video_get_colorimetry (color))) return IS_EQUAL (ci, cinfo); return FALSE; }
/** * gst_video_colorimetry_from_string: * @cinfo: a #GstVideoColorimetry * @color: a colorimetry string * * Parse the colorimetry string and update @cinfo with the parsed * values. * * Returns: #TRUE if @color points to valid colorimetry info. */ gboolean gst_video_colorimetry_from_string (GstVideoColorimetry * cinfo, const gchar * color) { const ColorimetryInfo *ci; if ((ci = gst_video_get_colorimetry (color))) { *cinfo = ci->color; } else { gint r, m, t, p; if (sscanf (color, "%d:%d:%d:%d", &r, &m, &t, &p) == 4) { cinfo->range = r; cinfo->matrix = m; cinfo->transfer = t; cinfo->primaries = p; } } return TRUE; }