summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTim-Philipp Müller <tim@centricular.com>2015-02-15 18:37:38 +0000
committerTim-Philipp Müller <tim@centricular.com>2015-02-15 18:50:48 +0000
commit001bd7895799d77ac96b2ad0d02391b5b2942433 (patch)
tree7b4596a8285937a15266db7fa864b1ee43ca827c
parent1d528459bed7fcafabab9471eef98429442e941d (diff)
pbutils: descriptions: add Dirac/VC-2 profile to description if available
https://bugzilla.gnome.org/show_bug.cgi?id=673976
-rw-r--r--gst-libs/gst/pbutils/descriptions.c14
-rw-r--r--tests/check/libs/pbutils.c8
2 files changed, 20 insertions, 2 deletions
diff --git a/gst-libs/gst/pbutils/descriptions.c b/gst-libs/gst/pbutils/descriptions.c
index 837712e3d..765ba9d9d 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 ad7ec9617..aa8a11fe2 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",