mirror of
https://gitlab.freedesktop.org/gstreamer/gstreamer.git
synced 2024-12-20 07:16:55 +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/3613>
This commit is contained in:
parent
e2cd5b1660
commit
ad0ba3ab7d
1 changed files with 5 additions and 3 deletions
|
@ -358,9 +358,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;
|
||||||
|
@ -384,6 +381,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