summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSebastian Dröge <slomo@circular-chaos.org>2013-07-01 13:45:25 +0200
committerSebastian Dröge <slomo@circular-chaos.org>2013-07-01 13:46:51 +0200
commitf39d1dc3b48fad58668488ab985f10cca26478c7 (patch)
treec3001eff228afd5094bbf53d8b5789fd8dbb3ae7
parent065f1603b0f1d2adc8477bf1f3ebe2b154885d89 (diff)
playbin: Only intersect to check if a sink can handle raw caps
Doing a subset check requires fixed caps, which we might not have here. https://bugs.webkit.org/show_bug.cgi?id=116042
-rw-r--r--gst/playback/gstplaybin2.c5
1 files changed, 2 insertions, 3 deletions
diff --git a/gst/playback/gstplaybin2.c b/gst/playback/gstplaybin2.c
index 99f8ce5b9..d4976b350 100644
--- a/gst/playback/gstplaybin2.c
+++ b/gst/playback/gstplaybin2.c
@@ -4133,7 +4133,6 @@ sink_accepts_caps (GstPlayBin * playbin, GstElement * sink, GstCaps * caps)
return TRUE;
}
-
static GstStaticCaps raw_audio_caps = GST_STATIC_CAPS ("audio/x-raw");
static GstStaticCaps raw_video_caps = GST_STATIC_CAPS ("video/x-raw");
@@ -4281,9 +4280,9 @@ autoplug_select_cb (GstElement * decodebin, GstPad * pad,
* any raw format.
*/
if ((isaudiodec && !(flags & GST_PLAY_FLAG_NATIVE_AUDIO)
- && gst_caps_is_subset (caps, raw_caps)) || (!isaudiodec
+ && gst_caps_can_intersect (caps, raw_caps)) || (!isaudiodec
&& !(flags & GST_PLAY_FLAG_NATIVE_VIDEO)
- && gst_caps_is_subset (caps, raw_caps))) {
+ && gst_caps_can_intersect (caps, raw_caps))) {
compatible =
gst_element_factory_can_src_any_caps (factory, raw_caps)
|| gst_element_factory_can_src_any_caps (factory, caps);