Commit 73323ba7 authored by Gwenole Beauchesne's avatar Gwenole Beauchesne

tests: image: try to upload images through vaDeriveImage() too.

On some platforms, vaPutImage() would fail even if it does not involve
color format conversion or scaling, whereas copying raw pixels through
vaDeriveImage() could work instead.
parent f997f627
......@@ -363,7 +363,9 @@ image_upload(GstVaapiImage *image, GstVaapiSurface *surface)
{
GstVaapiDisplay *display;
GstVideoFormat format;
GstVaapiImage *surface_image;
GstVaapiSubpicture *subpicture;
gboolean success;
display = gst_vaapi_object_get_display(GST_VAAPI_OBJECT(surface));
if (!display)
......@@ -376,6 +378,14 @@ image_upload(GstVaapiImage *image, GstVaapiSurface *surface)
if (gst_vaapi_surface_put_image(surface, image))
return TRUE;
surface_image = gst_vaapi_surface_derive_image(surface);
if (surface_image) {
success = gst_vaapi_image_copy(surface_image, image);
gst_vaapi_object_unref(surface_image);
if (success)
return TRUE;
}
g_print("could not upload %s image to surface\n",
gst_vaapi_video_format_to_string(format));
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment