X-Git-Url: http://review.tizen.org/git/?a=blobdiff_plain;f=subprojects%2Fgst-plugins-base%2Fgst-libs%2Fgst%2Fpbutils%2Fcodec-utils.c;h=71d918034d54a36dc5f590ae1e0f629f891509fc;hb=36f653fdc53b03cbeeee0a3c758572e726a6b60b;hp=a89f3b051e501801eb3bb7294156d0c6cd7dea69;hpb=b299760325d04f3c2ee1b1a9b22857fccfa00084;p=platform%2Fupstream%2Fgstreamer.git diff --git a/subprojects/gst-plugins-base/gst-libs/gst/pbutils/codec-utils.c b/subprojects/gst-plugins-base/gst-libs/gst/pbutils/codec-utils.c index a89f3b0..71d9180 100644 --- a/subprojects/gst-plugins-base/gst-libs/gst/pbutils/codec-utils.c +++ b/subprojects/gst-plugins-base/gst-libs/gst/pbutils/codec-utils.c @@ -2471,7 +2471,8 @@ vp9_caps_get_mime_codec (GstCaps * caps) GstStructure *caps_st; const char *profile_str, *chroma_format_str, *colorimetry_str; guint bitdepth_luma, bitdepth_chroma; - guint8 profile = -1, chroma_format = -1, level = -1; + guint8 profile = -1, chroma_format = -1, level = -1, color_primaries = + -1, color_transfer = -1, color_matrix = -1; gboolean video_full_range; GstVideoColorimetry cinfo = { 0, }; GString *codec_string; @@ -2539,11 +2540,16 @@ vp9_caps_get_mime_codec (GstCaps * caps) goto done; } - /* optional but all or nothing */ - g_string_append_printf (codec_string, ".%02u.%02u.%02u.%02u.%02u", - chroma_format, gst_video_color_primaries_to_iso (cinfo.primaries), - gst_video_transfer_function_to_iso (cinfo.transfer), - gst_video_color_matrix_to_iso (cinfo.matrix), video_full_range); + /* optional but all or nothing. Include them if any parameter differs from the default value */ + color_primaries = gst_video_color_primaries_to_iso (cinfo.primaries); + color_transfer = gst_video_transfer_function_to_iso (cinfo.transfer); + color_matrix = gst_video_color_matrix_to_iso (cinfo.matrix); + if (chroma_format != 1 || color_primaries != 1 || color_transfer != 1 + || color_matrix != 1 || video_full_range) { + g_string_append_printf (codec_string, ".%02u.%02u.%02u.%02u.%02u", + chroma_format, color_primaries, color_transfer, color_matrix, + video_full_range); + } done: return g_string_free (codec_string, FALSE);