diff --git a/gst-libs/gst/pbutils/descriptions.c b/gst-libs/gst/pbutils/descriptions.c index 837712e3d3..765ba9d9d9 100644 --- a/gst-libs/gst/pbutils/descriptions.c +++ b/gst-libs/gst/pbutils/descriptions.c @@ -198,7 +198,6 @@ static const FormatInfo formats[] = { {"video/x-cinepak", "Cinepak Video", FLAG_VIDEO, ""}, {"video/x-cirrus-logic-accupak", "Cirrus Logipak AccuPak", FLAG_VIDEO, ""}, {"video/x-compressed-yuv", N_("CYUV Lossless"), FLAG_VIDEO, ""}, - {"video/x-dirac", "Dirac", FLAG_VIDEO, ""}, {"video/x-dnxhd", "Digital Nonlinear Extensible High Definition (DNxHD)", FLAG_VIDEO, ""}, {"subpicture/x-dvd", "DVD subpicture", FLAG_VIDEO, ""}, @@ -305,6 +304,7 @@ static const FormatInfo formats[] = { {"video/mpeg", NULL, FLAG_VIDEO, ""}, {"video/x-asus", NULL, FLAG_VIDEO, ""}, {"video/x-ati-vcr", NULL, FLAG_VIDEO, ""}, + {"video/x-dirac", NULL, FLAG_VIDEO, ""}, {"video/x-divx", NULL, FLAG_VIDEO, ""}, {"video/x-dv", "Digital Video (DV) System Stream", FLAG_CONTAINER | FLAG_SYSTEMSTREAM, "dv"}, @@ -492,6 +492,18 @@ format_info_get_desc (const FormatInfo * info, const GstCaps * caps) } else if (strcmp (info->type, "video/x-h265") == 0) { /* TODO: Any variants? */ return g_strdup ("H.265"); + } else if (strcmp (info->type, "video/x-dirac") == 0) { + const gchar *profile = gst_structure_get_string (s, "profile"); + if (profile == NULL) + return g_strdup ("Dirac"); + if (strcmp (profile, "vc2-low-delay") == 0) + return g_strdup_printf ("Dirac (%s)", "VC-2 Low Delay Profile"); + else if (strcmp (profile, "vc2-simple") == 0) + return g_strdup_printf ("Dirac (%s)", "VC-2 Simple Profile"); + else if (strcmp (profile, "vc2-main") == 0) + return g_strdup_printf ("Dirac (%s)", "VC-2 Main Profile"); + else + return g_strdup ("Dirac"); } else if (strcmp (info->type, "video/x-divx") == 0) { gint ver = 0; diff --git a/tests/check/libs/pbutils.c b/tests/check/libs/pbutils.c index ad7ec96176..aa8a11fe21 100644 --- a/tests/check/libs/pbutils.c +++ b/tests/check/libs/pbutils.c @@ -266,7 +266,7 @@ static const gchar *caps_strings[] = { "audio/x-wms", "audio/x-voxware", "audio/x-xi", "video/sp5x", "video/vivo", "video/x-4xm", "video/x-apple-video", "video/x-camtasia", "video/x-cdxa", "video/x-cinepak", "video/x-cirrus-logic-accupak", - "video/x-compressed-yuv", "video/x-dirac", "subpicture/x-dvd", + "video/x-compressed-yuv", "subpicture/x-dvd", "video/x-ffv", "video/x-flash-screen", "video/x-flash-video", "video/x-h261", "video/x-huffyuv", "video/x-intel-h263", "video/x-jpeg", "video/x-mjpeg", "video/x-mjpeg-b", "video/mpegts", "video/x-mng", @@ -324,6 +324,12 @@ static const gchar *caps_strings[] = { "audio/x-wma, wmaversion=(int)3", "audio/x-wma, wmaversion=(int)99", "audio/x-wma", + "video/x-dirac", + "video/x-dirac, profile=(string)vc2-low-delay", + "video/x-dirac, profile=(string)vc2-simple", + "video/x-dirac, profile=(string)vc2-main", + "video/x-dirac, profile=(string)main", + "video/x-dirac, profile=(string)czvja", "video/x-divx, divxversion=(int)3", "video/x-divx, divxversion=(int)4", "video/x-divx, divxversion=(int)5",