mirror of
https://gitlab.freedesktop.org/gstreamer/gstreamer.git
synced 2024-12-29 11:40:38 +00:00
videoaggregator: Don't configure NULL chroma-site/colorimetry
If there's no known value in the best caps then the functions to convert them to strings will return NULL. Having the fields not in the caps is not a problem, having them with a NULL value however will cause negotiation failures.
This commit is contained in:
parent
e0a195b7bf
commit
72cb0c0641
1 changed files with 12 additions and 5 deletions
|
@ -894,14 +894,21 @@ gst_video_aggregator_default_update_caps (GstVideoAggregator * vagg,
|
|||
|
||||
GST_DEBUG_OBJECT (vagg,
|
||||
"The output format will now be : %d with chroma : %s and colorimetry %s",
|
||||
best_format, gst_video_chroma_to_string (best_info.chroma_site),
|
||||
color_name);
|
||||
best_format,
|
||||
GST_STR_NULL (gst_video_chroma_to_string (best_info.chroma_site)),
|
||||
GST_STR_NULL (color_name));
|
||||
|
||||
best_format_caps = gst_caps_copy (caps);
|
||||
gst_caps_set_simple (best_format_caps, "format", G_TYPE_STRING,
|
||||
gst_video_format_to_string (best_format), "chroma-site", G_TYPE_STRING,
|
||||
gst_video_chroma_to_string (best_info.chroma_site), "colorimetry",
|
||||
G_TYPE_STRING, color_name, NULL);
|
||||
gst_video_format_to_string (best_format), NULL);
|
||||
|
||||
if (best_info.chroma_site != GST_VIDEO_CHROMA_SITE_UNKNOWN)
|
||||
gst_caps_set_simple (best_format_caps, "chroma-site", G_TYPE_STRING,
|
||||
gst_video_chroma_to_string (best_info.chroma_site), NULL);
|
||||
if (color_name != NULL)
|
||||
gst_caps_set_simple (best_format_caps, "colorimetry", G_TYPE_STRING,
|
||||
color_name, NULL);
|
||||
|
||||
g_free (color_name);
|
||||
ret = gst_caps_merge (best_format_caps, gst_caps_ref (caps));
|
||||
|
||||
|
|
Loading…
Reference in a new issue