-
Some YUV 4:2:2 formats are packed: two consecutive pixels are stored using 4 values (for example [Y1 U Y2 V]). But in OpenGL we cannot have both: - a single texture, and - a correct native interpolation for both Y and UV components. To avoid the problem, the current implementation just dropped the Y2 value, so the pictures were rendered at half the horizontal resolution. To render at full definition, upload the single plane into two separate OpenGL textures: - one in GL_RG, to read each Y value in a different texel; - one in GL_RGBA, to read both U and V values in a single texel. As a consequence, pic->i_planes is not necessarily equal to interop->tex_count anymore (there might be 1 picture plane but 2 textures). Fixes #26712
70509c8a
Loading