mirror of
https://gitlab.freedesktop.org/gstreamer/gstreamer.git
synced 2024-11-05 09:00:54 +00:00
va: Delay the VAProcPipelineCaps query after context created.
The VAAPI vaQueryVideoProcPipelineCaps() requires the context as the parameter. So far, we always pass VA_INVALID_ID and it can succeed. But the API does not say that and in theory, a valid context is required. Now the new platform really needs a valid context and so we have to delay that query until the context is created. Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3620>
This commit is contained in:
parent
10fee807b9
commit
78d1f5d026
1 changed files with 5 additions and 3 deletions
|
@ -363,9 +363,6 @@ gst_va_filter_open (GstVaFilter * self)
|
||||||
if (!gst_va_filter_ensure_config_attributes (self, &attrib.value))
|
if (!gst_va_filter_ensure_config_attributes (self, &attrib.value))
|
||||||
return FALSE;
|
return FALSE;
|
||||||
|
|
||||||
if (!gst_va_filter_ensure_pipeline_caps (self))
|
|
||||||
return FALSE;
|
|
||||||
|
|
||||||
self->image_formats = gst_va_display_get_image_formats (self->display);
|
self->image_formats = gst_va_display_get_image_formats (self->display);
|
||||||
if (!self->image_formats)
|
if (!self->image_formats)
|
||||||
return FALSE;
|
return FALSE;
|
||||||
|
@ -393,6 +390,11 @@ gst_va_filter_open (GstVaFilter * self)
|
||||||
goto bail;
|
goto bail;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (!gst_va_filter_ensure_pipeline_caps (self)) {
|
||||||
|
vaDestroyContext (dpy, self->context);
|
||||||
|
goto bail;
|
||||||
|
}
|
||||||
|
|
||||||
return TRUE;
|
return TRUE;
|
||||||
|
|
||||||
bail:
|
bail:
|
||||||
|
|
Loading…
Reference in a new issue