Revert "playbin2: Don't put "raw" subtitle types in the raw caps for decodebin2"
authorSebastian Dröge <sebastian.droege@collabora.co.uk>
Tue, 6 Jul 2010 07:47:45 +0000 (09:47 +0200)
committerSebastian Dröge <sebastian.droege@collabora.co.uk>
Tue, 6 Jul 2010 07:47:45 +0000 (09:47 +0200)
This reverts commit 9d7538247ff1bf9841b53eeb71ddc47f2c662415.

If the DVD subpicture caps are not part of the raw caps, uridecodebin
doesn't qualify resindvdbin as raw source and plugs decodebins, which
causes broken DVD playback because of bugs elsewhere.

This change was originally added to only expose supported, raw subtitles,
e.g. if the subtitle sink did not support DVD subpictures but a converter
to some supported format exists. It's not very important right now because
we have nothing (that is autoplugged) to convert from plaintext/pango-markup
or DVD subpictures to something else.

Fixes bug #623583.

gst/playback/gstplaybin2.c

index 2f50686..2c3ebdc 100644 (file)
@@ -560,10 +560,6 @@ static GstElementClass *parent_class;
 
 static guint gst_play_bin_signals[LAST_SIGNAL] = { 0 };
 
-static GstStaticCaps av_raw_caps = GST_STATIC_CAPS ("audio/x-raw-int; "
-    "audio/x-raw-float; "
-    "video/x-raw-yuv; " "video/x-raw-rgb; " "video/x-raw-gray;");
-
 #define REMOVE_SIGNAL(obj,id)            \
 if (id) {                                \
   g_signal_handler_disconnect (obj, id); \
@@ -3177,8 +3173,6 @@ activate_group (GstPlayBin * playbin, GstSourceGroup * group, GstState target)
     uridecodebin = gst_element_factory_make ("uridecodebin", NULL);
     if (!uridecodebin)
       goto no_decodebin;
-    g_object_set (uridecodebin, "caps", gst_static_caps_get (&av_raw_caps),
-        NULL);
     gst_bin_add (GST_BIN_CAST (playbin), uridecodebin);
     group->uridecodebin = gst_object_ref (uridecodebin);
   }
@@ -3250,8 +3244,7 @@ activate_group (GstPlayBin * playbin, GstSourceGroup * group, GstState target)
       suburidecodebin = gst_element_factory_make ("uridecodebin", NULL);
       if (!suburidecodebin)
         goto no_decodebin;
-      g_object_set (uridecodebin, "caps", gst_static_caps_get (&av_raw_caps),
-          NULL);
+
       gst_bin_add (GST_BIN_CAST (playbin), suburidecodebin);
       group->suburidecodebin = gst_object_ref (suburidecodebin);
     }