vaapipostproc: don't do any color conversion when GL_TEXTURE_UPLOAD has resurrected
with commit 3e992d8a

Since gst_vaapi_find_preferred_caps_feature() returns a color format
from caps negotiation, different from the default one (NV12), the
postproc enables the color transformation. But when GL_TEXTURE_UPLOAD
feature is negotiated, no color transformation shall be done.

Nonetheless, with commit 3e992d8a the requested format changes
firstly, because there's no video sink yet, so ANY caps are
negotiated; but later, when there's a video sink and a caps
renegotiation, the GL_TEXTURE_UPLOAD is negotiated though the color
format conversion still ongoing. It is required to reset that

This patch force default color format when GL_TEXTURE_UPLOAD is
selected as preferred, thus avoiding the color conversion.

Fixes: #157
parent aa37f31d
Pipeline #34812 passed with stages
in 43 minutes and 46 seconds
......@@ -709,9 +709,11 @@ _get_preferred_caps (GstVaapiPostproc * postproc, GstVideoInfo * vinfo,
/* we don't need to do format conversion if GL_TEXTURE_UPLOAD_META
* is negotiated */
&& postproc->format != format)
postproc->format = DEFAULT_FORMAT;
} else if (postproc->format != format) {
postproc->format = format;
return outcaps;
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