vaapipostproc: don't require a vaapi display for all caps queries

This delays the requirement of having a GstVaapiDisplay until later

https://bugzilla.gnome.org/show_bug.cgi?id=768161
This commit is contained in:
Matthew Waters 2016-06-29 16:42:18 +10:00
parent 22647090be
commit 6d73ca8da2

View file

@ -920,17 +920,22 @@ ensure_allowed_sinkpad_caps (GstVaapiPostproc * postproc)
} }
/* Append raw video caps */ /* Append raw video caps */
if (gst_vaapipostproc_ensure_display (postproc)) { if (GST_VAAPI_PLUGIN_BASE (postproc)->display) {
raw_caps = raw_caps =
gst_vaapi_plugin_base_get_allowed_raw_caps (GST_VAAPI_PLUGIN_BASE gst_vaapi_plugin_base_get_allowed_raw_caps (GST_VAAPI_PLUGIN_BASE
(postproc)); (postproc));
} else {
raw_caps =
gst_caps_from_string (GST_VIDEO_CAPS_MAKE (GST_VIDEO_FORMATS_ALL) ", "
GST_CAPS_INTERLACED_MODES);
}
if (raw_caps) { if (raw_caps) {
out_caps = gst_caps_make_writable (out_caps); out_caps = gst_caps_make_writable (out_caps);
gst_caps_append (out_caps, gst_caps_copy (raw_caps)); gst_caps_append (out_caps, gst_caps_copy (raw_caps));
} else { } else {
GST_WARNING_OBJECT (postproc, "failed to create YUV sink caps"); GST_WARNING_OBJECT (postproc, "failed to create YUV sink caps");
} }
}
postproc->allowed_sinkpad_caps = out_caps; postproc->allowed_sinkpad_caps = out_caps;
/* XXX: append VA/VPP filters */ /* XXX: append VA/VPP filters */